In [ ]:
. ./nbs_header.ps1
. ./core.ps1
In [ ]:
{ . "$ScriptDir/../apps/builder/build.ps1" } | Invoke-Block

── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # DibParser (Polyglot)                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"

#r 

@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP

arsec.dll"

#r 

@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP

arsecCS.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/AsyncSeq.fs

#!import ../../lib/fsharp/Runtime.fs

#!import ../../lib/fsharp/FileSystem.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module AsyncSeq =



    open Common



    /// ## subscribeEvent



    let inline subscribeEvent (event: IEvent<'H, 'A>) map =

        let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

        System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

        |> FSharp.Control.AsyncSeq.ofObservableBuffered



    let subscribeToken (token : System.Threading.CancellationToken) =

        let tcs = new System.Threading.Tasks.TaskCompletionSource ()

        System.Action tcs.SetResult |> token.Register |> ignore

        let start = System.DateTime.Now.Ticks

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun (...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module FileSystem =



    open Common



    /// ## Operators



    module Operators =

        let inline (</>) a b =

            System.IO.Path.Combine (a, b)



    open Operators



    /// ## createTempDirectoryName



    let inline createTempDirectoryName () =

        let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name



        System.IO.Path.GetTempPath ()

        </> $"!{root}"

        </> string (newGuidFromDateTime System.DateTime.Now)



    /// ## createTempDirectory



    let inline createTempDirectory () =

        let tempFolder = createTempDirectoryName ()

        let result = System.IO.Directory.CreateDirectory tempFolder



        if not result.Exists then

            let ge...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common

open FParsec



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## escapeCell (test)                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline escapeCell input =

    input

    |> String.split [[| '\n' |]]

    |> Array.map (function

        | line when line |> String.startsWith "\\#!" || line |> 

String.startsWith "\\#r" ->

            System.Text.RegularExpressions.Regex.Replace (line, "^\\\\#", "#")

        | line -> line

    )

    |> String.concat "\n"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



$"a{nl}\\#!magic{nl}b{nl}"

|> escapeCell

|> _equal (

    $"a{nl}#!magic{nl}b{nl}"

)



╭─[ 46.59ms - stdout ]─────────────────────────────────────────────────────────╮

│ a                                                                            │

│ #!magic                                                                      │

│ b                                                                            │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## magicMarker                                                               │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let magicMarker : Parser<string, unit> = pstring "#!"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic"

|> run magicMarker

|> _equal (

    Success ("#!", (), Position ("", 2, 1, 3))

)



╭─[ 46.51ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: #!                                                              │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 2                                                             │

│         Line: 1                                                              │

│         Column: 3                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"##!magic"

|> run magicMarker

|> _equal (

    Failure (

        $"Error in Ln: 1 Col: 1{nl}##!magic{nl}^{nl}Expecting: '#!'{nl}",

        ParserError (

            Position ("", 0, 1, 1),

            (),

            ErrorMessageList (ExpectedString "#!")

        ),

        ()

    )

)



╭─[ 52.51ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: Error in Ln: 1 Col: 1                                           │

│ ##!magic                                                                     │

│ ^                                                                            │

│ Expecting: '#!'                                                              │

│                                                                              │

│       Item2: ParserError                                                     │

│         Position: Position                                                   │

│           Index: 0                                                           │

│           Line: 1                                                            │

│           Column: 1                                                          │

│           StreamName:                                                        │

│         UserState: <null>                                                    │

│         Messages: ErrorMessageList                                           │

│           Head: ExpectedString                                               │

│             String: #!                                                       │

│             Type: ExpectedString                                             │

│           Tail: <null>                                                       │

│       Item3: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## magicCommand                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let magicCommand =

    magicMarker

    >>. manyTill anyChar newline

    |>> (System.String.Concat >> String.trim)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic



a"

|> run magicCommand

|> _equal (

    Success ("magic", (), Position ("", 8, 2, 1))

)



╭─[ 34.42ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: magic                                                           │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 8                                                             │

│         Line: 2                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



" #!magic



a"

|> run magicCommand

|> _equal (

    Failure (

        $"Error in Ln: 1 Col: 1{nl} #!magic{nl}^{nl}Expecting: '#!'{nl}",

        ParserError (

            Position ("", 0, 1, 1),

            (),

            ErrorMessageList (ExpectedString "#!")

        ),

        ()

    )

)



╭─[ 35.35ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: Error in Ln: 1 Col: 1                                           │

│  #!magic                                                                     │

│ ^                                                                            │

│ Expecting: '#!'                                                              │

│                                                                              │

│       Item2: ParserError                                                     │

│         Position: Position                                                   │

│           Index: 0                                                           │

│           Line: 1                                                            │

│           Column: 1                                                          │

│           StreamName:                                                        │

│         UserState: <null>                                                    │

│         Messages: ErrorMessageList                                           │

│           Head: ExpectedString                                               │

│             String: #!                                                       │

│             Type: ExpectedString                                             │

│           Tail: <null>                                                       │

│       Item3: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## content                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let content =

    (newline >>. magicMarker) <|> (eof >>. preturn "")

    |> attempt

    |> lookAhead

    |> manyTill anyChar

    |>> (System.String.Concat >> String.trim)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic





a





"

|> run content

|> _equal (

    Success ("#!magic





a", (), Position ("", 14, 7, 1))

)



╭─[ 30.71ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: #!magic                                                         │

│                                                                              │

│                                                                              │

│ a                                                                            │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 14                                                            │

│         Line: 7                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Block                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type Block =

    {

        magic : string

        content : string

    }



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## block                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let block =

    pipe2

        magicCommand

        content

        (fun magic content ->

            {

                magic = magic

                content = content

            })



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic





a





"

|> run block

|> _equal (

    Success (

        { magic = "magic"; content = "a" },

        (),

        Position ("", 14, 7, 1)

    )

)



╭─[ 38.32ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: Block                                                           │

│         magic: magic                                                         │

│         content: a                                                           │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 14                                                            │

│         Line: 7                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## blocks                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let blocks =

    skipMany newline

    >>. sepEndBy block (skipMany1 newline)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test





"#!magic1



a



\#!magic2



b



"

|> escapeCell

|> run blocks

|> _equal (

    Success (

        [[

            { magic = "magic1"; content = "a" }

            { magic = "magic2"; content = "b" }

        ]],

        (),

        Position ("", 26, 9, 1)

    )

)



╭─[ 44.65ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: FSharpList<Block>                                               │

│         - magic: magic1                                                      │

│           content: a                                                         │

│         - magic: magic2                                                      │

│           content: b                                                         │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 26                                                            │

│         Line: 9                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Output                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type Output =

    | Fs

    | Md

    | Spi

    | Spir



let inline kernelOutputs magic =

    match magic with

    | "fsharp" -> [[ Fs ]]

    | "markdown" -> [[ Md ]]

    | "spiral" -> [[ Spi; Spir ]]

    | _ -> [[]]



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## formatBlock                                                               │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline formatBlock output (block : Block) =

    match output, block with

    | output, { magic = "markdown"; content = content } ->

        let markdownComment =

            match output with

            | Spi | Spir -> "// // "

            | Fs -> "/// "

            | _ -> ""

        content

        |> String.split [[| '\n' |]]

        |> Array.map (String.trimEnd [[||]])

        |> Array.filter (String.endsWith " (test)" >> not)

        |> Array.map (function

            | "" -> markdownComment |> String.trim

            | line -> System.Text.RegularExpressions.Regex.Replace (line, 

"^\\s*", $"$&{markdownComment}")

        )

        |> String.concat "\n"

    | Fs, { magic = "fsharp"; content = content } ->

        let trimmedContent = content |> String.trim

        if trimmedContent |> String.startsWith "//// test" || trimmedContent |> 

String.startsWith "//// ignore"

        then ""

        else

            content

            |> String.split [[| '\n' |]]

            |> Array.filter (String.trimStart [[||]] >> String.startsWith "#r" 

>> not)

            |> String.concat "\n"

    | (Spi | Spir), { magic = "spiral"; content = content } ->

        let trimmedContent = content |> String.trim

        if trimmedContent |> String.startsWith "// // test" || trimmedContent |>

String.startsWith "// // ignore"

        then ""

        else content

    | _ -> ""



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!markdown





a



    b



c





\#!markdown





c





\#!fsharp





let a = 1"

|> escapeCell

|> run block

|> function

    | Success (block, _, _) -> formatBlock Fs block

    | Failure (msg, _, _) -> failwith msg

|> _equal "/// a

///

    /// b

///

/// c"



╭─[ 52.02ms - stdout ]─────────────────────────────────────────────────────────╮

│ /// a                                                                        │

│ ///                                                                          │

│     /// b                                                                    │

│ ///                                                                          │

│ /// c                                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## formatBlocks                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline formatBlocks output blocks =

    blocks

    |> List.map (formatBlock output)

    |> List.filter ((<>) "")

    |> String.concat "\n\n"

    |> fun s -> s + "\n"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!markdown





a



b





\#!markdown





c





\#!fsharp





let a = 1



\#!markdown



d (test)



\#!fsharp



//// test



let a = 2



\#!markdown



e



\#!fsharp



let a = 3"

|> escapeCell

|> run blocks

|> function

    | Success (blocks, _, _) -> formatBlocks Fs blocks

    | Failure (msg, _, _) -> failwith msg

|> _equal "/// a

///

/// b



/// c



let a = 1



/// e



let a = 3

"



╭─[ 64.93ms - stdout ]─────────────────────────────────────────────────────────╮

│ /// a                                                                        │

│ ///                                                                          │

│ /// b                                                                        │

│                                                                              │

│ /// c                                                                        │

│                                                                              │

│ let a = 1                                                                    │

│                                                                              │

│ /// e                                                                        │

│                                                                              │

│ let a = 3                                                                    │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## parse                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parse output input =

    match run blocks input with

    | Success (blocks, _, _) ->

        let blocks =

            blocks

            |> List.filter (fun block ->

                block.magic |> kernelOutputs |> List.contains output || 

block.magic = "markdown"

            )

        

        match blocks with

        | { magic = "markdown"; content = content } :: _

            when output = Fs

            && content |> String.startsWith "# "

            && content |> String.endsWith ")"

            ->

            let inline indentBlock (block : Block) =

                { block with

                    content =

                        block.content

                        |> String.split [[| '\n' |]]

                        |> Array.fold

                            (fun (lines, isMultiline) line ->

                                let trimmedLine = line |> String.trim

                                if trimmedLine = ""

                                then "" :: lines, isMultiline

                                else

                                    let inline singleQuoteLine () =

                                        trimmedLine |> Seq.sumBy ((=) '"' >> 

System.Convert.ToInt32) = 1

                                        && trimmedLine |> String.contains 

@"'""'" |> not

                                        && trimmedLine |> String.endsWith "{" |>

not

                                        && trimmedLine |> String.endsWith "{|" 

|> not

                                        && trimmedLine |> String.startsWith "}" 

|> not

                                        && trimmedLine |> String.startsWith "|}"

|> not



                                    match isMultiline, trimmedLine |> 

String.splitString [[| $"{q}{q}{q}" |]] with

                                    | false, [[| _; _ |]] ->

                                        $"    {line}" :: lines, true



                                    | true, [[| _; _ |]] ->

                                        line :: lines, false



                                    | false, _ when singleQuoteLine () ->

                                        $"    {line}" :: lines, true



                                    | false, _ when line |> String.startsWith 

"#" && block.magic = "fsharp" ->

                                        line :: lines, false



                                    | false, _ ->

                                        $"    {line}" :: lines, false



                                    | true, _ when singleQuoteLine () && line |>

String.startsWith "    " ->

                                        $"    {line}" :: lines, false



                                    | true, _ when singleQuoteLine () ->

                                        line :: lines, false



                                    | true, _ ->

                                        line :: lines, true

                            )

                            ([[]], false)

                        |> fst

                        |> List.rev

                        |> String.concat "\n"

                }



            let moduleName, namespaceName =

                System.Text.RegularExpressions.Regex.Match (content, @"# (.*) 

\((.*)\)$")

                |> fun m -> m.Groups.[[1]].Value, m.Groups.[[2]].Value



            let moduleBlock =

                {

                    magic = "fsharp"

                    content =

                        $"#if !INTERACTIVE

namespace {namespaceName}

#endif



module {moduleName} ="

                }



            blocks

            |> List.indexed

            |> List.fold

                (fun blocks (index, block) ->

                    match index with

                    | 0 -> blocks

                    | 1 -> indentBlock block :: moduleBlock :: blocks

                    | _ -> indentBlock block :: blocks

                )

                [[]]

            |> List.rev

        | _ -> blocks

        |> Result.Ok

    | Failure (errorMsg, _, _) -> Result.Error errorMsg



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let example1 =

    $"""#!meta



{{"kernelInfo":{{"defaultKernelName":"fsharp","items":[[{{"aliases":[[]],"name":

"fsharp"}},{{"aliases":[[]],"name":"fsharp"}}]]}}}}



\#!markdown



# TestModule (TestNamespace)



\#!fsharp



\#!import file.dib



\#!fsharp



\#r "nuget:Expecto"



\#!markdown



## ParserLibrary



\#!fsharp



open System



\#!markdown



## x (test)



\#!fsharp



//// ignore



let x = 1



\#!spiral



// // test



inl x = 0i32



\#!spiral



inl x = 0i32



\#!markdown



### TextInput



\#!fsharp



let str1 = "abc

def"



let str2 =

    "abc\

def"



let str3 =

    $"1{{

        1

    }}1"



let str4 =

    $"1{{({{|

        a = 1

    |}}).a}}1"



let str5 =

    "abc \

        def"



let x =

    match '"' with

    | '"' -> true

    | _ -> false



let long1 = {q}{q}{q}a{q}{q}{q}



let long2 =

    {q}{q}{q}

a

{q}{q}{q}



\#!fsharp



type Position =

    {{

#if INTERACTIVE

        line : string

#else

        line : int

#endif

        column : int

    }}"""

    |> escapeCell



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



example1

|> parse Fs

|> Result.toOption

|> Option.get

|> (formatBlocks Fs)

|> _equal $"""#if !INTERACTIVE

namespace TestNamespace

#endif



module TestModule =



    /// ## ParserLibrary



    open System



    /// ### TextInput



    let str1 = "abc

def"



    let str2 =

        "abc\

def"



    let str3 =

        $"1{{

            1

        }}1"



    let str4 =

        $"1{{({{|

            a = 1

        |}}).a}}1"



    let str5 =

        "abc \

            def"



    let x =

        match '"' with

        | '"' -> true

        | _ -> false



    let long1 = {q}{q}{q}a{q}{q}{q}



    let long2 =

        {q}{q}{q}

a

{q}{q}{q}



    type Position =

        {{

#if INTERACTIVE

            line : string

#else

            line : int

#endif

            column : int

        }}

"""



╭─[ 142.78ms - stdout ]────────────────────────────────────────────────────────╮

│ #if !INTERACTIVE                                                             │

│ namespace TestNamespace                                                      │

│ #endif                                                                       │

│                                                                              │

│ module TestModule =                                                          │

│                                                                              │

│     /// ## ParserLibrary                                                     │

│                                                                              │

│     open System                                                              │

│                                                                              │

│     /// ### TextInput                                                        │

│                                                                              │

│     let str1 = "abc                                                          │

│ def"                                                                         │

│                                                                              │

│     let str2 =                                                               │

│         "abc\                                                                │

│ def"                                                                         │

│                                                                              │

│     let str3 =                                                               │

│         $"1{                                                                 │

│             1                                                                │

│         }1"                                                                  │

│                                                                              │

│     let str4 =                                                               │

│         $"1{({|                                                              │

│             a = 1                                                            │

│         |}).a}1"                                                             │

│                                                                              │

│     let str5 =                                                               │

│         "abc \                                                               │

│             def"                                                             │

│                                                                              │

│     let x =                                                                  │

│         match '"' with                                                       │

│         | '"' -> true                                                        │

│         | _ -> false                                                         │

│                                                                              │

│     let long1 = """a"""                                                      │

│                                                                              │

│     let long2 =                                                              │

│         """                                                                  │

│ a                                                                            │

│ """                                                                          │

│                                                                              │

│     type Position =                                                          │

│         {                                                                    │

│ #if INTERACTIVE                                                              │

│             line : string                                                    │

│ #else                                                                        │

│             line : int                                                       │

│ #endif                                                                       │

│             column : int                                                     │

│         }                                                                    │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



example1

|> parse Md

|> Result.toOption

|> Option.get

|> (formatBlocks Md)

|> _equal "# TestModule (TestNamespace)



## ParserLibrary



### TextInput

"



╭─[ 132.36ms - stdout ]────────────────────────────────────────────────────────╮

│ # TestModule (TestNamespace)                                                 │

│                                                                              │

│ ## ParserLibrary                                                             │

│                                                                              │

│ ### TextInput                                                                │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



example1

|> parse Spi

|> Result.toOption

|> Option.get

|> (formatBlocks Spi)

|> _equal "// // # TestModule (TestNamespace)



// // ## ParserLibrary



inl x = 0i32



// // ### TextInput

"



╭─[ 139.91ms - stdout ]────────────────────────────────────────────────────────╮

│ // // # TestModule (TestNamespace)                                           │

│                                                                              │

│ // // ## ParserLibrary                                                       │

│                                                                              │

│ inl x = 0i32                                                                 │

│                                                                              │

│ // // ### TextInput                                                          │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## parseDibCode                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parseDibCode output file = async {

    let getLocals () = $"output: {output} / file: {file} / {getLocals ()}"

    trace Debug (fun () -> "parseDibCode") getLocals

    let! input = file |> FileSystem.readAllTextAsync

    match parse output input with

    | Result.Ok blocks -> return blocks |> formatBlocks output

    | Result.Error msg -> return failwith msg

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## writeDibCode                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline writeDibCode output path = async {

    let getLocals () = $"output: {output} / path: {path} / {getLocals ()}"

    trace Debug (fun () -> "writeDibCode") getLocals

    let! result = parseDibCode output path

    let outputPath = path |> String.replace ".dib" $".{output |> string |> 

String.toLower}"

    do! result |> FileSystem.writeAllTextAsync outputPath

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Arguments                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

[[<RequireQualifiedAccess>]]

type Arguments =

    | [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.Mandatory>]]

        File of file : string * Output



    interface Argu.IArgParserTemplate with

        member s.Usage =

            match s with

            | File _ -> nameof File



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## main                                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let main args =

    let argsMap = args |> Runtime.parseArgsMap<Arguments>



    let files =

        argsMap.[[nameof Arguments.File]]

        |> List.map (function

            | Arguments.File (path, output) -> path, output

        )



    files

    |> List.map (fun (path, output) -> path |> writeDibCode output)

    |> Async.Parallel

    |> Async.Ignore

    |> Async.runWithTimeout 30000

    |> function

        | Some () -> 0

        | None -> 1



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let args =

    System.Environment.GetEnvironmentVariable "ARGS"

    |> Runtime.splitArgs

    |> Seq.toArray



match args with

| [[||]] -> 0

| args -> if main args = 0 then 0 else failwith "main failed"



╭─[ 189.46ms - return value ]──────────────────────────────────────────────────╮

│ <div class="dni-plaintext"><pre>0</pre></div><style>                         │

│ .dni-code-hint {                                                             │

│     font-style: italic;                                                      │

│     overflow: hidden;                                                        │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview {                                                              │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview td {                                                           │

│     vertical-align: top;                                                     │

│     text-align: start;                                                       │

│ }                                                                            │

│ details.dni-treeview {                                                       │

│     padding-left: 1em;                                                       │

│ }                                                                            │

│ table td {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ table tr {                                                                   │

│     vertical-align: top;                                                     │

│     margin: 0em 0px;                                                         │

│ }                                                                            │

│ table tr td pre                                                              │

│ {                                                                            │

│     vertical-align: top !important;                                          │

│     margin: 0em 0px !important;                                              │

│ }                                                                            │

│ table th {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ </style>                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 202.32ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] writeDibCode / output: Fs / path: Builder.dib            │

│ 00:00:00 #2 [Debug] parseDibCode / output: Fs / file: Builder.dib            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Builder (Polyglot)                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/AsyncSeq.fs

#!import ../../lib/fsharp/Networking.fs

#!import ../../lib/fsharp/Runtime.fs

#!import ../../lib/fsharp/FileSystem.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module AsyncSeq =



    open Common



    /// ## subscribeEvent



    let inline subscribeEvent (event: IEvent<'H, 'A>) map =

        let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

        System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

        |> FSharp.Control.AsyncSeq.ofObservableBuffered



    let subscribeToken (token : System.Threading.CancellationToken) =

        let tcs = new System.Threading.Tasks.TaskCompletionSource ()

        System.Action tcs.SetResult |> token.Register |> ignore

        let start = System.DateTime.Now.Ticks

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun (...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Networking =



    open Common



    /// ## testPortOpen



    let inline testPortOpen port = async {

        let! ct = Async.CancellationToken

        use client = new System.Net.Sockets.TcpClient ()

        try

            do! client.ConnectAsync ("127.0.0.1", port, ct) |> 

Async.awaitValueTaskUnit

            return true

        with ex ->

            trace Verbose (fun () -> $"testPortOpen / ex: {ex |> 

printException}") getLocals

            return false

    }



    let inline testPortOpenTimeout timeout port = async {

        let! result =

            testPortOpen port

            |> Async.runWithTimeoutAsync timeout

        return

            match result with

            | None -> false

 ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module FileSystem =



    open Common



    /// ## Operators



    module Operators =

        let inline (</>) a b =

            System.IO.Path.Combine (a, b)



    open Operators



    /// ## createTempDirectoryName



    let inline createTempDirectoryName () =

        let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name



        System.IO.Path.GetTempPath ()

        </> $"!{root}"

        </> string (newGuidFromDateTime System.DateTime.Now)



    /// ## createTempDirectory



    let inline createTempDirectory () =

        let tempFolder = createTempDirectoryName ()

        let result = System.IO.Directory.CreateDirectory tempFolder



        if not result.Exists then

            let ge...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common

open FileSystem.Operators



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## buildProject                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline buildProject runtime path = async {

    let fullPath = path |> System.IO.Path.GetFullPath

    let fileDir = fullPath |> System.IO.Path.GetDirectoryName

    let extension = fullPath |> System.IO.Path.GetExtension



    let getLocals () = $"fullPath: {fullPath} / {getLocals ()}"

    trace Debug (fun () -> "buildProject") getLocals



    match extension with

    | ".fsproj" -> ()

    | _ -> failwith "Invalid project file"



    let runtimes =

        runtime

        |> Option.map List.singleton

        |> Option.defaultValue [[ "linux-x64"; "win-x64" ]]



    return!

        runtimes

        |> List.map (fun runtime -> async {

            let! exitCode, _result =

                Runtime.executeWithOptionsAsync

                    {

                        Command = $@"dotnet publish ""{path}"" --configuration 

Release --output ../dist --runtime {runtime}"

                        CancellationToken = None

                        OnLine = None

                        WorkingDirectory = Some fileDir

                    }



            return exitCode

        })

        |> Async.Sequential

        |> Async.map Array.sum

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## persistCodeProject                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline persistCodeProject packages modules path name code = async {

    let getLocals () = $"packages: {packages} / modules: {modules} / path: 

{path} / name: {name} / code.Length: {code |> String.length} / {getLocals ()}"

    trace Debug (fun () -> "persistCodeProject") getLocals



    let targetPath = path </> "target"

    System.IO.Directory.CreateDirectory targetPath |> ignore



    let filePath = targetPath </> $"{name}.fs" |> System.IO.Path.GetFullPath

    do! code |> FileSystem.writeAllTextExists filePath



    let repositoryRoot = FileSystem.getSourceDirectory () |> 

FileSystem.findParent ".paket" false



    let modulesCode =

        modules

        |> List.map (fun path -> $"""<Compile Include="{repositoryRoot </> 

path}" />""")

        |> String.concat "\n        "



    let fsprojPath = targetPath </> $"{name}.fsproj"

    let fsprojCode = $"""<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>

        <TargetFramework>net8.0</TargetFramework>

        <LangVersion>preview</LangVersion>

        <RollForward>Major</RollForward>

        <TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>

        <PublishAot>false</PublishAot>

        <PublishTrimmed>false</PublishTrimmed>

        <PublishSingleFile>true</PublishSingleFile>

        <SelfContained>true</SelfContained>

        <Version>0.0.1-alpha.1</Version>

        <OutputType>Exe</OutputType>

    </PropertyGroup>



    <ItemGroup>

        {modulesCode}

        <Compile Include="{filePath}" />

    </ItemGroup>



    <Import Project="{repositoryRoot}/.paket/Paket.Restore.targets" />

</Project>

"""

    do! fsprojCode |> FileSystem.writeAllTextExists fsprojPath



    let paketReferencesPath = targetPath </> "paket.references"

    let paketReferencesCode =

        "FSharp.Core" :: packages

        |> String.concat "\n"

    do! paketReferencesCode |> FileSystem.writeAllTextExists paketReferencesPath



    return fsprojPath

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## buildCode                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline buildCode runtime packages modules path name code = async {

    let! fsprojPath = persistCodeProject packages modules path name code

    return! fsprojPath |> buildProject runtime

}



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = FileSystem.getSourceDirectory () </> "target/test"



"1 + 1"

|> buildCode None [[]] [[]] tempFolder "test"

|> Async.runWithTimeout 60000

|> _equal (Some 0)



╭─[ 12.42s - stdout ]──────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] persistCodeProject / packages: [] / modules: [] / path:  │

│ C:\home\git\polyglot\apps\builder\target/test / name: test / code.Length: 5  │

│ 00:00:00 #2 [Debug] buildProject / fullPath:                                 │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj             │

│ 00:00:00 #3 [Debug] executeAsync / options: { Command =                      │

│    "dotnet publish                                                           │

│ "C:\home\git\polyglot\apps\builder\target/test\target\test.fsproj"           │

│ --configuration Release --output ../dist --runtime linux-x64"                │

│   WorkingDirectory = Some                                                    │

│ "C:\home\git\polyglot\apps\builder\target\test\target"                       │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:00 #4 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb    │

│ for .NET                                                                     │

│ 00:00:00 #5 [Verbose] >   Determining projects to restore...                 │

│ 00:00:01 #6 [Verbose] >   Restored                                           │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj (in 334     │

│ ms).                                                                         │

│ 00:00:01 #7 [Verbose] > C:\Program                                           │

│ Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microso │

│ ft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You    │

│ are using a preview version of .NET. See:                                    │

│ https://aka.ms/dotnet-support-policy [                                       │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]            │

│ 00:00:03 #8 [Verbose] >                                                      │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fs(1,1): warning   │

│ FS0020: The result of this expression has type 'int' and is implicitly       │

│ ignored. Consider using 'ignore' to discard this value explicitly, e.g.      │

│ 'expr |> ignore', or 'let' to bind the result to a name, e.g. 'let result =  │

│ expr'. [C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]    │

│ 00:00:03 #9 [Verbose] >                                                      │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fs(1,6): warning   │

│ FS0988: Main module of program is empty: nothing will happen when it is run  │

│ [C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]           │

│ 00:00:04 #10 [Verbose] >   test ->                                           │

│ C:\home\git\polyglot\apps\builder\target\test\target\bin\Release\net8.0\linu │

│ x-x64\test.dll                                                               │

│ 00:00:05 #11 [Verbose] >   test ->                                           │

│ C:\home\git\polyglot\apps\builder\target\test\dist\                          │

│ 00:00:05 #12 [Debug] executeAsync / exitCode: 0 / output.Length: 1240        │

│ 00:00:05 #13 [Debug] executeAsync / options: { Command =                     │

│    "dotnet publish                                                           │

│ "C:\home\git\polyglot\apps\builder\target/test\target\test.fsproj"           │

│ --configuration Release --output ../dist --runtime win-x64"                  │

│   WorkingDirectory = Some                                                    │

│ "C:\home\git\polyglot\apps\builder\target\test\target"                       │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:05 #14 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb   │

│ for .NET                                                                     │

│ 00:00:06 #15 [Verbose] >   Determining projects to restore...                │

│ 00:00:06 #16 [Verbose] >   Restored                                          │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj (in 334     │

│ ms).                                                                         │

│ 00:00:06 #17 [Verbose] > C:\Program                                          │

│ Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microso │

│ ft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You    │

│ are using a preview version of .NET. See:                                    │

│ https://aka.ms/dotnet-support-policy [                                       │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]            │

│ 00:00:08 #18 [Verbose] >                                                     │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fs(1,1): warning   │

│ FS0020: The result of this expression has type 'int' and is implicitly       │

│ ignored. Consider using 'ignore' to discard this value explicitly, e.g.      │

│ 'expr |> ignore', or 'let' to bind the result to a name, e.g. 'let result =  │

│ expr'. [C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]    │

│ 00:00:08 #19 [Verbose] >                                                     │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fs(1,6): warning   │

│ FS0988: Main module of program is empty: nothing will happen when it is run  │

│ [C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]           │

│ 00:00:09 #20 [Verbose] >   test ->                                           │

│ C:\home\git\polyglot\apps\builder\target\test\target\bin\Release\net8.0\win- │

│ x64\test.dll                                                                 │

│ 00:00:11 #21 [Verbose] >   test ->                                           │

│ C:\home\git\polyglot\apps\builder\target\test\dist\                          │

│ 00:00:11 #22 [Debug] executeAsync / exitCode: 0 / output.Length: 1238        │

│ FSharpOption<Int32>                                                          │

│       Value: 0                                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = FileSystem.getSourceDirectory () </> "target/test"



"1 + a"

|> buildCode None [[]] [[]] tempFolder "test"

|> Async.runWithTimeout 60000

|> _equal (Some 2)



╭─[ 6.92s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:12 #23 [Debug] persistCodeProject / packages: [] / modules: [] / path: │

│ C:\home\git\polyglot\apps\builder\target/test / name: test / code.Length: 5  │

│ 00:00:12 #24 [Debug] buildProject / fullPath:                                │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj             │

│ 00:00:12 #25 [Debug] executeAsync / options: { Command =                     │

│    "dotnet publish                                                           │

│ "C:\home\git\polyglot\apps\builder\target/test\target\test.fsproj"           │

│ --configuration Release --output ../dist --runtime linux-x64"                │

│   WorkingDirectory = Some                                                    │

│ "C:\home\git\polyglot\apps\builder\target\test\target"                       │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:12 #26 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb   │

│ for .NET                                                                     │

│ 00:00:13 #27 [Verbose] >   Determining projects to restore...                │

│ 00:00:13 #28 [Verbose] >   Restored                                          │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj (in 302     │

│ ms).                                                                         │

│ 00:00:13 #29 [Verbose] > C:\Program                                          │

│ Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microso │

│ ft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You    │

│ are using a preview version of .NET. See:                                    │

│ https://aka.ms/dotnet-support-policy [                                       │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]            │

│ 00:00:15 #30 [Verbose] >                                                     │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fs(1,5): error     │

│ FS0039: The value or constructor 'a' is not defined. [                       │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]            │

│ 00:00:15 #31 [Debug] executeAsync / exitCode: 1 / output.Length: 684         │

│ 00:00:15 #32 [Debug] executeAsync / options: { Command =                     │

│    "dotnet publish                                                           │

│ "C:\home\git\polyglot\apps\builder\target/test\target\test.fsproj"           │

│ --configuration Release --output ../dist --runtime win-x64"                  │

│   WorkingDirectory = Some                                                    │

│ "C:\home\git\polyglot\apps\builder\target\test\target"                       │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:15 #33 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb   │

│ for .NET                                                                     │

│ 00:00:16 #34 [Verbose] >   Determining projects to restore...                │

│ 00:00:17 #35 [Verbose] >   Restored                                          │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj (in 322     │

│ ms).                                                                         │

│ 00:00:17 #36 [Verbose] > C:\Program                                          │

│ Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microso │

│ ft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You    │

│ are using a preview version of .NET. See:                                    │

│ https://aka.ms/dotnet-support-policy [                                       │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]            │

│ 00:00:18 #37 [Verbose] >                                                     │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fs(1,5): error     │

│ FS0039: The value or constructor 'a' is not defined. [                       │

│ C:\home\git\polyglot\apps\builder\target\test\target\test.fsproj]            │

│ 00:00:18 #38 [Debug] executeAsync / exitCode: 1 / output.Length: 684         │

│ FSharpOption<Int32>                                                          │

│       Value: 2                                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## buildFile                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline buildFile runtime packages modules path = async {

    let fullPath = path |> System.IO.Path.GetFullPath

    let dir = fullPath |> System.IO.Path.GetDirectoryName

    let fileName = fullPath |> System.IO.Path.GetFileNameWithoutExtension

    let! code = fullPath |> FileSystem.readAllTextAsync



    let code = System.Text.RegularExpressions.Regex.Replace (

        code,

        @"( *)(let\s+main\s+.*?\s*=)",

        fun m -> m.Groups.[[1]].Value + "[[<EntryPoint>]]\n" + 

m.Groups.[[1]].Value + m.Groups.[[2]].Value

    )



    let code =

        if code |> String.endsWith "\n()\n"

        then code |> String.substring 0 ((code |> String.length) - 3)

        else code



    return! code |> buildCode runtime packages modules dir fileName

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Arguments                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

[[<RequireQualifiedAccess>]]

type Arguments =

    | [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.ExactlyOnce>]] 

Path of path : string

    | [[<Argu.ArguAttributes.Unique>]] Packages of packages : string list

    | [[<Argu.ArguAttributes.Unique>]] Modules of modules : string list

    | [[<Argu.ArguAttributes.Unique>]] Runtime of runtime : string



    interface Argu.IArgParserTemplate with

        member s.Usage =

            match s with

            | Path _ -> nameof Path

            | Packages _ -> nameof Packages

            | Modules _ -> nameof Modules

            | Runtime _ -> nameof Runtime



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## main                                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let main args =

    let argsMap = args |> Runtime.parseArgsMap<Arguments>



    let path =

        match argsMap.[[nameof Arguments.Path]] with

        | [[ Arguments.Path path ]] -> Some path

        | _ -> None

        |> Option.get



    let packages =

        match argsMap |> Map.tryFind (nameof Arguments.Packages) with

        | Some [[ Arguments.Packages packages ]] -> packages

        | _ -> [[]]



    let modules =

        match argsMap |> Map.tryFind (nameof Arguments.Modules) with

        | Some [[ Arguments.Modules modules ]] -> modules

        | _ -> [[]]



    let runtime =

        match argsMap |> Map.tryFind (nameof Arguments.Runtime) with

        | Some [[ Arguments.Runtime runtime ]] -> Some runtime

        | _ -> None



    path

    |> buildFile runtime packages modules

    |> Async.runWithTimeout 60000

    |> function

        | Some exitCode -> exitCode

        | None -> 1



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let args =

    System.Environment.GetEnvironmentVariable "ARGS"

    |> Runtime.splitArgs

    |> Seq.toArray



match args with

| [[||]] -> 0

| args -> if main args = 0 then 0 else failwith "main failed"



╭─[ 19.79s - return value ]────────────────────────────────────────────────────╮

│ <div class="dni-plaintext"><pre>0</pre></div><style>                         │

│ .dni-code-hint {                                                             │

│     font-style: italic;                                                      │

│     overflow: hidden;                                                        │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview {                                                              │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview td {                                                           │

│     vertical-align: top;                                                     │

│     text-align: start;                                                       │

│ }                                                                            │

│ details.dni-treeview {                                                       │

│     padding-left: 1em;                                                       │

│ }                                                                            │

│ table td {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ table tr {                                                                   │

│     vertical-align: top;                                                     │

│     margin: 0em 0px;                                                         │

│ }                                                                            │

│ table tr td pre                                                              │

│ {                                                                            │

│     vertical-align: top !important;                                          │

│     margin: 0em 0px !important;                                              │

│ }                                                                            │

│ table th {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ </style>                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 19.80s - stdout ]──────────────────────────────────────────────────────────╮

│ 00:00:20 #39 [Debug] persistCodeProject / packages: [Argu;                   │

│ FSharp.Control.AsyncSeq; System.CommandLine; ... ] / modules: [              │

│ lib/fsharp/Common.fs; lib/fsharp/CommonFSharp.fs; lib/fsharp/Async.fs; ... ] │

│ / path: C:\home\git\polyglot\apps\builder / name: Builder / code.Length:     │

│ 6181                                                                         │

│ 00:00:20 #40 [Debug] buildProject / fullPath:                                │

│ C:\home\git\polyglot\apps\builder\target\Builder.fsproj                      │

│ 00:00:20 #41 [Debug] executeAsync / options: { Command =                     │

│    "dotnet publish "C:\home\git\polyglot\apps\builder\target\Builder.fsproj" │

│ --configuration Release --output ../dist --runtime linux-x64"                │

│   WorkingDirectory = Some "C:\home\git\polyglot\apps\builder\target"         │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:20 #42 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb   │

│ for .NET                                                                     │

│ 00:00:20 #43 [Verbose] >   Determining projects to restore...                │

│ 00:00:21 #44 [Verbose] >   Restored                                          │

│ C:\home\git\polyglot\apps\builder\target\Builder.fsproj (in 341 ms).         │

│ 00:00:21 #45 [Verbose] > C:\Program                                          │

│ Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microso │

│ ft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You    │

│ are using a preview version of .NET. See:                                    │

│ https://aka.ms/dotnet-support-policy [                                       │

│ C:\home\git\polyglot\apps\builder\target\Builder.fsproj]                     │

│ 00:00:27 #46 [Verbose] >   Builder ->                                        │

│ C:\home\git\polyglot\apps\builder\target\bin\Release\net8.0\linux-x64\Builde │

│ r.dll                                                                        │

│ 00:00:28 #47 [Verbose] >   Builder ->                                        │

│ C:\home\git\polyglot\apps\builder\dist\                                      │

│ 00:00:28 #48 [Debug] executeAsync / exitCode: 0 / output.Length: 621         │

│ 00:00:28 #49 [Debug] executeAsync / options: { Command =                     │

│    "dotnet publish "C:\home\git\polyglot\apps\builder\target\Builder.fsproj" │

│ --configuration Release --output ../dist --runtime win-x64"                  │

│   WorkingDirectory = Some "C:\home\git\polyglot\apps\builder\target"         │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:28 #50 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb   │

│ for .NET                                                                     │

│ 00:00:29 #51 [Verbose] >   Determining projects to restore...                │

│ 00:00:29 #52 [Verbose] >   Restored                                          │

│ C:\home\git\polyglot\apps\builder\target\Builder.fsproj (in 349 ms).         │

│ 00:00:29 #53 [Verbose] > C:\Program                                          │

│ Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microso │

│ ft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You    │

│ are using a preview version of .NET. See:                                    │

│ https://aka.ms/dotnet-support-policy [                                       │

│ C:\home\git\polyglot\apps\builder\target\Builder.fsproj]                     │

│ 00:00:35 #54 [Verbose] >   Builder ->                                        │

│ C:\home\git\polyglot\apps\builder\target\bin\Release\net8.0\win-x64\Builder. │

│ dll                                                                          │

│ 00:00:39 #55 [Verbose] >   Builder ->                                        │

│ C:\home\git\polyglot\apps\builder\dist\                                      │

│ 00:00:39 #56 [Debug] executeAsync / exitCode: 0 / output.Length: 619         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Builder.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 319542 bytes to Builder.dib.html

In [ ]:
{ . "$ScriptDir/../apps/parser/build.ps1" } | Invoke-Block

── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # DibParser (Polyglot)                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"

#r 

@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP

arsec.dll"

#r 

@"../../../../../../../.nuget/packages/fparsec/2.0.0-beta2/lib/netstandard2.1/FP

arsecCS.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/AsyncSeq.fs

#!import ../../lib/fsharp/Runtime.fs

#!import ../../lib/fsharp/FileSystem.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module AsyncSeq =



    open Common



    /// ## subscribeEvent



    let inline subscribeEvent (event: IEvent<'H, 'A>) map =

        let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

        System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

        |> FSharp.Control.AsyncSeq.ofObservableBuffered



    let subscribeToken (token : System.Threading.CancellationToken) =

        let tcs = new System.Threading.Tasks.TaskCompletionSource ()

        System.Action tcs.SetResult |> token.Register |> ignore

        let start = System.DateTime.Now.Ticks

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun (...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module FileSystem =



    open Common



    /// ## Operators



    module Operators =

        let inline (</>) a b =

            System.IO.Path.Combine (a, b)



    open Operators



    /// ## createTempDirectoryName



    let inline createTempDirectoryName () =

        let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name



        System.IO.Path.GetTempPath ()

        </> $"!{root}"

        </> string (newGuidFromDateTime System.DateTime.Now)



    /// ## createTempDirectory



    let inline createTempDirectory () =

        let tempFolder = createTempDirectoryName ()

        let result = System.IO.Directory.CreateDirectory tempFolder



        if not result.Exists then

            let ge...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common

open FParsec



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## escapeCell (test)                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline escapeCell input =

    input

    |> String.split [[| '\n' |]]

    |> Array.map (function

        | line when line |> String.startsWith "\\#!" || line |> 

String.startsWith "\\#r" ->

            System.Text.RegularExpressions.Regex.Replace (line, "^\\\\#", "#")

        | line -> line

    )

    |> String.concat "\n"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



$"a{nl}\\#!magic{nl}b{nl}"

|> escapeCell

|> _equal (

    $"a{nl}#!magic{nl}b{nl}"

)



╭─[ 47.76ms - stdout ]─────────────────────────────────────────────────────────╮

│ a                                                                            │

│ #!magic                                                                      │

│ b                                                                            │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## magicMarker                                                               │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let magicMarker : Parser<string, unit> = pstring "#!"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic"

|> run magicMarker

|> _equal (

    Success ("#!", (), Position ("", 2, 1, 3))

)



╭─[ 47.02ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: #!                                                              │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 2                                                             │

│         Line: 1                                                              │

│         Column: 3                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"##!magic"

|> run magicMarker

|> _equal (

    Failure (

        $"Error in Ln: 1 Col: 1{nl}##!magic{nl}^{nl}Expecting: '#!'{nl}",

        ParserError (

            Position ("", 0, 1, 1),

            (),

            ErrorMessageList (ExpectedString "#!")

        ),

        ()

    )

)



╭─[ 50.94ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: Error in Ln: 1 Col: 1                                           │

│ ##!magic                                                                     │

│ ^                                                                            │

│ Expecting: '#!'                                                              │

│                                                                              │

│       Item2: ParserError                                                     │

│         Position: Position                                                   │

│           Index: 0                                                           │

│           Line: 1                                                            │

│           Column: 1                                                          │

│           StreamName:                                                        │

│         UserState: <null>                                                    │

│         Messages: ErrorMessageList                                           │

│           Head: ExpectedString                                               │

│             String: #!                                                       │

│             Type: ExpectedString                                             │

│           Tail: <null>                                                       │

│       Item3: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## magicCommand                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let magicCommand =

    magicMarker

    >>. manyTill anyChar newline

    |>> (System.String.Concat >> String.trim)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic



a"

|> run magicCommand

|> _equal (

    Success ("magic", (), Position ("", 8, 2, 1))

)



╭─[ 31.72ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: magic                                                           │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 8                                                             │

│         Line: 2                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



" #!magic



a"

|> run magicCommand

|> _equal (

    Failure (

        $"Error in Ln: 1 Col: 1{nl} #!magic{nl}^{nl}Expecting: '#!'{nl}",

        ParserError (

            Position ("", 0, 1, 1),

            (),

            ErrorMessageList (ExpectedString "#!")

        ),

        ()

    )

)



╭─[ 33.94ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: Error in Ln: 1 Col: 1                                           │

│  #!magic                                                                     │

│ ^                                                                            │

│ Expecting: '#!'                                                              │

│                                                                              │

│       Item2: ParserError                                                     │

│         Position: Position                                                   │

│           Index: 0                                                           │

│           Line: 1                                                            │

│           Column: 1                                                          │

│           StreamName:                                                        │

│         UserState: <null>                                                    │

│         Messages: ErrorMessageList                                           │

│           Head: ExpectedString                                               │

│             String: #!                                                       │

│             Type: ExpectedString                                             │

│           Tail: <null>                                                       │

│       Item3: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## content                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let content =

    (newline >>. magicMarker) <|> (eof >>. preturn "")

    |> attempt

    |> lookAhead

    |> manyTill anyChar

    |>> (System.String.Concat >> String.trim)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic





a





"

|> run content

|> _equal (

    Success ("#!magic





a", (), Position ("", 14, 7, 1))

)



╭─[ 32.38ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: #!magic                                                         │

│                                                                              │

│                                                                              │

│ a                                                                            │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 14                                                            │

│         Line: 7                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Block                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type Block =

    {

        magic : string

        content : string

    }



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## block                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let block =

    pipe2

        magicCommand

        content

        (fun magic content ->

            {

                magic = magic

                content = content

            })



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!magic





a





"

|> run block

|> _equal (

    Success (

        { magic = "magic"; content = "a" },

        (),

        Position ("", 14, 7, 1)

    )

)



╭─[ 34.09ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: Block                                                           │

│         magic: magic                                                         │

│         content: a                                                           │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 14                                                            │

│         Line: 7                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## blocks                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let blocks =

    skipMany newline

    >>. sepEndBy block (skipMany1 newline)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test





"#!magic1



a



\#!magic2



b



"

|> escapeCell

|> run blocks

|> _equal (

    Success (

        [[

            { magic = "magic1"; content = "a" }

            { magic = "magic2"; content = "b" }

        ]],

        (),

        Position ("", 26, 9, 1)

    )

)



╭─[ 43.57ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item1: FSharpList<Block>                                               │

│         - magic: magic1                                                      │

│           content: a                                                         │

│         - magic: magic2                                                      │

│           content: b                                                         │

│       Item2: <null>                                                          │

│       Item3: Position                                                        │

│         Index: 26                                                            │

│         Line: 9                                                              │

│         Column: 1                                                            │

│         StreamName:                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Output                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type Output =

    | Fs

    | Md

    | Spi

    | Spir



let inline kernelOutputs magic =

    match magic with

    | "fsharp" -> [[ Fs ]]

    | "markdown" -> [[ Md ]]

    | "spiral" -> [[ Spi; Spir ]]

    | _ -> [[]]



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## formatBlock                                                               │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline formatBlock output (block : Block) =

    match output, block with

    | output, { magic = "markdown"; content = content } ->

        let markdownComment =

            match output with

            | Spi | Spir -> "// // "

            | Fs -> "/// "

            | _ -> ""

        content

        |> String.split [[| '\n' |]]

        |> Array.map (String.trimEnd [[||]])

        |> Array.filter (String.endsWith " (test)" >> not)

        |> Array.map (function

            | "" -> markdownComment |> String.trim

            | line -> System.Text.RegularExpressions.Regex.Replace (line, 

"^\\s*", $"$&{markdownComment}")

        )

        |> String.concat "\n"

    | Fs, { magic = "fsharp"; content = content } ->

        let trimmedContent = content |> String.trim

        if trimmedContent |> String.startsWith "//// test" || trimmedContent |> 

String.startsWith "//// ignore"

        then ""

        else

            content

            |> String.split [[| '\n' |]]

            |> Array.filter (String.trimStart [[||]] >> String.startsWith "#r" 

>> not)

            |> String.concat "\n"

    | (Spi | Spir), { magic = "spiral"; content = content } ->

        let trimmedContent = content |> String.trim

        if trimmedContent |> String.startsWith "// // test" || trimmedContent |>

String.startsWith "// // ignore"

        then ""

        else content

    | _ -> ""



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!markdown





a



    b



c





\#!markdown





c





\#!fsharp





let a = 1"

|> escapeCell

|> run block

|> function

    | Success (block, _, _) -> formatBlock Fs block

    | Failure (msg, _, _) -> failwith msg

|> _equal "/// a

///

    /// b

///

/// c"



╭─[ 71.34ms - stdout ]─────────────────────────────────────────────────────────╮

│ /// a                                                                        │

│ ///                                                                          │

│     /// b                                                                    │

│ ///                                                                          │

│ /// c                                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## formatBlocks                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline formatBlocks output blocks =

    blocks

    |> List.map (formatBlock output)

    |> List.filter ((<>) "")

    |> String.concat "\n\n"

    |> fun s -> s + "\n"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"#!markdown





a



b





\#!markdown





c





\#!fsharp





let a = 1



\#!markdown



d (test)



\#!fsharp



//// test



let a = 2



\#!markdown



e



\#!fsharp



let a = 3"

|> escapeCell

|> run blocks

|> function

    | Success (blocks, _, _) -> formatBlocks Fs blocks

    | Failure (msg, _, _) -> failwith msg

|> _equal "/// a

///

/// b



/// c



let a = 1



/// e



let a = 3

"



╭─[ 60.89ms - stdout ]─────────────────────────────────────────────────────────╮

│ /// a                                                                        │

│ ///                                                                          │

│ /// b                                                                        │

│                                                                              │

│ /// c                                                                        │

│                                                                              │

│ let a = 1                                                                    │

│                                                                              │

│ /// e                                                                        │

│                                                                              │

│ let a = 3                                                                    │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## parse                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parse output input =

    match run blocks input with

    | Success (blocks, _, _) ->

        let blocks =

            blocks

            |> List.filter (fun block ->

                block.magic |> kernelOutputs |> List.contains output || 

block.magic = "markdown"

            )

        

        match blocks with

        | { magic = "markdown"; content = content } :: _

            when output = Fs

            && content |> String.startsWith "# "

            && content |> String.endsWith ")"

            ->

            let inline indentBlock (block : Block) =

                { block with

                    content =

                        block.content

                        |> String.split [[| '\n' |]]

                        |> Array.fold

                            (fun (lines, isMultiline) line ->

                                let trimmedLine = line |> String.trim

                                if trimmedLine = ""

                                then "" :: lines, isMultiline

                                else

                                    let inline singleQuoteLine () =

                                        trimmedLine |> Seq.sumBy ((=) '"' >> 

System.Convert.ToInt32) = 1

                                        && trimmedLine |> String.contains 

@"'""'" |> not

                                        && trimmedLine |> String.endsWith "{" |>

not

                                        && trimmedLine |> String.endsWith "{|" 

|> not

                                        && trimmedLine |> String.startsWith "}" 

|> not

                                        && trimmedLine |> String.startsWith "|}"

|> not



                                    match isMultiline, trimmedLine |> 

String.splitString [[| $"{q}{q}{q}" |]] with

                                    | false, [[| _; _ |]] ->

                                        $"    {line}" :: lines, true



                                    | true, [[| _; _ |]] ->

                                        line :: lines, false



                                    | false, _ when singleQuoteLine () ->

                                        $"    {line}" :: lines, true



                                    | false, _ when line |> String.startsWith 

"#" && block.magic = "fsharp" ->

                                        line :: lines, false



                                    | false, _ ->

                                        $"    {line}" :: lines, false



                                    | true, _ when singleQuoteLine () && line |>

String.startsWith "    " ->

                                        $"    {line}" :: lines, false



                                    | true, _ when singleQuoteLine () ->

                                        line :: lines, false



                                    | true, _ ->

                                        line :: lines, true

                            )

                            ([[]], false)

                        |> fst

                        |> List.rev

                        |> String.concat "\n"

                }



            let moduleName, namespaceName =

                System.Text.RegularExpressions.Regex.Match (content, @"# (.*) 

\((.*)\)$")

                |> fun m -> m.Groups.[[1]].Value, m.Groups.[[2]].Value



            let moduleBlock =

                {

                    magic = "fsharp"

                    content =

                        $"#if !INTERACTIVE

namespace {namespaceName}

#endif



module {moduleName} ="

                }



            blocks

            |> List.indexed

            |> List.fold

                (fun blocks (index, block) ->

                    match index with

                    | 0 -> blocks

                    | 1 -> indentBlock block :: moduleBlock :: blocks

                    | _ -> indentBlock block :: blocks

                )

                [[]]

            |> List.rev

        | _ -> blocks

        |> Result.Ok

    | Failure (errorMsg, _, _) -> Result.Error errorMsg



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let example1 =

    $"""#!meta



{{"kernelInfo":{{"defaultKernelName":"fsharp","items":[[{{"aliases":[[]],"name":

"fsharp"}},{{"aliases":[[]],"name":"fsharp"}}]]}}}}



\#!markdown



# TestModule (TestNamespace)



\#!fsharp



\#!import file.dib



\#!fsharp



\#r "nuget:Expecto"



\#!markdown



## ParserLibrary



\#!fsharp



open System



\#!markdown



## x (test)



\#!fsharp



//// ignore



let x = 1



\#!spiral



// // test



inl x = 0i32



\#!spiral



inl x = 0i32



\#!markdown



### TextInput



\#!fsharp



let str1 = "abc

def"



let str2 =

    "abc\

def"



let str3 =

    $"1{{

        1

    }}1"



let str4 =

    $"1{{({{|

        a = 1

    |}}).a}}1"



let str5 =

    "abc \

        def"



let x =

    match '"' with

    | '"' -> true

    | _ -> false



let long1 = {q}{q}{q}a{q}{q}{q}



let long2 =

    {q}{q}{q}

a

{q}{q}{q}



\#!fsharp



type Position =

    {{

#if INTERACTIVE

        line : string

#else

        line : int

#endif

        column : int

    }}"""

    |> escapeCell



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



example1

|> parse Fs

|> Result.toOption

|> Option.get

|> (formatBlocks Fs)

|> _equal $"""#if !INTERACTIVE

namespace TestNamespace

#endif



module TestModule =



    /// ## ParserLibrary



    open System



    /// ### TextInput



    let str1 = "abc

def"



    let str2 =

        "abc\

def"



    let str3 =

        $"1{{

            1

        }}1"



    let str4 =

        $"1{{({{|

            a = 1

        |}}).a}}1"



    let str5 =

        "abc \

            def"



    let x =

        match '"' with

        | '"' -> true

        | _ -> false



    let long1 = {q}{q}{q}a{q}{q}{q}



    let long2 =

        {q}{q}{q}

a

{q}{q}{q}



    type Position =

        {{

#if INTERACTIVE

            line : string

#else

            line : int

#endif

            column : int

        }}

"""



╭─[ 148.71ms - stdout ]────────────────────────────────────────────────────────╮

│ #if !INTERACTIVE                                                             │

│ namespace TestNamespace                                                      │

│ #endif                                                                       │

│                                                                              │

│ module TestModule =                                                          │

│                                                                              │

│     /// ## ParserLibrary                                                     │

│                                                                              │

│     open System                                                              │

│                                                                              │

│     /// ### TextInput                                                        │

│                                                                              │

│     let str1 = "abc                                                          │

│ def"                                                                         │

│                                                                              │

│     let str2 =                                                               │

│         "abc\                                                                │

│ def"                                                                         │

│                                                                              │

│     let str3 =                                                               │

│         $"1{                                                                 │

│             1                                                                │

│         }1"                                                                  │

│                                                                              │

│     let str4 =                                                               │

│         $"1{({|                                                              │

│             a = 1                                                            │

│         |}).a}1"                                                             │

│                                                                              │

│     let str5 =                                                               │

│         "abc \                                                               │

│             def"                                                             │

│                                                                              │

│     let x =                                                                  │

│         match '"' with                                                       │

│         | '"' -> true                                                        │

│         | _ -> false                                                         │

│                                                                              │

│     let long1 = """a"""                                                      │

│                                                                              │

│     let long2 =                                                              │

│         """                                                                  │

│ a                                                                            │

│ """                                                                          │

│                                                                              │

│     type Position =                                                          │

│         {                                                                    │

│ #if INTERACTIVE                                                              │

│             line : string                                                    │

│ #else                                                                        │

│             line : int                                                       │

│ #endif                                                                       │

│             column : int                                                     │

│         }                                                                    │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



example1

|> parse Md

|> Result.toOption

|> Option.get

|> (formatBlocks Md)

|> _equal "# TestModule (TestNamespace)



## ParserLibrary



### TextInput

"



╭─[ 134.23ms - stdout ]────────────────────────────────────────────────────────╮

│ # TestModule (TestNamespace)                                                 │

│                                                                              │

│ ## ParserLibrary                                                             │

│                                                                              │

│ ### TextInput                                                                │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



example1

|> parse Spi

|> Result.toOption

|> Option.get

|> (formatBlocks Spi)

|> _equal "// // # TestModule (TestNamespace)



// // ## ParserLibrary



inl x = 0i32



// // ### TextInput

"



╭─[ 126.45ms - stdout ]────────────────────────────────────────────────────────╮

│ // // # TestModule (TestNamespace)                                           │

│                                                                              │

│ // // ## ParserLibrary                                                       │

│                                                                              │

│ inl x = 0i32                                                                 │

│                                                                              │

│ // // ### TextInput                                                          │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## parseDibCode                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parseDibCode output file = async {

    let getLocals () = $"output: {output} / file: {file} / {getLocals ()}"

    trace Debug (fun () -> "parseDibCode") getLocals

    let! input = file |> FileSystem.readAllTextAsync

    match parse output input with

    | Result.Ok blocks -> return blocks |> formatBlocks output

    | Result.Error msg -> return failwith msg

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## writeDibCode                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline writeDibCode output path = async {

    let getLocals () = $"output: {output} / path: {path} / {getLocals ()}"

    trace Debug (fun () -> "writeDibCode") getLocals

    let! result = parseDibCode output path

    let outputPath = path |> String.replace ".dib" $".{output |> string |> 

String.toLower}"

    do! result |> FileSystem.writeAllTextAsync outputPath

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Arguments                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

[[<RequireQualifiedAccess>]]

type Arguments =

    | [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.Mandatory>]]

        File of file : string * Output



    interface Argu.IArgParserTemplate with

        member s.Usage =

            match s with

            | File _ -> nameof File



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## main                                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let main args =

    let argsMap = args |> Runtime.parseArgsMap<Arguments>



    let files =

        argsMap.[[nameof Arguments.File]]

        |> List.map (function

            | Arguments.File (path, output) -> path, output

        )



    files

    |> List.map (fun (path, output) -> path |> writeDibCode output)

    |> Async.Parallel

    |> Async.Ignore

    |> Async.runWithTimeout 30000

    |> function

        | Some () -> 0

        | None -> 1



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let args =

    System.Environment.GetEnvironmentVariable "ARGS"

    |> Runtime.splitArgs

    |> Seq.toArray



match args with

| [[||]] -> 0

| args -> if main args = 0 then 0 else failwith "main failed"



╭─[ 197.86ms - return value ]──────────────────────────────────────────────────╮

│ <div class="dni-plaintext"><pre>0</pre></div><style>                         │

│ .dni-code-hint {                                                             │

│     font-style: italic;                                                      │

│     overflow: hidden;                                                        │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview {                                                              │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview td {                                                           │

│     vertical-align: top;                                                     │

│     text-align: start;                                                       │

│ }                                                                            │

│ details.dni-treeview {                                                       │

│     padding-left: 1em;                                                       │

│ }                                                                            │

│ table td {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ table tr {                                                                   │

│     vertical-align: top;                                                     │

│     margin: 0em 0px;                                                         │

│ }                                                                            │

│ table tr td pre                                                              │

│ {                                                                            │

│     vertical-align: top !important;                                          │

│     margin: 0em 0px !important;                                              │

│ }                                                                            │

│ table th {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ </style>                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 209.58ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] writeDibCode / output: Fs / path: DibParser.dib          │

│ 00:00:00 #2 [Debug] parseDibCode / output: Fs / file: DibParser.dib          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook DibParser.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 364022 bytes to DibParser.dib.html

00:00:00 #1 [Debug] persistCodeProject / packages: [Argu; FParsec; FSharp.Control.AsyncSeq; ... ] / modules: [lib/fsharp/Common.fs; lib/fsharp/CommonFSharp.fs; lib/fsharp/Async.fs; ... ] / path: C:\home\git\polyglot\apps\parser / name: DibParser / code.Length: 9066

00:00:00 #2 [Debug] buildProject / fullPath: C:\home\git\polyglot\apps\parser\target\DibParser.fsproj

00:00:00 #3 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\parser\target\DibParser.fsproj" --configuration Release --output ../dist --runtime linux-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\parser\target"

  CancellationToken = None

  OnLine = None }

00:00:00 #4 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:00 #5 [Verbose] >   Determining projects to restore...

00:00:01 #6 [Verbose] >   Restored C:\home\git\polyglot\apps\parser\target\DibParser.fsproj (in 372 ms).

00:00:01 #7 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\parser\target\DibParser.fsproj]

00:00:07 #8 [Verbose] >   DibParser -> C:\home\git\polyglot\apps\parser\target\bin\Release\net8.0\linux-x64\DibParser.dll

00:00:08 #9 [Verbose] >   DibParser -> C:\home\git\polyglot\apps\parser\dist\

00:00:08 #10 [Debug] executeAsync / exitCode: 0 / output.Length: 627

00:00:08 #11 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\parser\target\DibParser.fsproj" --configuration Release --output ../dist --runtime win-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\parser\target"

  CancellationToken = None

  OnLine = None }

00:00:08 #12 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:09 #13 [Verbose] >   Determining projects to restore...

00:00:09 #14 [Verbose] >   Restored C:\home\git\polyglot\apps\parser\target\DibParser.fsproj (in 363 ms).

00:00:09 #15 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\parser\target\DibParser.fsproj]

00:00:15 #16 [Verbose] >   DibParser -> C:\home\git\polyglot\apps\parser\target\bin\Release\net8.0\win-x64\DibParser.dll

00:00:21 #17 [Verbose] >   DibParser -> C:\home\git\polyglot\apps\parser\dist\

00:00:22 #18 [Debug] executeAsync / exitCode: 0 / output.Length: 625



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # JsonParser (Polyglot)                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import Parser.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Parser =



    open Common



    /// ### TextInput



    type Position =

        {

            line : int

            column : int

        }



    let initialPos = { line = 0; column = 0 }



    let inline incrCol (pos : Position) =

        { pos with column = pos.column + 1 }



    let inline incrLine pos =

        { line = pos.line + 1; column = 0 }



    type InputState =

        {

            lines : string[[]]

            position : Position

        }



    let inline fromStr str =

        {

            lines =

                if str |> String.IsNullOrEmpty

                then [[||]]

                else str |> String.splitString [[| "\r\n"; "\n" |]]

            position = initialPos

        }



   ...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common

open Parser



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## JsonParser                                                                │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

(*

// --------------------------------

JSON spec from http://www.json.org/

// --------------------------------



The JSON spec is available at [[json.org]](http://www.json.org/). I'll paraphase

it here:



* A `value` can be a `string` or a `number` or a `bool` or `null` or an `object`

or an `array`.

  * These structures can be nested.

* A `string` is a sequence of zero or more Unicode characters, wrapped in double

quotes, using backslash escapes.

* A `number` is very much like a C or Java number, except that the octal and 

hexadecimal formats are not used.

* A `boolean` is the literal `true` or `false`

* A `null` is the literal `null`

* An `object` is an unordered set of name/value pairs.

  * An object begins with { (left brace) and ends with } (right brace).

  * Each name is followed by : (colon) and the name/value pairs are separated by

, (comma).

* An `array` is an ordered collection of values.

  * An array begins with [[ (left bracket) and ends with ]] (right bracket).

  * Values are separated by , (comma).

* Whitespace can be inserted between any pair of tokens.



*)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline parserEqual (expected : ParseResult<'a>) (actual : ParseResult<'a * 

Input>) =

    match actual, expected with

    | Success (_actual, _), Success _expected ->

        printResult actual

        _actual |> _equal _expected

    | Failure (l1, e1, p1), Failure (l2, e2, p2) when l1 = l2 && e1 = e2 && p1 =

p2 ->

        printResult actual

    | _ ->

        printfn $"Actual: {actual}"

        printfn $"Expected: {expected}"

        failwith "Parse failed"

    actual



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### JValue                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type JValue =

    | JString of string

    | JNumber of float

    | JBool   of bool

    | JNull

    | JObject of Map<string, JValue>

    | JArray  of JValue list



── fsharp ──────────────────────────────────────────────────────────────────────

let jValue, jValueRef = createParserForwardedToRef<JValue> ()



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jNull                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jNull =

    pstring "null"

    >>% JNull

    <?> "null"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



jValueRef <|

    choice

        [[

            jNull

        ]]



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jValue "null"

|> parserEqual (Success JNull)



╭─[ 198.48ms - return value ]──────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNull, { lines = [                      │

│ |&quot;null&quot;|]<br/>                  position = { line = 0<br/>         │

│ column = 4 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNull, { lines = [|&quot;null&quot;|]<br/>      │

│ position = { line = 0<br/>               column = 4 }                        │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNull</code></span></summary><div><table><thead> │

│ <tr></tr></thead><tbody></tbody></table></div></deta...                      │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 207.11ms - stdout ]────────────────────────────────────────────────────────╮

│ JNull                                                                        │

│ JNull                                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNull "nulp"

|> parserEqual (

    Failure (

        "null",

        "Unexpected 'p'",

        { currentLine = "nulp"; line = 0; column = 3 }

    )

)



╭─[ 59.76ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure (&quot;null&quot;, &quot;Unexpected      │

│ &#39;p&#39;&quot;, { currentLine = &quot;nulp&quot;<br/>                     │

│ line = 0<br/>                                     column = 3                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>null</pre></div></td></tr><tr><td>Item2</td><td>< │

│ div class="dni-plaintext"><pre>Unexpected                                    │

│ &#39;p&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;nulp&quot;<br/>  line = 0<br/>  column = 3               │

│ }</code></span></summary><div><table><thead><tr></tr></thead...              │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 66.89ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:3 Error parsing null                                              │

│ nulp                                                                         │

│    ^Unexpected 'p'                                                           │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jBool                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jBool =

    let jtrue =

        pstring "true"

        >>% JBool true

    let jfalse =

        pstring "false"

        >>% JBool false



    jtrue <|> jfalse

    <?> "bool"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



jValueRef <|

    choice

        [[

            jNull

            jBool

        ]]



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jBool "true"

|> parserEqual (Success (JBool true))



╭─[ 45.81ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JBool true, { lines = [                 │

│ |&quot;true&quot;|]<br/>                       position = { line = 0<br/>    │

│ column = 4 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JBool true, { lines = [|&quot;true&quot;|]<br/> │

│ position = { line = 0<br/>               column = 4 }                        │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JBool                                            │

│ true</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr.. │

│ .                                                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 52.71ms - stdout ]─────────────────────────────────────────────────────────╮

│ JBool true                                                                   │

│ JBool                                                                        │

│       Item: True                                                             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jBool "false"

|> parserEqual (Success (JBool false))



╭─[ 29.07ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JBool false, { lines = [                │

│ |&quot;false&quot;|]<br/>                        position = { line = 0<br/>  │

│ column = 5 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JBool false, { lines = [                        │

│ |&quot;false&quot;|]<br/>  position = { line = 0<br/>               column = │

│ 5 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JBool                                            │

│ false</code></span></summary><div><table><thead><tr></tr></thead><tb...      │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 35.64ms - stdout ]─────────────────────────────────────────────────────────╮

│ JBool false                                                                  │

│ JBool                                                                        │

│       Item: False                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jBool "truX"

|> parserEqual (

    Failure (

        "bool",

        "Unexpected 't'",

        { currentLine = "truX"; line = 0; column = 0 }

    )

)



╭─[ 23.96ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure (&quot;bool&quot;, &quot;Unexpected      │

│ &#39;t&#39;&quot;, { currentLine = &quot;truX&quot;<br/>                     │

│ line = 0<br/>                                     column = 0                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>bool</pre></div></td></tr><tr><td>Item2</td><td>< │

│ div class="dni-plaintext"><pre>Unexpected                                    │

│ &#39;t&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;truX&quot;<br/>  line = 0<br/>  column = 0               │

│ }</code></span></summary><div><table><thead><tr></tr></thead...              │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 30.06ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:0 Error parsing bool                                              │

│ truX                                                                         │

│ ^Unexpected 't'                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jUnescapedChar                                                           │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jUnescapedChar =

    satisfy (fun ch -> ch <> '\\' && ch <> '\"') "char"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jUnescapedChar "a"

|> parserEqual (Success 'a')



╭─[ 58.36ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (&#39;a&#39;, { lines = [                │

│ |&quot;a&quot;|]<br/>                position = { line = 0<br/>              │

│ column = 1 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(a, { lines = [|&quot;a&quot;|]<br/>  position = │

│ { line = 0<br/>               column = 1 }                                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>a</pre></div></td></tr><tr><td>Item2</td><td><det │

│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │

│ = [|&quot;a&quot;|]<br/...                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 64.92ms - stdout ]─────────────────────────────────────────────────────────╮

│ 'a'                                                                          │

│ a                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jUnescapedChar "\\"

|> parserEqual (

    Failure (

        "char",

        "Unexpected '\\'",

        { currentLine = "\\"; line = 0; column = 0 }

    )

)



╭─[ 31.72ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure (&quot;char&quot;, &quot;Unexpected      │

│ &#39;\&#39;&quot;, { currentLine = &quot;\&quot;<br/>                        │

│ line = 0<br/>                                     column = 0                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>char</pre></div></td></tr><tr><td>Item2</td><td>< │

│ div class="dni-plaintext"><pre>Unexpected                                    │

│ &#39;\&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;\&quot;<br/>  line = 0<br/>  column = 0                  │

│ }</code></span></summary><div><table><thead><tr></tr></thead><tbod...        │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 38.55ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:0 Error parsing char                                              │

│ \                                                                            │

│ ^Unexpected '\'                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jEscapedChar                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jEscapedChar =

    [[

        ("\\\"",'\"')

        ("\\\\",'\\')

        ("\\/",'/')

        ("\\b",'\b')

        ("\\f",'\f')

        ("\\n",'\n')

        ("\\r",'\r')

        ("\\t",'\t')

    ]]

    |> List.map (fun (toMatch, result) ->

        pstring toMatch >>% result

    )

    |> choice

    <?> "escaped char"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jEscapedChar "\\\\"

|> parserEqual (Success '\\')



╭─[ 33.88ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (&#39;\\&#39;, { lines = [               │

│ |&quot;\\&quot;|]<br/>                 position = { line = 0<br/>            │

│ column = 2 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(\, { lines = [|&quot;\\&quot;|]<br/>  position  │

│ = { line = 0<br/>               column = 2 }                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>\</pre></div></td></tr><tr><td>Item2</td><td><det │

│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │

│ = [|&quot;\\&quot;...                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 41.19ms - stdout ]─────────────────────────────────────────────────────────╮

│ '\\'                                                                         │

│ \                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jEscapedChar "\\t"

|> parserEqual (Success '\t')



╭─[ 29.59ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (&#39;\009&#39;, { lines = [             │

│ |&quot;\t&quot;|]<br/>                   position = { line = 0<br/>          │

│ column = 2 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(	, { lines = [|&quot;\t&quot;|]<br/>  position =  │

│ { line = 0<br/>               column = 2 }                                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div class="dni-plaintext"><pre>	                               │

│ </pre></div></td></tr><tr><td>Item2</td><td><details                         │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines = [  │

│ |&quot;\t...                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 36.08ms - stdout ]─────────────────────────────────────────────────────────╮

│ '\009'                                                                       │

│ 	                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jEscapedChar @"\\"

|> parserEqual (Success '\\')



╭─[ 28.96ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (&#39;\\&#39;, { lines = [               │

│ |&quot;\\&quot;|]<br/>                 position = { line = 0<br/>            │

│ column = 2 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(\, { lines = [|&quot;\\&quot;|]<br/>  position  │

│ = { line = 0<br/>               column = 2 }                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>\</pre></div></td></tr><tr><td>Item2</td><td><det │

│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │

│ = [|&quot;\\&quot;...                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 35.60ms - stdout ]─────────────────────────────────────────────────────────╮

│ '\\'                                                                         │

│ \                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jEscapedChar @"\n"

|> parserEqual (Success '\n')



╭─[ 26.08ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (&#39;\010&#39;, { lines = [             │

│ |&quot;<br/>&quot;|]<br/>                   position = { line = 0<br/>       │

│ column = 2 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(<br/>, { lines = [|&quot;<br/>&quot;|]<br/>     │

│ position = { line = 0<br/>               column = 2 }                        │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div class="dni-plaintext"><pre>                              │

│ </pre></div></td></tr><tr><td>Item2</td><td><details                         │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines =    │

│ ...                                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 32.86ms - stdout ]─────────────────────────────────────────────────────────╮

│ '\010'                                                                       │

│                                                                              │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jEscapedChar "a"

|> parserEqual (

    Failure (

        "escaped char",

        "Unexpected 'a'",

        { currentLine = "a"; line = 0; column = 0 }

    )

)



╭─[ 23.91ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure (&quot;escaped char&quot;,               │

│ &quot;Unexpected &#39;a&#39;&quot;, { currentLine = &quot;a&quot;<br/>       │

│ line = 0<br/>                                             column = 0         │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div class="dni-plaintext"><pre>escaped                       │

│ char</pre></div></td></tr><tr><td>Item2</td><td><div                         │

│ class="dni-plaintext"><pre>Unexpected                                        │

│ &#39;a&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;a&quot;<br/>  line = 0<br/>  column = 0                  │

│ }</code></span></summary><div><tab...                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 30.18ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:0 Error parsing escaped char                                      │

│ a                                                                            │

│ ^Unexpected 'a'                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jUnicodeChar                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jUnicodeChar =

    let backslash = pchar '\\'

    let uChar = pchar 'u'

    let hexdigit = anyOf ([[ '0' .. '9' ]] @ [[ 'A' .. 'F' ]] @ [[ 'a' .. 'f' 

]])

    let fourHexDigits = hexdigit .>>. hexdigit .>>. hexdigit .>>. hexdigit



    let inline convertToChar (((h1, h2), h3), h4) =

        let str = $"%c{h1}%c{h2}%c{h3}%c{h4}"

        Int32.Parse (str, Globalization.NumberStyles.HexNumber) |> char



    backslash >>. uChar >>. fourHexDigits

    |>> convertToChar



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jUnicodeChar "\\u263A"

|> parserEqual (Success '☺')



╭─[ 44.05ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (&#39;☺&#39;, { lines = [                │

│ |&quot;\u263A&quot;|]<br/>                position = { line = 0<br/>         │

│ column = 6 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(☺, { lines = [|&quot;\u263A&quot;|]<br/>        │

│ position = { line = 0<br/>               column = 6 }                        │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>☺</pre></div></td></tr><tr><td>Item2</td><td><det │

│ ails class="dni-treeview"><summary><span class="dni-code-hint"><code>{ lines │

│ = [|&quot;\u2...                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 50.56ms - stdout ]─────────────────────────────────────────────────────────╮

│ '☺'                                                                          │

│ ☺                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jString                                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let quotedString =

    let quote = pchar '\"' <?> "quote"

    let jchar = jUnescapedChar <|> jEscapedChar <|> jUnicodeChar



    quote >>. manyChars jchar .>> quote



── fsharp ──────────────────────────────────────────────────────────────────────

let jString =

    quotedString

    |>> JString

    <?> "quoted string"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



jValueRef <|

    choice

        [[

            jNull

            jBool

            jString

        ]]



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jString "\"\""

|> parserEqual (Success (JString ""))



╭─[ 38.16ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JString &quot;&quot;, { lines = [       │

│ |&quot;&quot;&quot;&quot;|]<br/>                       position = { line =   │

│ 0<br/>                                    column = 2 }                       │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JString &quot;&quot;, { lines = [               │

│ |&quot;&quot;&quot;&quot;|]<br/>  position = { line = 0<br/>                 │

│ column = 2 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JString &quot;&quot;</code></span></summary>...  │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 44.16ms - stdout ]─────────────────────────────────────────────────────────╮

│ JString ""                                                                   │

│ JString                                                                      │

│       Item:                                                                  │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jString "\"a\""

|> parserEqual (Success (JString "a"))



╭─[ 30.20ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JString &quot;a&quot;, { lines = [      │

│ |&quot;&quot;a&quot;&quot;|]<br/>                        position = { line = │

│ 0<br/>                                     column = 3 }                      │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JString &quot;a&quot;, { lines = [              │

│ |&quot;&quot;a&quot;&quot;|]<br/>  position = { line = 0<br/>                │

│ column = 3 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JString &quot;a&quot;</code></span></s...        │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 36.72ms - stdout ]─────────────────────────────────────────────────────────╮

│ JString "a"                                                                  │

│ JString                                                                      │

│       Item: a                                                                │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jString "\"ab\""

|> parserEqual (Success (JString "ab"))



╭─[ 30.69ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JString &quot;ab&quot;, { lines = [     │

│ |&quot;&quot;ab&quot;&quot;|]<br/>                         position = { line │

│ = 0<br/>                                      column = 4 }                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JString &quot;ab&quot;, { lines = [             │

│ |&quot;&quot;ab&quot;&quot;|]<br/>  position = { line = 0<br/>               │

│ column = 4 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JString &quot;ab&quot;</code></s...              │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 37.01ms - stdout ]─────────────────────────────────────────────────────────╮

│ JString "ab"                                                                 │

│ JString                                                                      │

│       Item: ab                                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jString "\"ab\\tde\""

|> parserEqual (Success (JString "ab\tde"))



╭─[ 31.31ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JString &quot;ab	de&quot;, { lines = [    │

│ |&quot;&quot;ab\tde&quot;&quot;|]<br/>                            position = │

│ { line = 0<br/>                                         column = 8 }         │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JString &quot;ab	de&quot;, { lines = [            │

│ |&quot;&quot;ab\tde&quot;&quot;|]<br/>  position = { line = 0<br/>           │

│ column = 8 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JString &quo...                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 37.85ms - stdout ]─────────────────────────────────────────────────────────╮

│ JString "ab	de"                                                                │

│ JString                                                                      │

│       Item: ab	de                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jString "\"ab\\u263Ade\""

|> parserEqual (Success (JString "ab☺de"))



╭─[ 28.84ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JString &quot;ab☺de&quot;, { lines = [  │

│ |&quot;&quot;ab\u263Ade&quot;&quot;|]<br/>                                   │

│ position = { line = 0<br/>                                         column =  │

│ 12 }                                                                         │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JString &quot;ab☺de&quot;, { lines = [          │

│ |&quot;&quot;ab\u263Ade&quot;&quot;|]<br/>  position = { line = 0<br/>       │

│ column = 12 }                                                                │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JS...                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 35.37ms - stdout ]─────────────────────────────────────────────────────────╮

│ JString "ab☺de"                                                              │

│ JString                                                                      │

│       Item: ab☺de                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jNumber                                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jNumber =

    let optSign = opt (pchar '-')



    let zero = pstring "0"



    let digitOneNine =

        satisfy (fun ch -> Char.IsDigit ch && ch <> '0') "1-9"



    let digit =

        satisfy Char.IsDigit "digit"



    let point = pchar '.'



    let e = pchar 'e' <|> pchar 'E'



    let optPlusMinus = opt (pchar '-' <|> pchar '+')



    let nonZeroInt =

        digitOneNine .>>. manyChars digit

        |>> fun (first, rest) -> string first + rest



    let intPart = zero <|> nonZeroInt



    let fractionPart = point >>. manyChars1 digit



    let exponentPart = e >>. optPlusMinus .>>. manyChars1 digit



    let inline (|>?) opt f =

        match opt with

        | None -> ""

        | Some x -> f x



    let inline convertToJNumber (((optSign, intPart), fractionPart), expPart) =

        let signStr =

            optSign

            |>? string



        let fractionPartStr =

            fractionPart

            |>? (fun digits -> "." + digits)



        let expPartStr =

            expPart

            |>? fun (optSign, digits) ->

                let sign = optSign |>? string

                "e" + sign + digits



        (signStr + intPart + fractionPartStr + expPartStr)

        |> float

        |> JNumber



    optSign .>>. intPart .>>. opt fractionPart .>>. opt exponentPart

    |>> convertToJNumber

    <?> "number"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



jValueRef <|

    choice

        [[

            jNull

            jBool

            jString

            jNumber

        ]]



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber "123"

|> parserEqual (Success (JNumber 123.0))



╭─[ 55.51ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 123.0, { lines = [              │

│ |&quot;123&quot;|]<br/>                          position = { line = 0<br/>  │

│ column = 3 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 123.0, { lines = [                      │

│ |&quot;123&quot;|]<br/>  position = { line = 0<br/>               column = 3 │

│ }                                                                            │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ 123.0</code></span></summary><div><table><thead><tr></tr></the...            │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 62.45ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 123.0                                                                │

│ JNumber                                                                      │

│       Item: 123                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber "-123"

|> parserEqual (Success (JNumber -123.0))



╭─[ 31.52ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber -123.0, { lines = [             │

│ |&quot;-123&quot;|]<br/>                           position = { line =       │

│ 0<br/>                                        column = 4 }                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber -123.0, { lines = [                     │

│ |&quot;-123&quot;|]<br/>  position = { line = 0<br/>               column =  │

│ 4 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ -123.0</code></span></summary><div><table><thead><tr></t...                  │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 38.19ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber -123.0                                                               │

│ JNumber                                                                      │

│       Item: -123                                                             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber "123.4"

|> parserEqual (Success (JNumber 123.4))



╭─[ 32.66ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 123.4, { lines = [              │

│ |&quot;123.4&quot;|]<br/>                          position = { line =       │

│ 0<br/>                                       column = 5 }                    │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 123.4, { lines = [                      │

│ |&quot;123.4&quot;|]<br/>  position = { line = 0<br/>               column = │

│ 5 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ 123.4</code></span></summary><div><table><thead><tr></tr><...                │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 39.23ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 123.4                                                                │

│ JNumber                                                                      │

│       Item: 123.4                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber "-123."

|> parserEqual (Success (JNumber -123.0))



╭─[ 34.93ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber -123.0, { lines = [             │

│ |&quot;-123.&quot;|]<br/>                           position = { line =      │

│ 0<br/>                                        column = 4 }                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber -123.0, { lines = [                     │

│ |&quot;-123.&quot;|]<br/>  position = { line = 0<br/>               column = │

│ 4 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ -123.0</code></span></summary><div><table><thead><tr><...                    │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 41.41ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber -123.0                                                               │

│ JNumber                                                                      │

│       Item: -123                                                             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber "00.1"

|> parserEqual (Success (JNumber 0.0))



╭─[ 33.31ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 0.0, { lines = [                │

│ |&quot;00.1&quot;|]<br/>                        position = { line = 0<br/>   │

│ column = 1 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 0.0, { lines = [                        │

│ |&quot;00.1&quot;|]<br/>  position = { line = 0<br/>               column =  │

│ 1 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ 0.0</code></span></summary><div><table><thead><tr></tr></thead><tbod...      │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 40.15ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 0.0                                                                  │

│ JNumber                                                                      │

│       Item: 0                                                                │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let jNumber_ = jNumber .>> spaces1



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "123"

|> parserEqual (Success (JNumber 123.0))



╭─[ 36.14ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 123.0, { lines = [              │

│ |&quot;123&quot;|]<br/>                          position = { line = 1<br/>  │

│ column = 0 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 123.0, { lines = [                      │

│ |&quot;123&quot;|]<br/>  position = { line = 1<br/>               column = 0 │

│ }                                                                            │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ 123.0</code></span></summary><div><table><thead><tr></tr></the...            │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 42.51ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 123.0                                                                │

│ JNumber                                                                      │

│       Item: 123                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "-123"

|> parserEqual (Success (JNumber -123.0))



╭─[ 29.86ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber -123.0, { lines = [             │

│ |&quot;-123&quot;|]<br/>                           position = { line =       │

│ 1<br/>                                        column = 0 }                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber -123.0, { lines = [                     │

│ |&quot;-123&quot;|]<br/>  position = { line = 1<br/>               column =  │

│ 0 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ -123.0</code></span></summary><div><table><thead><tr></t...                  │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 36.57ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber -123.0                                                               │

│ JNumber                                                                      │

│       Item: -123                                                             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "-123."

|> parserEqual (

    Failure (

        "number andThen many1 whitespace",

        "Unexpected '.'",

        { currentLine = "-123."; line = 0; column = 4 }

    )

)



╭─[ 24.16ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure<br/>  (&quot;number andThen many1        │

│ whitespace&quot;, &quot;Unexpected &#39;.&#39;&quot;, { currentLine =        │

│ &quot;-123.&quot;<br/>                                                       │

│ line = 0<br/>                                                                │

│ column = 4                                                                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div class="dni-plaintext"><pre>number andThen many1          │

│ whitespace</pre></div></td></tr><tr><td>Item2</td><td><div                   │

│ class="dni-plaintext"><pre>Unexpected                                        │

│ &#39;.&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;...                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 30.58ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:4 Error parsing number andThen many1 whitespace                   │

│ -123.                                                                        │

│     ^Unexpected '.'                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "123.4"

|> parserEqual (Success (JNumber 123.4))



╭─[ 29.61ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 123.4, { lines = [              │

│ |&quot;123.4&quot;|]<br/>                          position = { line =       │

│ 1<br/>                                       column = 0 }                    │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 123.4, { lines = [                      │

│ |&quot;123.4&quot;|]<br/>  position = { line = 1<br/>               column = │

│ 0 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ 123.4</code></span></summary><div><table><thead><tr></tr><...                │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 36.18ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 123.4                                                                │

│ JNumber                                                                      │

│       Item: 123.4                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "00.4"

|> parserEqual (

    Failure (

        "number andThen many1 whitespace",

        "Unexpected '0'",

        { currentLine = "00.4"; line = 0; column = 1 }

    )

)



╭─[ 22.43ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure<br/>  (&quot;number andThen many1        │

│ whitespace&quot;, &quot;Unexpected &#39;0&#39;&quot;, { currentLine =        │

│ &quot;00.4&quot;<br/>                                                        │

│ line = 0<br/>                                                                │

│ column = 1                                                                   │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div class="dni-plaintext"><pre>number andThen many1          │

│ whitespace</pre></div></td></tr><tr><td>Item2</td><td><div                   │

│ class="dni-plaintext"><pre>Unexpected                                        │

│ &#39;0&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;0...                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 28.70ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:1 Error parsing number andThen many1 whitespace                   │

│ 00.4                                                                         │

│  ^Unexpected '0'                                                             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "123e4"

|> parserEqual (Success (JNumber 1230000.0))



╭─[ 35.58ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 1230000.0, { lines = [          │

│ |&quot;123e4&quot;|]<br/>                              position = { line =   │

│ 1<br/>                                           column = 0 }                │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 1230000.0, { lines = [                  │

│ |&quot;123e4&quot;|]<br/>  position = { line = 1<br/>               column = │

│ 0 }                                                                          │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ 1230000.0</code></span></summary><div><tab...                                │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 41.99ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 1230000.0                                                            │

│ JNumber                                                                      │

│       Item: 1230000                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "123.4e5"

|> parserEqual (Success (JNumber 12340000.0))



╭─[ 31.83ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 12340000.0, { lines = [         │

│ |&quot;123.4e5&quot;|]<br/>                               position = { line  │

│ = 1<br/>                                            column = 0 }             │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 12340000.0, { lines = [                 │

│ |&quot;123.4e5&quot;|]<br/>  position = { line = 1<br/>               column │

│ = 0 }                                                                        │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber 12340000.0</code></span></summary>...    │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 37.69ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 12340000.0                                                           │

│ JNumber                                                                      │

│       Item: 12340000                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jNumber_ "123.4e-5"

|> parserEqual (Success (JNumber 0.001234))



╭─[ 31.04ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JNumber 0.001234, { lines = [           │

│ |&quot;123.4e-5&quot;|]<br/>                             position = { line = │

│ 1<br/>                                          column = 0 }                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JNumber 0.001234, { lines = [                   │

│ |&quot;123.4e-5&quot;|]<br/>  position = { line = 1<br/>                     │

│ column = 0 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>JNumber                                          │

│ 0.001234</code></span></summary><div><ta...                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 37.14ms - stdout ]─────────────────────────────────────────────────────────╮

│ JNumber 0.001234                                                             │

│ JNumber                                                                      │

│       Item: 0.001234                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jArray                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jArray =

    let left = pchar '[[' .>> spaces

    let right = pchar ']]' .>> spaces

    let comma = pchar ',' .>> spaces

    let value = jValue .>> spaces



    let values = sepBy value comma



    between left values right

    |>> JArray

    <?> "array"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



jValueRef <|

    choice

        [[

            jNull

            jBool

            jString

            jNumber

            jArray

        ]]



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jArray "[[ 1, 2 ]]"

|> parserEqual (Success (JArray [[ JNumber 1.0; JNumber 2.0 ]]))



╭─[ 81.85ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success (JArray [JNumber 1.0; JNumber 2.0], {    │

│ lines = [|&quot;[ 1, 2 ]&quot;|]<br/>                                        │

│ position = { line = 1<br/>                                                   │

│ column = 0 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JArray [JNumber 1.0; JNumber 2.0], { lines = [  │

│ |&quot;[ 1, 2 ]&quot;|]<br/>  position = { line = 1<br/>                     │

│ column = 0 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><details class="dni-treeview"><summary><span class="d...      │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 88.59ms - stdout ]─────────────────────────────────────────────────────────╮

│ JArray [JNumber 1.0; JNumber 2.0]                                            │

│ JArray                                                                       │

│       Item: FSharpList<JValue>                                               │

│         - Item: 1                                                            │

│         - Item: 2                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jArray "[[ 1, 2, ]]"

|> parserEqual (

    Failure (

        "array",

        "Unexpected ','",

        { currentLine = "[[ 1, 2, ]]"; line = 0; column = 6 }

    )

)



╭─[ 30.40ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure (&quot;array&quot;, &quot;Unexpected     │

│ &#39;,&#39;&quot;, { currentLine = &quot;[ 1, 2, ]&quot;<br/>                │

│ line = 0<br/>                                      column = 6                │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>array</pre></div></td></tr><tr><td>Item2</td><td> │

│ <div class="dni-plaintext"><pre>Unexpected                                   │

│ &#39;,&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;[ 1, 2, ]&quot;<br/>  line = 0<br/>  column = 6          │

│ }</code></span></summary><div><table><thead><t...                            │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 36.79ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:6 Error parsing array                                             │

│ [ 1, 2, ]                                                                    │

│       ^Unexpected ','                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jObject                                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let jObject =

    let left = spaces >>. pchar '{' .>> spaces

    let right = pchar '}' .>> spaces

    let colon = pchar ':' .>> spaces

    let comma = pchar ',' .>> spaces

    let key = quotedString .>> spaces

    let value = jValue .>> spaces



    let keyValue = (key .>> colon) .>>. value

    let keyValues = sepBy keyValue comma



    between left keyValues right

    |>> Map.ofList

    |>> JObject

    <?> "object"



── fsharp ──────────────────────────────────────────────────────────────────────

jValueRef <|

    choice

        [[

            jNull

            jBool

            jString

            jNumber

            jArray

            jObject

        ]]



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jObject """{ "a":1, "b"  :  2 }"""

|> parserEqual (

    Success (

        JObject (

            Map.ofList [[

                "a", JNumber 1.0

                "b", JNumber 2.0

            ]]

        )

    )

)



╭─[ 185.42ms - return value ]──────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success<br/>  (JObject (map [(&quot;a&quot;,     │

│ JNumber 1.0); (&quot;b&quot;, JNumber 2.0)]),<br/>   { lines = [|&quot;{     │

│ &quot;a&quot;:1, &quot;b&quot;  :  2 }&quot;|]<br/>     position = { line =  │

│ 1<br/>                  column = 0 }                                         │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item</td><td><details class="dni-treeview"><summary><span                   │

│ class="dni-code-hint"><code>(JObject (map [(&quot;a&quot;, JNumber 1.0);     │

│ (&quot;b&quot;, JNumber 2.0)]), { lines = [|&quot;{ &quot;a&quot;:1,         │

│ &quot;b&quot;  :  2 }&quot;|]<br/>  position = { line = 1<br/>               │

│ column = 0 }                                                                 │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbod...       │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 194.55ms - stdout ]────────────────────────────────────────────────────────╮

│ JObject (map [("a", JNumber 1.0); ("b", JNumber 2.0)])                       │

│ JObject                                                                      │

│       Item: FSharpMap<String,JValue>                                         │

│         - Key: a                                                             │

│           Value: JNumber                                                     │

│             Item: 1                                                          │

│         - Key: b                                                             │

│           Value: JNumber                                                     │

│             Item: 2                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run jObject """{ "a":1, "b"  :  2, }"""

|> parserEqual (

    Failure (

        "object",

        "Unexpected ','",

        { currentLine = """{ "a":1, "b"  :  2, }"""; line = 0; column = 18 }

    )

)



╭─[ 42.13ms - return value ]───────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Failure (&quot;object&quot;, &quot;Unexpected    │

│ &#39;,&#39;&quot;, { currentLine = &quot;{ &quot;a&quot;:1, &quot;b&quot;  : │

│ 2, }&quot;<br/>                                       line = 0<br/>          │

│ column = 18                                                                  │

│ })</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>object</pre></div></td></tr><tr><td>Item2</td><td │

│ ><div class="dni-plaintext"><pre>Unexpected                                  │

│ &#39;,&#39;</pre></div></td></tr><tr><td>Item3</td><td><details              │

│ class="dni-treeview"><summary><span class="dni-code-hint"><code>{            │

│ currentLine = &quot;{ &quot;a&quot;:1, &quot;b&quot;  :  2, }&quot;<br/>     │

│ lin...                                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 50.54ms - stdout ]─────────────────────────────────────────────────────────╮

│ Line:0 Col:18 Error parsing object                                           │

│ { "a":1, "b"  :  2, }                                                        │

│                   ^Unexpected ','                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### jValue                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let example1 = """{

    "name" : "Scott",

    "isMale" : true,

    "bday" : {"year":2001, "month":12, "day":25 },

    "favouriteColors" : [["blue", "green"]],

    "emptyArray" : [[]],

    "emptyObject" : {}

}"""

run jValue example1

|> parserEqual (

    Success (

        JObject (

            Map.ofList [[

                "name", JString "Scott"

                "isMale", JBool true

                "bday", JObject (

                    Map.ofList [[

                        "year", JNumber 2001.0

                        "month", JNumber 12.0

                        "day", JNumber 25.0

                    ]]

                )

                "favouriteColors", JArray [[ JString "blue"; JString "green" ]]

                "emptyArray", JArray [[]]

                "emptyObject", JObject Map.empty

            ]]

        )

    )

)



╭─[ 143.14ms - return value ]──────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success<br/>  (JObject<br/>     (map<br/>        │

│ [(&quot;bday&quot;,<br/>          JObject<br/>            (map<br/>          │

│ [(&quot;day&quot;, JNumber 25.0); (&quot;month&quot;, JNumber 12.0);<br/>    │

│ (&quot;year&quot;, JNumber 2001.0)])); (&quot;emptyArray&quot;, JArray [     │

│ ]);<br/>         (&quot;emptyObject&quot;, JObject (map []));<br/>           │

│ (&quot;favouriteColors&quot;,                                                │

│ ...</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><t │

│ d>Item</td><td><details class="dni-treeview"><summary><span                  │

│ class="dni-code-hint"><code>(JObject<br/>  (map<br/>     [                   │

│ (&quot;bday&quot;,<br/>       JObject<br/>         (map<br/>            [    │

│ (...                                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 149.98ms - stdout ]────────────────────────────────────────────────────────╮

│ JObject                                                                      │

│   (map                                                                       │

│      [("bday",                                                               │

│        JObject                                                               │

│          (map                                                                │

│             [("day", JNumber 25.0); ("month", JNumber 12.0);                 │

│              ("year", JNumber 2001.0)])); ("emptyArray", JArray []);         │

│       ("emptyObject", JObject (map []));                                     │

│       ("favouriteColors", JArray [JString "blue"; JString "green"]);         │

│       ("isMale", JBool true); ("name", JString "Scott")])                    │

│ JObject                                                                      │

│       Item: FSharpMap<String,JValue>                                         │

│         - Key: bday                                                          │

│           Value: JObject                                                     │

│             Item: FSharpMap<String,JValue>                                   │

│               - Key: day                                                     │

│                 Value: JNumber 25.0                                          │

│               - Key: month                                                   │

│                 Value: JNumber 12.0                                          │

│               - Key: year                                                    │

│                 Value: JNumber 2001.0                                        │

│         - Key: emptyArray                                                    │

│           Value: JArray                                                      │

│             Item: FSharpList<JValue>                                         │

│                                                                              │

│         - Key: emptyObject                                                   │

│           Value: JObject                                                     │

│             Item: FSharpMap<String,JValue>                                   │

│                                                                              │

│         - Key: favouriteColors                                               │

│           Value: JArray                                                      │

│             Item: FSharpList<JValue>                                         │

│               - Item: blue                                                   │

│               - Item: green                                                  │

│         - Key: isMale                                                        │

│           Value: JBool                                                       │

│             Item: True                                                       │

│         - Key: name                                                          │

│           Value: JString                                                     │

│             Item: Scott                                                      │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let example2 = """{"widget": {

    "debug": "on",

    "window": {

        "title": "Sample Konfabulator Widget",

        "name": "main_window",

        "width": 500,

        "height": 500

    },

    "image": {

        "src": "Images/Sun.png",

        "name": "sun1",

        "hOffset": 250,

        "vOffset": 250,

        "alignment": "center"

    },

    "text": {

        "data": "Click Here",

        "size": 36,

        "style": "bold",

        "name": "text1",

        "hOffset": 250,

        "vOffset": 100,

        "alignment": "center",

        "onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;"

    }

}}"""



run jValue example2

|> parserEqual (

    Success (

        JObject (

            Map.ofList [[

                "widget", JObject (

                    Map.ofList [[

                        "debug", JString "on"

                        "window", JObject (

                            Map.ofList [[

                                "title", JString "Sample Konfabulator Widget"

                                "name", JString "main_window"

                                "width", JNumber 500.0

                                "height", JNumber 500.0

                            ]]

                        )

                        "image", JObject (

                            Map.ofList [[

                                "src", JString "Images/Sun.png"

                                "name", JString "sun1"

                                "hOffset", JNumber 250.0

                                "vOffset", JNumber 250.0

                                "alignment", JString "center"

                            ]]

                        )

                        "text", JObject (

                            Map.ofList [[

                                "data", JString "Click Here"

                                "size", JNumber 36.0

                                "style", JString "bold"

                                "name", JString "text1"

                                "hOffset", JNumber 250.0

                                "vOffset", JNumber 100.0

                                "alignment", JString "center"

                                "onMouseUp", JString "sun1.opacity = 

(sun1.opacity / 100) * 90;"

                            ]]

                        )

                    ]]

                )

            ]]

        )

    )

)



╭─[ 284.81ms - return value ]──────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success<br/>  (JObject<br/>     (map<br/>        │

│ [(&quot;widget&quot;,<br/>          JObject<br/>            (map<br/>        │

│ [(&quot;debug&quot;, JString &quot;on&quot;);<br/>                           │

│ (&quot;image&quot;,<br/>                 JObject<br/>                        │

│ (map<br/>                      [(&quot;alignment&quot;, JString              │

│ &quot;center&quot;);<br/>                                                    │

│ (&quot;hOffset&quot;...</code></span></summary><div><table><thead><tr></tr>< │

│ /thead><tbody><tr><td>Item</td><td><details                                  │

│ class="dni-treeview"><summary><span                                          │

│ class="dni-code-hint"><code>(JObject<br/>  (map<br/>     [                   │

│ (&quot;widget&quot;,<br/>       JObject<br/>         (map<br/>      ...      │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 291.30ms - stdout ]────────────────────────────────────────────────────────╮

│ JObject                                                                      │

│   (map                                                                       │

│      [("widget",                                                             │

│        JObject                                                               │

│          (map                                                                │

│             [("debug", JString "on");                                        │

│              ("image",                                                       │

│               JObject                                                        │

│                 (map                                                         │

│                    [("alignment", JString "center"); ("hOffset", JNumber     │

│ 250.0);                                                                      │

│                     ("name", JString "sun1"); ("src", JString                │

│ "Images/Sun.png");                                                           │

│                     ("vOffset", JNumber 250.0)]));                           │

│              ("text",                                                        │

│               JObject                                                        │

│                 (map                                                         │

│                    [("alignment", JString "center");                         │

│                     ("data", JString "Click Here"); ("hOffset", JNumber      │

│ 250.0);                                                                      │

│                     ("name", JString "text1");                               │

│                     ("onMouseUp",                                            │

│                      JString "sun1.opacity = (sun1.opacity / 100) * 90;");   │

│                     ("size", JNumber 36.0); ("style", JString "bold");       │

│                     ("vOffset", JNumber 100.0)]));                           │

│              ("window",                                                      │

│               JObject                                                        │

│                 (map                                                         │

│                    [("height", JNumber 500.0); ("name", JString              │

│ "main_window");                                                              │

│                     ("title", JString "Sample Konfabulator Widget");         │

│                     ("width", JNumber 500.0)]))]))])                         │

│ JObject                                                                      │

│       Item: FSharpMap<String,JValue>                                         │

│         - Key: widget                                                        │

│           Value: JObject                                                     │

│             Item: FSharpMap<String,JValue>                                   │

│               - Key: debug                                                   │

│                 Value: JString "on"                                          │

│               - Key: image                                                   │

│                 Value: JObject                                               │

│   (map                                                                       │

│      [("alignment", JString "center"); ("hOffset", JNumber 250.0);           │

│       ("name", JString "sun1"); ("src", JString "Images/Sun.png");           │

│       ("vOffset", JNumber 250.0)])                                           │

│               - Key: text                                                    │

│                 Value: JObject                                               │

│   (map                                                                       │

│      [("alignment", JString "center"); ("data", JString "Click Here");       │

│       ("hOffset", JNumber 250.0); ("name", JString "text1");                 │

│       ("onMouseUp", JString "sun1.opacity = (sun1.opacity / 100) * 90;");    │

│       ("size", JNumber 36.0); ("style", JString "bold");                     │

│       ("vOffset", JNumber 100.0)])                                           │

│               - Key: window                                                  │

│                 Value: JObject                                               │

│   (map                                                                       │

│      [("height", JNumber 500.0); ("name", JString "main_window");            │

│       ("title", JString "Sample Konfabulator Widget"); ("width", JNumber     │

│ 500.0)])                                                                     │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let example3 = """{

  "string": "Hello, \"World\"!",

  "escapedString": "This string contains \\/\\\\\\b\\f\\n\\r\\t\\\"\\'",

  "number": 42,

  "scientificNumber": 3.14e-10,

  "boolean": true,

  "nullValue": null,

  "array": [[1, 2, 3, 4, 5]],

  "unicodeString1": "프리마",

  "unicodeString2": "\u0048\u0065\u006C\u006C\u006F, 

\u0022\u0057\u006F\u0072\u006C\u0064\u0022!",

  "specialCharacters": "!@#$%^&*()",

  "emptyArray": [[]],

  "emptyObject": {},

  "nestedArrays": [[[[1, 2, 3]], [[4, 5, 6]]]],

  "object": {

    "nestedString": "Nested Value",

    "nestedNumber": 3.14,

    "nestedBoolean": false,

    "nestedNull": null,

    "nestedArray": [["a", "b", "c"]],

    "nestedObject": {

      "nestedProperty": "Nested Object Value"

    }

  },

  "nestedObjects": [[

    {"name": "Alice", "age": 25},

    {"name": "Bob", "age": 30}

  ]]

}"""

run jValue example3

|> parserEqual (

    Success (

        JObject (

            Map.ofList [[

                "string", JString @"Hello, ""World""!"

                "escapedString", JString @"This string contains 

\/\\\b\f\n\r\t\""\'"

                "number", JNumber 42.0

                "scientificNumber", JNumber 3.14e-10

                "boolean", JBool true

                "nullValue", JNull

                "array", JArray [[

                    JNumber 1.0; JNumber 2.0; JNumber 3.0; JNumber 4.0; JNumber 

5.0

                ]]

                "unicodeString1", JString "프리마"

                "unicodeString2", JString @"Hello, ""World""!"

                "specialCharacters", JString "!@#$%^&*()"

                "emptyArray", JArray [[]]

                "emptyObject", JObject Map.empty

                "nestedArrays", JArray [[

                    JArray [[ JNumber 1.0; JNumber 2.0; JNumber 3.0 ]]

                    JArray [[ JNumber 4.0; JNumber 5.0; JNumber 6.0 ]]

                ]]

                "object", JObject (

                    Map.ofList [[

                        "nestedString", JString "Nested Value"

                        "nestedNumber", JNumber 3.14

                        "nestedBoolean", JBool false

                        "nestedNull", JNull

                        "nestedArray", JArray [[JString "a"; JString "b"; 

JString "c"]]

                        "nestedObject", JObject (

                            Map.ofList [[

                                "nestedProperty", JString "Nested Object Value"

                            ]]

                        )

                    ]]

                )

                "nestedObjects", JArray [[

                  JObject (Map.ofList [[ "name", JString "Alice"; "age", JNumber

25.0 ]])

                  JObject (Map.ofList [[ "name", JString "Bob"; "age", JNumber 

30.0 ]])

                ]]

            ]]

        )

    )

)



╭─[ 378.56ms - return value ]──────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Success<br/>  (JObject<br/>     (map<br/>        │

│ [(&quot;array&quot;,<br/>          JArray<br/>            [JNumber 1.0;      │

│ JNumber 2.0; JNumber 3.0; JNumber 4.0; JNumber 5.0]);<br/>                   │

│ (&quot;boolean&quot;, JBool true); (&quot;emptyArray&quot;, JArray []);<br/> │

│ (&quot;emptyObject&quot;, JObject (map []));<br/>                            │

│ (&quot;escapedString&quot;, JString &quot;This                               │

│ s...</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr>< │

│ td>Item</td><td><details class="dni-treeview"><summary><span                 │

│ class="dni-code-hint"><code>(JObject<br/>  (map<br/>     [                   │

│ (&quot;array&quot;,<br/>       JArray [JNumber 1.0; JNumber 2.0; JNumber     │

│ 3.0; JNumber 4.0; J...                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 385.61ms - stdout ]────────────────────────────────────────────────────────╮

│ JObject                                                                      │

│   (map                                                                       │

│      [("array",                                                              │

│        JArray [JNumber 1.0; JNumber 2.0; JNumber 3.0; JNumber 4.0; JNumber   │

│ 5.0]);                                                                       │

│       ("boolean", JBool true); ("emptyArray", JArray []);                    │

│       ("emptyObject", JObject (map []));                                     │

│       ("escapedString", JString "This string contains \/\\\b\f\n\r\t\"\'");  │

│       ("nestedArrays",                                                       │

│        JArray                                                                │

│          [JArray [JNumber 1.0; JNumber 2.0; JNumber 3.0];                    │

│           JArray [JNumber 4.0; JNumber 5.0; JNumber 6.0]]);                  │

│       ("nestedObjects",                                                      │

│        JArray                                                                │

│          [JObject (map [("age", JNumber 25.0); ("name", JString "Alice")]);  │

│           JObject (map [("age", JNumber 30.0); ("name", JString "Bob")])]);  │

│       ("nullValue", JNull); ("number", JNumber 42.0); ...])                  │

│ JObject                                                                      │

│       Item: FSharpMap<String,JValue>                                         │

│         - Key: array                                                         │

│           Value: JArray                                                      │

│             Item: FSharpList<JValue>                                         │

│               - Item: 1                                                      │

│               - Item: 2                                                      │

│               - Item: 3                                                      │

│               - Item: 4                                                      │

│               - Item: 5                                                      │

│         - Key: boolean                                                       │

│           Value: JBool                                                       │

│             Item: True                                                       │

│         - Key: emptyArray                                                    │

│           Value: JArray                                                      │

│             Item: FSharpList<JValue>                                         │

│                                                                              │

│         - Key: emptyObject                                                   │

│           Value: JObject                                                     │

│             Item: FSharpMap<String,JValue>                                   │

│                                                                              │

│         - Key: escapedString                                                 │

│           Value: JString                                                     │

│             Item: This string contains \/\\\b\f\n\r\t\"\'                    │

│         - Key: nestedArrays                                                  │

│           Value: JArray                                                      │

│             Item: FSharpList<JValue>                                         │

│               - Item: [ JNumber 1.0, JNumber 2.0, JNumber 3.0 ]              │

│               - Item: [ JNumber 4.0, JNumber 5.0, JNumber 6.0 ]              │

│         - Key: nestedObjects                                                 │

│           Value: JArray                                                      │

│             Item: FSharpList<JValue>                                         │

│               - Item: [ [age, JNumber 25.0], [name, JString "Alice"] ]       │

│               - Item: [ [age, JNumber 30.0], [name, JString "Bob"] ]         │

│         - Key: nullValue                                                     │

│           Value: JNull                                                       │

│         - Key: number                                                        │

│           Value: JNumber                                                     │

│             Item: 42                                                         │

│         - Key: object                                                        │

│           Value: JObject                                                     │

│             Item: FSharpMap<String,JValue>                                   │

│               - Key: nestedArray                                             │

│                 Value: JArray [JString "a"; JString "b"; JString "c"]        │

│               - Key: nestedBoolean                                           │

│                 Value: JBool false                                           │

│               - Key: nestedNull                                              │

│                 Value: JNull                                                 │

│               - Key: nestedNumber                                            │

│                 Value: JNumber 3.14                                          │

│               - Key: nestedObject                                            │

│                 Value: JObject (map [("nestedProperty", JString "Nested      │

│ Object Value")])                                                             │

│               - Key: nestedString                                            │

│                 Value: JString "Nested Value"                                │

│         - Key: scientificNumber                                              │

│           Value: JNumber                                                     │

│             Item: 3.14E-10                                                   │

│         - Key: specialCharacters                                             │

│           Value: JString                                                     │

│             Item: !@#$%^&*()                                                 │

│         - Key: string                                                        │

│           Value: JString                                                     │

│             Item: Hello, "World"!                                            │

│         - Key: unicodeString1                                                │

│           Value: JString                                                     │

│             Item: 프리마                                                     │

│         - Key: unicodeString2                                                │

│           Value: JString                                                     │

│             Item: Hello, "World"!                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook JsonParser.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 502745 bytes to JsonParser.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Parser (Polyglot)                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### TextInput                                                                │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type Position =

    {

        line : int

        column : int

    }



── fsharp ──────────────────────────────────────────────────────────────────────

let initialPos = { line = 0; column = 0 }



── fsharp ──────────────────────────────────────────────────────────────────────

let inline incrCol (pos : Position) =

    { pos with column = pos.column + 1 }



── fsharp ──────────────────────────────────────────────────────────────────────

let inline incrLine pos =

    { line = pos.line + 1; column = 0 }



── fsharp ──────────────────────────────────────────────────────────────────────

type InputState =

    {

        lines : string[[]]

        position : Position

    }



── fsharp ──────────────────────────────────────────────────────────────────────

let inline fromStr str =

    {

        lines =

            if str |> String.IsNullOrEmpty

            then [[||]]

            else str |> String.splitString [[| "\r\n"; "\n" |]]

        position = initialPos

    }



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



fromStr "" |> _equal {

    lines = [[||]]

    position = { line = 0; column = 0 }

}



╭─[ 51.24ms - stdout ]─────────────────────────────────────────────────────────╮

│ InputState                                                                   │

│       lines: [  ]                                                            │

│       position: Position                                                     │

│         line: 0                                                              │

│         column: 0                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



fromStr "Hello \n World" |> _equal {

    lines = [[| "Hello "; " World" |]]

    position = { line = 0; column = 0 }

}



╭─[ 17.12ms - stdout ]─────────────────────────────────────────────────────────╮

│ InputState                                                                   │

│       lines: [ Hello ,  World ]                                              │

│       position: Position                                                     │

│         line: 0                                                              │

│         column: 0                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline currentLine inputState =

    let linePos = inputState.position.line

    if linePos < inputState.lines.Length

    then inputState.lines.[[linePos]]

    else "end of file"



── fsharp ──────────────────────────────────────────────────────────────────────

let inline nextChar input =

    let linePos = input.position.line

    let colPos = input.position.column



    if linePos >= input.lines.Length

    then input, None

    else

        let currentLine = currentLine input

        if colPos < currentLine.Length then

            let char = currentLine.[[colPos]]

            let newPos = incrCol input.position

            let newState = { input with position = newPos }

            newState, Some char

        else

            let char = '\n'

            let newPos = incrLine input.position

            let newState = { input with position = newPos }

            newState, Some char



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let newInput, charOpt = fromStr "Hello World" |> nextChar



newInput |> _equal {

    lines = [[| "Hello World" |]]

    position = { line = 0; column = 1 }

}

charOpt |> _equal (Some 'H')



╭─[ 37.02ms - stdout ]─────────────────────────────────────────────────────────╮

│ InputState                                                                   │

│       lines: [ Hello World ]                                                 │

│       position: Position                                                     │

│         line: 0                                                              │

│         column: 1                                                            │

│ FSharpOption<Char>                                                           │

│       Value: H                                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let newInput, charOpt = fromStr "Hello\n\nWorld" |> nextChar



newInput |> _equal {

    lines = [[| "Hello"; ""; "World" |]]

    position = { line = 0; column = 1 }

}

charOpt |> _equal (Some 'H')



╭─[ 30.23ms - stdout ]─────────────────────────────────────────────────────────╮

│ InputState                                                                   │

│       lines: [ Hello, , World ]                                              │

│       position: Position                                                     │

│         line: 0                                                              │

│         column: 1                                                            │

│ FSharpOption<Char>                                                           │

│       Value: H                                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### Parser                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type Input = InputState

type ParserLabel = string

type ParserError = string



type ParserPosition =

    {

        currentLine : string

        line : int

        column : int

    }



type ParseResult<'a> =

    | Success of 'a

    | Failure of ParserLabel * ParserError * ParserPosition



type Parser<'a> =

    {

        label : ParserLabel

        parseFn : Input -> ParseResult<'a * Input>

    }



── fsharp ──────────────────────────────────────────────────────────────────────

let inline printResult result =

    match result with

    | Success (value, input) ->

        printfn $"%A{value}"

    | Failure (label, error, parserPos) ->

        let errorLine = parserPos.currentLine

        let colPos = parserPos.column

        let linePos = parserPos.line

        let failureCaret = $"{' ' |> string |> String.replicate colPos}^{error}"

        printfn $"Line:%i{linePos} Col:%i{colPos} Error parsing 

%s{label}\n%s{errorLine}\n%s{failureCaret}"



── fsharp ──────────────────────────────────────────────────────────────────────

let inline runOnInput parser input =

    parser.parseFn input



── fsharp ──────────────────────────────────────────────────────────────────────

let inline run parser inputStr =

    runOnInput parser (fromStr inputStr)



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parserPositionFromInputState (inputState : Input) =

    {

        currentLine = currentLine inputState

        line = inputState.position.line

        column = inputState.position.column

    }



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getLabel parser =

    parser.label



── fsharp ──────────────────────────────────────────────────────────────────────

let inline setLabel parser newLabel =

    {

        label = newLabel

        parseFn = fun input ->

            match parser.parseFn input with

            | Success s -> Success s

            | Failure (oldLabel, err, pos) -> Failure (newLabel, err, pos)

    }



── fsharp ──────────────────────────────────────────────────────────────────────

let (<?>) = setLabel



── fsharp ──────────────────────────────────────────────────────────────────────

let inline satisfy predicate label =

    {

        label = label

        parseFn = fun input ->

            let remainingInput, charOpt = nextChar input

            match charOpt with

            | None ->

                let err = "No more input"

                let pos = parserPositionFromInputState input

                Failure (label, err, pos)

            | Some first ->

                if predicate first

                then Success (first, remainingInput)

                else

                    let err = $"Unexpected '%c{first}'"

                    let pos = parserPositionFromInputState input

                    Failure (label, err, pos)

    }



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = satisfy (fun c -> c = 'H') "H"

runOnInput parser input |> _equal (

    Success (

        'H',

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 1 }

        }

    )

)



╭─[ 30.67ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - H                                                        │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 1                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "World"

let parser = satisfy (fun c -> c = 'H') "H"

runOnInput parser input |> _equal (

    Failure (

        "H",

        "Unexpected 'W'",

        {

            currentLine = "World"

            line = 0

            column = 0

        }

    )

)



╭─[ 31.62ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: H                                                               │

│       Item2: Unexpected 'W'                                                  │

│       Item3: ParserPosition                                                  │

│         currentLine: World                                                   │

│         line: 0                                                              │

│         column: 0                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline bindP f p =

    {

        label = "unknown"

        parseFn = fun input ->

            match runOnInput p input with

            | Failure (label, err, pos) -> Failure (label, err, pos)

            | Success (value1, remainingInput) -> runOnInput (f value1) 

remainingInput

    }



── fsharp ──────────────────────────────────────────────────────────────────────

let inline (>>=) p f = bindP f p



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = parser >>= fun c -> satisfy (fun c -> c = 'e') "e"

runOnInput parser2 input |> _equal (

    Success (

        'e',

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 2 }

        }

    )

)



╭─[ 36.71ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - e                                                        │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 2                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "World"

let parser = satisfy (fun c -> c = 'W') "W"

let parser2 = parser >>= fun c -> satisfy (fun c -> c = 'e') "e"

runOnInput parser2 input |> _equal (

    Failure (

        "e",

        "Unexpected 'o'",

        {

            currentLine = "World"

            line = 0

            column = 1

        }

    )

)



╭─[ 35.67ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: e                                                               │

│       Item2: Unexpected 'o'                                                  │

│       Item3: ParserPosition                                                  │

│         currentLine: World                                                   │

│         line: 0                                                              │

│         column: 1                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline returnP x =

    {

        label = $"%A{x}"

        parseFn = fun input -> Success (x, input)

    }



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = returnP "Hello"

runOnInput parser input |> _equal (

    Success (

        "Hello",

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 0 }

        }

    )

)



╭─[ 31.07ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - Hello                                                    │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 0                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline mapP f =

    bindP (f >> returnP)



── fsharp ──────────────────────────────────────────────────────────────────────

let (<!>) = mapP



── fsharp ──────────────────────────────────────────────────────────────────────

let inline (|>>) x f = f <!> x



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = parser |>> string

runOnInput parser2 input |> _equal (

    Success (

        "H",

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 1 }

        }

    )

)



╭─[ 31.80ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - H                                                        │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 1                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline applyP fP xP =

    fP >>=

        fun f ->

            xP >>=

                fun x ->

                    returnP (f x)



── fsharp ──────────────────────────────────────────────────────────────────────

let (<*>) = applyP



── fsharp ──────────────────────────────────────────────────────────────────────

let inline lift2 f xP yP =

    returnP f <*> xP <*> yP



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = satisfy (fun c -> c = 'e') "e"

let parser3 = lift2 (fun c1 c2 -> string c1 + string c2) parser parser2

runOnInput parser3 input |> _equal (

    Success (

        "He",

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 2 }

        }

    )

)



╭─[ 69.49ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - He                                                       │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 2                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline andThen p1 p2 =

    p1 >>=

        fun p1Result ->

            p2 >>=

                fun p2Result ->

                    returnP (p1Result, p2Result)

    <?> $"{getLabel p1} andThen {getLabel p2}"



── fsharp ──────────────────────────────────────────────────────────────────────

let (.>>.) = andThen



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = satisfy (fun c -> c = 'e') "e"

let parser3 = parser .>>. parser2

runOnInput parser3 input |> _equal (

    Success (

        ('H', 'e'),

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 2 }

        }

    )

)



╭─[ 50.23ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - ( H, e )                                                 │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 2                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline orElse p1 p2 =

    {

        label = $"{getLabel p1} orElse {getLabel p2}"

        parseFn = fun input ->

            match runOnInput p1 input with

            | Success _ as result -> result

            | Failure _ -> runOnInput p2 input

    }



── fsharp ──────────────────────────────────────────────────────────────────────

let (<|>) = orElse



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = satisfy (fun c -> c = 'h') "h"

let parser3 = parser <|> parser2

runOnInput parser3 input |> _equal (

    Success (

        'h',

        {

            lines = [[| "hello" |]]

            position = { line = 0; column = 1 }

        }

    )

)



╭─[ 34.30ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - h                                                        │

│       - InputState                                                           │

│           lines: [ hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 1                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline choice listOfParsers =

    listOfParsers |> List.reduce (<|>)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = satisfy (fun c -> c = 'h') "h"

let parser3 = choice [[ parser; parser2 ]]

runOnInput parser3 input |> _equal (

    Success (

        'h',

        {

            lines = [[| "hello" |]]

            position = { line = 0; column = 1 }

        }

    )

)



╭─[ 33.95ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - h                                                        │

│       - InputState                                                           │

│           lines: [ hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 1                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let rec sequence parserList =

    match parserList with

    | [[]] -> returnP [[]]

    | head :: tail -> (lift2 cons) head (sequence tail)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = satisfy (fun c -> c = 'e') "e"

let parser3 = sequence [[ parser; parser2 ]]

runOnInput parser3 input |> _equal (

    Success (

        [[ 'H'; 'e' ]],

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 2 }

        }

    )

)



╭─[ 50.66ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - [ H, e ]                                                 │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 2                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let rec parseZeroOrMore parser input =

    match runOnInput parser input with

    | Failure (_, _, _) ->

        [[]], input

    | Success (firstValue, inputAfterFirstParse) ->

        let subsequentValues, remainingInput = parseZeroOrMore parser 

inputAfterFirstParse

        firstValue :: subsequentValues, remainingInput



── fsharp ──────────────────────────────────────────────────────────────────────

let inline many parser =

    {

        label = $"many {getLabel parser}"

        parseFn = fun input -> Success (parseZeroOrMore parser input)

    }



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = many parser

runOnInput parser2 input |> _equal (

    Success (

        [[]],

        {

            lines = [[| "hello" |]]

            position = { line = 0; column = 0 }

        }

    )

)



╭─[ 31.92ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - [  ]                                                     │

│       - InputState                                                           │

│           lines: [ hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 0                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline many1 p =

    p >>=

        fun head ->

            many p >>=

                fun tail ->

                    returnP (head :: tail)

    <?> $"many1 {getLabel p}"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = many1 parser

runOnInput parser2 input |> _equal (

    Failure (

        "many1 H",

        "Unexpected 'h'",

        {

            currentLine = "hello"

            line = 0

            column = 0

        }

    )

)



╭─[ 43.17ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: many1 H                                                         │

│       Item2: Unexpected 'h'                                                  │

│       Item3: ParserPosition                                                  │

│         currentLine: hello                                                   │

│         line: 0                                                              │

│         column: 0                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline opt p =

    let some = p |>> Some

    let none = returnP None

    (some <|> none)

    <?> $"opt {getLabel p}"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "hello"

let parser = satisfy (fun c -> c = 'H') "H"

let parser2 = opt parser

runOnInput parser2 input |> _equal (

    Success (

        None,

        {

            lines = [[| "hello" |]]

            position = { line = 0; column = 0 }

        }

    )

)



╭─[ 48.19ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - <null>                                                   │

│       - InputState                                                           │

│           lines: [ hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 0                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline (.>>) p1 p2 =

    p1 .>>. p2

    |> mapP fst



── fsharp ──────────────────────────────────────────────────────────────────────

let inline (>>.) p1 p2 =

    p1 .>>. p2

    |> mapP snd



── fsharp ──────────────────────────────────────────────────────────────────────

let inline between p1 p2 p3 =

    p1 >>. p2 .>> p3



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "[[Hello]]"

let parser =

    between

        (satisfy (fun c -> c = '[[') "[[")

        (many (satisfy (fun c -> [[ 'a' .. 'z' ]] @ [[ 'A' .. 'Z' ]] |> 

List.contains c) "letter"))

        (satisfy (fun c -> c = ']]') "]]")

runOnInput parser input |> _equal (

    Success (

        [[ 'H'; 'e'; 'l'; 'l'; 'o' ]],

        {

            lines = [[| "[[Hello]]" |]]

            position = { line = 0; column = 7 }

        }

    )

)



╭─[ 101.00ms - stdout ]────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - [ H, e, l, l, o ]                                        │

│       - InputState                                                           │

│           lines: [ [Hello] ]                                                 │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 7                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline sepBy1 p sep =

    let sepThenP = sep >>. p

    p .>>. many sepThenP

    |>> fun (p, pList) -> p :: pList



── fsharp ──────────────────────────────────────────────────────────────────────

let inline sepBy p sep =

    sepBy1 p sep <|> returnP [[]]



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello,World"

let parser = sepBy (many (satisfy (fun c -> c <> ',') "not comma")) (satisfy 

(fun c -> c = ',') "comma")

runOnInput parser input |> _equal (

    Success (

        [[ [[ 'H'; 'e'; 'l'; 'l'; 'o' ]]; [[ 'W'; 'o'; 'r'; 'l'; 'd'; '\n' ]] 

]],

        {

            lines = [[| "Hello,World" |]]

            position = { line = 1; column = 0 }

        }

    )

)



╭─[ 69.89ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - FSharpList<FSharpList<Char>>                             │

│ [ H, e, l, l, o ]                                                            │

│ [ W, o, r, l, d,                                                             │

│  ]                                                                           │

│       - InputState                                                           │

│           lines: [ Hello,World ]                                             │

│           position: Position                                                 │

│             line: 1                                                          │

│             column: 0                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline pchar charToMatch =

    satisfy ((=) charToMatch) $"%c{charToMatch}"



── fsharp ──────────────────────────────────────────────────────────────────────

let inline anyOf listOfChars =

    listOfChars

    |> List.map pchar

    |> choice

    <?> $"anyOf %A{listOfChars}"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = anyOf [[ 'H'; 'e'; 'l'; 'o' ]] |> many

runOnInput parser input |> _equal (

    Success (

        [[ 'H'; 'e'; 'l'; 'l'; 'o' ]],

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 5 }

        }

    )

)



╭─[ 34.63ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - [ H, e, l, l, o ]                                        │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 5                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline charListToStr charList =

    charList |> List.toArray |> String



── fsharp ──────────────────────────────────────────────────────────────────────

let inline manyChars cp =

    many cp

    |>> charListToStr



── fsharp ──────────────────────────────────────────────────────────────────────

let inline manyChars1 cp =

    many1 cp

    |>> charListToStr



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = manyChars1 (anyOf [[ 'H'; 'e'; 'l'; 'o' ]])

runOnInput parser input |> _equal (

    Success (

        "Hello",

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 5 }

        }

    )

)



╭─[ 46.70ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - Hello                                                    │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 5                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline pstring str =

    str

    |> List.ofSeq

    |> List.map pchar

    |> sequence

    |> mapP charListToStr

    <?> str



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = pstring "Hello"

runOnInput parser input |> _equal (

    Success (

        "Hello",

        {

            lines = [[| "Hello" |]]

            position = { line = 0; column = 5 }

        }

    )

)



╭─[ 45.13ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - Hello                                                    │

│       - InputState                                                           │

│           lines: [ Hello ]                                                   │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 5                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let whitespaceChar =

    satisfy Char.IsWhiteSpace "whitespace"



── fsharp ──────────────────────────────────────────────────────────────────────

let spaces = many whitespaceChar



── fsharp ──────────────────────────────────────────────────────────────────────

let spaces1 = many1 whitespaceChar



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "  Hello"

let parser = spaces1 .>>. pstring "Hello"

runOnInput parser input |> _equal (

    Success (

        ([[ ' '; ' ' ]], "Hello"),

        {

            lines = [[| "  Hello" |]]

            position = { line = 0; column = 7 }

        }

    )

)



╭─[ 81.43ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       -         - [  ,   ]                                       │

│         - Hello                                                              │

│       - InputState                                                           │

│           lines: [   Hello ]                                                 │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 7                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let digitChar =

    satisfy Char.IsDigit "digit"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let input = fromStr "Hello"

let parser = digitChar

runOnInput parser input |> _equal (

    Failure (

        "digit",

        "Unexpected 'H'",

        {

            currentLine = "Hello"

            line = 0

            column = 0

        }

    )

)



╭─[ 19.51ms - stdout ]─────────────────────────────────────────────────────────╮

│ Failure                                                                      │

│       Item1: digit                                                           │

│       Item2: Unexpected 'H'                                                  │

│       Item3: ParserPosition                                                  │

│         currentLine: Hello                                                   │

│         line: 0                                                              │

│         column: 0                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let pint =

    let inline resultToInt (sign, digits) =

        let i = int digits

        match sign with

        | Some ch -> -i

        | None -> i



    let digits = manyChars1 digitChar



    opt (pchar '-') .>>. digits

    |> mapP resultToInt

    <?> "integer"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run pint "-123"

|> _equal (

    Success (

        -123,

        {

            lines = [[| "-123" |]]

            position = { line = 0; column = 4 }

        }

    )

)



╭─[ 32.17ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - -123                                                     │

│       - InputState                                                           │

│           lines: [ -123 ]                                                    │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 4                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let pfloat =

    let inline resultToFloat (((sign, digits1), point), digits2) =

        let fl = float $"{digits1}.{digits2}"

        match sign with

        | Some ch -> -fl

        | None -> fl



    let digits = manyChars1 digitChar



    opt (pchar '-') .>>. digits .>>. pchar '.' .>>. digits

    |> mapP resultToFloat

    <?> "float"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



run pfloat "-123.45"

|> _equal (

    Success (

        -123.45,

        {

            lines = [[| "-123.45" |]]

            position = { line = 0; column = 7 }

        }

    )

)



╭─[ 34.81ms - stdout ]─────────────────────────────────────────────────────────╮

│ Success                                                                      │

│       Item:       - -123.45                                                  │

│       - InputState                                                           │

│           lines: [ -123.45 ]                                                 │

│           position: Position                                                 │

│             line: 0                                                          │

│             column: 7                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline createParserForwardedToRef<'a> () =

    let mutable parserRef : Parser<'a> =

        {

            label = "unknown"

            parseFn = fun _ -> failwith "unfixed forwarded parser"

        }



    let wrapperParser =

        { parserRef with

            parseFn = fun input -> runOnInput parserRef input

        }



    wrapperParser, (fun v -> parserRef <- v)



── fsharp ──────────────────────────────────────────────────────────────────────

let inline (>>%) p x =

    p

    |>> fun _ -> x

[NbConvertApp] Converting notebook Parser.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 412927 bytes to Parser.dib.html

00:00:00 #1 [Debug] writeDibCode / output: Fs / path: Parser.dib

00:00:00 #1 [Debug] writeDibCode / output: Fs / path: JsonParser.dib

00:00:00 #3 [Debug] parseDibCode / output: Fs / file: JsonParser.dib

00:00:00 #3 [Debug] parseDibCode / output: Fs / file: Parser.dib

In [ ]:
{ . "$ScriptDir/../lib/fsharp/build.ps1" } | Invoke-Block

── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Async (Polyglot)                                                           │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## choice                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline choice asyncs = async {

    let e = Event<_> ()

    use cts = new System.Threading.CancellationTokenSource ()

    let fn =

        asyncs

        |> Seq.map (fun a -> async {

            let! x = a

            e.Trigger x

        })

        |> Async.Parallel

        |> Async.Ignore

    Async.Start (fn, cts.Token)

    let! result = Async.AwaitEvent e.Publish

    cts.Cancel ()

    return result

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## map                                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline map fn a = async {

    let! x = a

    return fn x

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## catch                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline catch a =

    a

    |> Async.Catch

    |> map (function

        | Choice1Of2 result -> Ok result

        | Choice2Of2 ex -> Error ex

    )



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## runWithTimeoutAsync                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline runWithTimeoutAsync (timeout : int) fn =

    let getLocals () = $"timeout: {timeout} / {getLocals ()}"



    let timeoutTask = async {

        do! Async.Sleep timeout

        trace Debug (fun () -> "runWithTimeoutAsync") getLocals

        return None

    }



    let task = async {

        try

            let! result = fn

            return Some result

        with

        | :? System.AggregateException as ex when

            ex.InnerExceptions

            |> Seq.exists (function :? 

System.Threading.Tasks.TaskCanceledException -> true | _ -> false)

            ->

            let getLocals () = $"ex: {ex |> printException} / {getLocals ()}"

            trace Warning (fun () -> "runWithTimeoutAsync") getLocals

            return None

        | ex ->

            trace Critical (fun () -> $"runWithTimeoutAsync** / ex: {ex |> 

printException}") getLocals

            return None

    }



    [[ timeoutTask; task ]]

    |> choice



── fsharp ──────────────────────────────────────────────────────────────────────

let inline runWithTimeout timeout fn =

    fn

    |> runWithTimeoutAsync timeout

    |> Async.RunSynchronously



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



Async.Sleep 60

|> runWithTimeout 10

|> _equal None



╭─[ 145.13ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 10                        │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



Async.Sleep 10

|> runWithTimeout 60

|> _equal (Some ())



╭─[ 72.08ms - stdout ]─────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



async {

    raise (exn "error")

}

|> runWithTimeout 60

|> _equal None



╭─[ 87.96ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #2 [Critical] runWithTimeoutAsync** / ex: System.Exception: error / │

│ timeout: 60                                                                  │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## runWithTimeoutChildAsync                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline runWithTimeoutChildAsync (timeout : int) fn = async {

    let getLocals () = $"timeout: {timeout} / {getLocals ()}"

    let! child = Async.StartChild (fn, timeout)

    return!

        child

        |> catch

        |> map (function

            | Ok result -> Some result

            | Error (:? System.TimeoutException as ex) ->

                trace Debug (fun () -> $"runWithTimeoutChildAsync") getLocals

                None

            | Error ex ->

                trace Critical (fun () -> $"runWithTimeoutChildAsync** / ex: {ex

|> printException}") getLocals

                None

        )

}



── fsharp ──────────────────────────────────────────────────────────────────────

let inline runWithTimeoutChild timeout fn =

    fn

    |> runWithTimeoutChildAsync timeout

    |> Async.RunSynchronously



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



Async.Sleep 60

|> runWithTimeoutChild 10

|> _equal None



╭─[ 76.28ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #3 [Debug] runWithTimeoutChildAsync / timeout: 10                   │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



Async.Sleep 10

|> runWithTimeoutChild 60

|> _equal (Some ())



╭─[ 55.88ms - stdout ]─────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



async {

    raise (exn "error")

}

|> runWithTimeoutChild 60

|> _equal None



╭─[ 62.96ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #4 [Critical] runWithTimeoutChildAsync** / ex: System.Exception:    │

│ error / timeout: 60                                                          │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## runWithTimeoutStrict                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline runWithTimeoutStrict (timeout : int) fn =

    let getLocals () = $"timeout: {timeout} / {getLocals ()}"



    let timeoutTask = async {

        do! Async.Sleep timeout

        return None, getLocals

    }

    

    let task = async {

        try

            return Async.RunSynchronously (fn, timeout) |> Some, getLocals

        with

        | :? System.TimeoutException as ex ->

            let getLocals () = $"ex: {ex |> printException} / {getLocals ()}"

            return None, getLocals

        | ex ->

            trace Critical (fun () -> $"runWithTimeoutStrict / ex: {ex |> 

printException}") getLocals

            return raise ex

    }



    try

        [[| timeoutTask; task |]]

        |> Array.map Async.StartAsTask

        |> System.Threading.Tasks.Task.WhenAny

        |> fun task ->

            match task.Result.Result with

            | None, getLocals ->

                trace Debug (fun () -> "runWithTimeoutStrict") getLocals

                None

            | result, _ -> result

    with

    | :? System.AggregateException as ex when

        ex.InnerExceptions

        |> Seq.exists (function :? System.Threading.Tasks.TaskCanceledException 

-> true | _ -> false)

        ->

        let getLocals () = $"ex: {ex |> printException} / {getLocals ()}"

        trace Warning (fun () -> "runWithTimeoutStrict") getLocals

        None

    | ex ->

        let getLocals () = $"ex: {ex |> printException} / {getLocals ()}"

        trace Critical (fun () -> "runWithTimeoutStrict**") getLocals

        None



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



Async.Sleep 60

|> runWithTimeoutStrict 10

|> _equal None



╭─[ 94.61ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #5 [Debug] runWithTimeoutStrict / timeout: 10                       │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



Async.Sleep 10

|> runWithTimeoutStrict 60

|> _equal (Some ())



╭─[ 74.09ms - stdout ]─────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



async {

    raise (exn "error")

}

|> runWithTimeoutStrict 60

|> _equal None



╭─[ 78.76ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #6 [Critical] runWithTimeoutStrict / ex: System.Exception: error /  │

│ timeout: 60                                                                  │

│ 00:00:00 #7 [Critical] runWithTimeoutStrict** / ex:                          │

│ System.AggregateException: One or more errors occurred. (error) / timeout:   │

│ 60                                                                           │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## awaitValueTask                                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline awaitValueTaskUnit (task : System.Threading.Tasks.ValueTask) =

    task.AsTask () |> Async.AwaitTask



let inline awaitValueTask (task : System.Threading.Tasks.ValueTask<_>) =

    task.AsTask () |> Async.AwaitTask



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## init                                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline init x = async {

    return x

}



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



init 1

|> Async.RunSynchronously

|> _equal 1



╭─[ 24.78ms - stdout ]─────────────────────────────────────────────────────────╮

│ 1                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## mergeCancellationTokenWithDefaultAsync                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline mergeCancellationTokenWithDefaultAsync (token : 

System.Threading.CancellationToken) = async {

    let! ct = Async.CancellationToken

    let dct = Async.DefaultCancellationToken

    let cts = System.Threading.CancellationTokenSource.CreateLinkedTokenSource 

[[| ct; dct; token |]]

    return cts.Token

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## withCancellationToken                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline withCancellationToken (ct : System.Threading.CancellationToken) fn =

    Async.StartImmediateAsTask (fn, ct)

    |> Async.AwaitTask



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let cts = new System.Threading.CancellationTokenSource ()



async {

    let run = async {

        do! Async.Sleep 100

        return 1

    }



    let! child =

        run

        |> withCancellationToken cts.Token

        |> catch

        |> Async.StartChild



    do! Async.Sleep 50

    cts.Cancel ()

    return! child

}

|> Async.RunSynchronously

|> Result.mapError (fun x -> x.Message)

|> _equal (Error ("A task was canceled."))



╭─[ 165.78ms - stdout ]────────────────────────────────────────────────────────╮

│ FSharpResult<Int32,String>                                                   │

│       ResultValue: 0                                                         │

│       ErrorValue: A task was canceled.                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## withTraceLevel                                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline withTraceLevel level fn = async {

    let oldTraceLevel = traceLevel

    try

        traceLevel <- level

        return! fn

    finally

        traceLevel <- oldTraceLevel

}

[NbConvertApp] Converting notebook Async.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 323685 bytes to Async.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # AsyncSeq (Polyglot)                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/Async.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## subscribeEvent                                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline subscribeEvent (event: IEvent<'H, 'A>) map =

    let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

    System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

    |> FSharp.Control.AsyncSeq.ofObservableBuffered



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



type TestEvent () as self =

    member val Calls = [[]] with get, set

    member val Event = Event<ErrorEventHandler, ErrorEventArgs> () with get



    member _.AddCall text =

        self.Calls <- self.Calls @ [[ text ]]



    member _.EventInterface =

        { new IEvent<ErrorEventHandler, ErrorEventArgs> with

            member _.AddHandler handler =

                self.AddCall "AddHandler"

                self.Event.Publish.AddHandler handler



            member _.RemoveHandler handler =

                self.AddCall "RemoveHandler"

                self.Event.Publish.RemoveHandler handler



            member _.Subscribe observer =

                self.AddCall "IObservable.Subscribe"

                let disposable = self.Event.Publish.Subscribe observer

                newDisposable (fun () ->

                    self.AddCall "IObservable.Dispose"

                    disposable.Dispose ()

                )

        }



    member _.Subscribe () =

        subscribeEvent

            self.EventInterface

            (fun args ->

                let result = args.GetException () |> printException

                self.AddCall $"TestEvent.Subscribe({result})"

                result

            )



    member _.Iter subscription =

        subscription

        |> FSharp.Control.AsyncSeq.iteriAsync (fun i error -> async {

            self.AddCall $"TestEvent.Iter({i}: {error})"

        })



    member _.WaitCall text = async {

        while self.Calls |> List.last <> text do

            do! Async.SwitchToThreadPool ()

    }



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let testEvent = TestEvent ()



async {

    testEvent.AddCall "1"

    let! child = testEvent.Subscribe () |> testEvent.Iter |> Async.StartChild

    do! testEvent.WaitCall "AddHandler"

    testEvent.AddCall "2"

    do! child

    testEvent.AddCall "3"

}

|> Async.runWithTimeout 300

|> _equal None



testEvent.Calls

|> Seq.toList

|> _equal [[ "1"; "AddHandler"; "2"; "RemoveHandler" ]]



╭─[ 488.22ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 300                       │

│ <null>                                                                       │

│ [ 1, AddHandler, 2, RemoveHandler ]                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let testEvent = TestEvent ()



async {

    testEvent.AddCall "1"

    let! child = testEvent.Subscribe () |> testEvent.Iter |> Async.StartChild

    do! testEvent.WaitCall "AddHandler"

    testEvent.AddCall "2"

    use _ = testEvent.EventInterface.Subscribe (fun args ->

        testEvent.AddCall $"testEvent.EventInterface.Subscribe({args})"

    )

    testEvent.AddCall "3"

    do! child

    testEvent.AddCall "4"

}

|> Async.runWithTimeout 300

|> _equal None



testEvent.Calls

|> _equal [[ "1"; "AddHandler"; "2"; "IObservable.Subscribe"; "3"; 

"RemoveHandler"; "IObservable.Dispose" ]]



╭─[ 441.33ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #2 [Debug] runWithTimeoutAsync / timeout: 300                       │

│ <null>                                                                       │

│ [ 1, AddHandler, 2, IObservable.Subscribe, 3, RemoveHandler,                 │

│ IObservable.Dispose ]                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let testEvent = TestEvent ()



async {

    testEvent.AddCall "1"

    let! child = testEvent.Subscribe () |> testEvent.Iter |> Async.StartChild

    do! testEvent.WaitCall "AddHandler"

    testEvent.AddCall "2"

    use _ = testEvent.EventInterface.Subscribe (fun args ->

        async {

            do! testEvent.WaitCall "TestEvent.Iter(0: System.Exception: error)"

            testEvent.AddCall 

$"testEvent.EventInterface.Subscribe({args.GetException () |> printException})"

        }

        |> Async.RunSynchronously

    )

    testEvent.AddCall "3"

    testEvent.Event.Trigger (null, ErrorEventArgs (Exception "error"))

    testEvent.AddCall "4"

    do! child

    testEvent.AddCall "5"

}

|> Async.runWithTimeout 300

|> _equal None



testEvent.Calls

|> _equal [[

    "1"

    "AddHandler"

    "2"

    "IObservable.Subscribe"

    "3"

    "TestEvent.Subscribe(System.Exception: error)"

    "TestEvent.Iter(0: System.Exception: error)"

    "testEvent.EventInterface.Subscribe(System.Exception: error)"

    "4"

    "RemoveHandler"

    "IObservable.Dispose"

]]



╭─[ 465.07ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #3 [Debug] runWithTimeoutAsync / timeout: 300                       │

│ <null>                                                                       │

│ [ 1, AddHandler, 2, IObservable.Subscribe, 3,                                │

│ TestEvent.Subscribe(System.Exception: error), TestEvent.Iter(0:              │

│ System.Exception: error),                                                    │

│ testEvent.EventInterface.Subscribe(System.Exception: error), 4,              │

│ RemoveHandler, IObservable.Dispose ]                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let subscribeToken (token : System.Threading.CancellationToken) =

    let tcs = new System.Threading.Tasks.TaskCompletionSource ()

    System.Action tcs.SetResult |> token.Register |> ignore

    let start = System.DateTime.Now.Ticks

    FSharp.Control.AsyncSeq.unfoldAsync

        (fun () -> async {

            do! tcs.Task |> Async.AwaitTask

            return Some (System.DateTime.Now.Ticks - start, ())

        })

        ()



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let cts = new System.Threading.CancellationTokenSource ()



async {

    let! child =

        cts.Token

        |> subscribeToken

        |> FSharp.Control.AsyncSeq.tryFirst

        |> Async.StartChild



    do! Async.Sleep 100

    cts.Cancel ()

    return! child

}

|> Async.RunSynchronously

|> Option.get

|> _isGreaterThan 1000000



╭─[ 186.41ms - stdout ]────────────────────────────────────────────────────────╮

│ 1112978                                                                      │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook AsyncSeq.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 300376 bytes to AsyncSeq.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Common (Polyglot)                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

let nl = System.Environment.NewLine

let q = @""""



── fsharp ──────────────────────────────────────────────────────────────────────

let inline cons head tail = head :: tail



── fsharp ──────────────────────────────────────────────────────────────────────

module String =

    let inline contains (value : string) (input : string) =

        input.Contains value



    let inline endsWith (value : string) (input : string) =

        input.EndsWith value



    let inline padLeft totalWidth paddingChar (input : string) =

        input.PadLeft (totalWidth, paddingChar)



    let inline replace (oldValue : string) (newValue : string) (input : string) 

=

        input.Replace (oldValue, newValue)



    let inline split separator (input : string) =

        input.Split separator



    let inline splitString (separator : string array) (input : string) =

        input.Split (separator, System.StringSplitOptions.None)



    let inline startsWith (value : string) (input : string) =

        input.StartsWith value



    let inline substring startIndex length (input : string) =

        input.Substring (startIndex, length)



    let inline toLower (input : string) =

        input.ToLower ()



    let inline toUpper (input : string) =

        input.ToUpper ()



    let inline trim (input : string) =

        input.Trim ()

    

    let inline trimEnd (trimChars : char array) (input : string) =

        input.TrimEnd trimChars



    let inline trimStart (trimChars : char array) (input : string) =

        input.TrimStart trimChars



── fsharp ──────────────────────────────────────────────────────────────────────

type TicksGuid = System.Guid

type DateTimeGuid = System.Guid



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let testGuid = Guid "FEDCBA98-7654-3210-FEDC-BA9876543210"



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## dateTimeGuidFromDateTime                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline dateTimeGuidFromDateTime (guid: System.Guid) (dateTime: 

System.DateTime) =

    let guid = guid |> string

    let prefix = dateTime.ToString "yyyyMMdd-HHmm-ssff-ffff-f"

    DateTimeGuid $"{prefix}{guid.[[prefix.Length..]]}"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



dateTimeGuidFromDateTime testGuid DateTime.MinValue

|> _equal (DateTimeGuid "00010101-0000-0000-0000-0a9876543210")



╭─[ 62.00ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00010101-0000-0000-0000-0a9876543210                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



dateTimeGuidFromDateTime testGuid DateTime.MaxValue

|> _equal (DateTimeGuid $"99991231-2359-5999-9999-9{(testGuid |> 

string).[[^10..]]}")



╭─[ 34.60ms - stdout ]─────────────────────────────────────────────────────────╮

│ 99991231-2359-5999-9999-9a9876543210                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



dateTimeGuidFromDateTime testGuid DateTime.UnixEpoch

|> _equal (DateTimeGuid $"19700101-0000-0000-0000-0{(testGuid |> 

string).[[^10..]]}")



╭─[ 33.74ms - stdout ]─────────────────────────────────────────────────────────╮

│ 19700101-0000-0000-0000-0a9876543210                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## dateTimeFromGuid                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline dateTimeFromGuid (dateTimeGuid: DateTimeGuid) =

    let dateTimeGuid = dateTimeGuid |> string

    System.DateTime.ParseExact (dateTimeGuid.[[..24]] |> String.replace "-" "", 

"yyyyMMddHHmmssfffffff", null)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



dateTimeFromGuid (DateTimeGuid "00010101-0000-0000-0000-0a9876543210")

|> _equal DateTime.MinValue



╭─[ 29.80ms - stdout ]─────────────────────────────────────────────────────────╮

│ 0001-01-01 00:00:00Z                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



dateTimeFromGuid (DateTimeGuid $"99991231-2359-5999-9999-9{(testGuid |> 

string).[[^10..]]}")

|> _equal DateTime.MaxValue



╭─[ 29.66ms - stdout ]─────────────────────────────────────────────────────────╮

│ 9999-12-31 23:59:59Z                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



dateTimeFromGuid (DateTimeGuid $"19700101-0000-0000-0000-0{(testGuid |> 

string).[[^10..]]}")

|> _equal DateTime.UnixEpoch



╭─[ 27.83ms - stdout ]─────────────────────────────────────────────────────────╮

│ 1970-01-01 00:00:00Z                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## ticksGuidFromTicks                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline ticksGuidFromTicks (guid: System.Guid) (ticks: int64) =

    let guid = guid |> string

    let ticks = ticks |> string |> String.padLeft 18 '0'

    TicksGuid 

$"{ticks.[[0..7]]}-{ticks.[[8..11]]}-{ticks.[[12..15]]}-{ticks.[[16..17]]}{guid.

[[21..]]}"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



ticksGuidFromTicks testGuid 0L

|> _equal (TicksGuid "00000000-0000-0000-00dc-ba9876543210")



╭─[ 29.53ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00000000-0000-0000-00dc-ba9876543210                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



ticksGuidFromTicks testGuid 999999999999999999L

|> _equal (TicksGuid $"99999999-9999-9999-99dc-b{(testGuid |> 

string).[[^10..]]}")



╭─[ 37.23ms - stdout ]─────────────────────────────────────────────────────────╮

│ 99999999-9999-9999-99dc-ba9876543210                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## ticksFromGuid                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline ticksFromGuid (ticksGuid: DateTimeGuid) =

    let ticks = ticksGuid |> string

    int64 

$"{ticks.[[0..7]]}{ticks.[[9..12]]}{ticks.[[14..17]]}{ticks.[[19..20]]}"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



ticksFromGuid (TicksGuid "00000000-0000-0000-00dc-ba9876543210")

|> _equal 0L



╭─[ 28.24ms - stdout ]─────────────────────────────────────────────────────────╮

│ 0                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



ticksFromGuid (TicksGuid $"99999999-9999-9999-99{(testGuid |> 

string).[[^14..]]}")

|> _equal 999999999999999999L



╭─[ 32.48ms - stdout ]─────────────────────────────────────────────────────────╮

│ 999999999999999999                                                           │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## newGuidFromDateTime                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline newGuidFromDateTime (dateTime: System.DateTime) =

    let guid = System.Guid.NewGuid ()

    dateTimeGuidFromDateTime guid dateTime



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



newGuidFromDateTime System.DateTime.UtcNow

|> dateTimeFromGuid

|> fun dateTime -> (dateTime - System.DateTime.UtcNow).TotalSeconds |> int

|> _equal 0



╭─[ 54.67ms - stdout ]─────────────────────────────────────────────────────────╮

│ 0                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## newGuidFromTicks                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline newGuidFromTicks (ticks: int64) =

    let guid = System.Guid.NewGuid ()

    ticksGuidFromTicks guid ticks



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



newGuidFromTicks System.DateTime.UtcNow.Ticks

|> ticksFromGuid

|> fun ticks -> (ticks - System.DateTime.UtcNow.Ticks) / 100000L

|> _equal 0L



╭─[ 43.44ms - stdout ]─────────────────────────────────────────────────────────╮

│ 0                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## memoize                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline memoize fn =

    let result = lazy fn ()

    fun () -> result.Value



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable count = 0

let add =

    fun () -> count <- count + 1

    |> memoize



add ()

add ()

add ()



count

|> _equal 1



╭─[ 27.08ms - stdout ]─────────────────────────────────────────────────────────╮

│ 1                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## printException                                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline printException (ex : System.Exception) =

    $"{ex.GetType ()}: {ex.Message}"



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



fun () -> failwith "test"

|> _throwsC (fun ex _ ->

    printException ex

    |> _equal "System.Exception: test"

)



╭─[ 42.22ms - stdout ]─────────────────────────────────────────────────────────╮

│ FSI_0034+it@3-1                                                              │

│ System.Exception: test                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## TraceLevel                                                                │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type TraceLevel =

    | Verbose

    | Debug

    | Info

    | Warning

    | Critical



let inline getLocals () = ""



let mutable traceEnabled = true

let mutable traceCount = 0

let mutable traceLevel = Verbose

let mutable traceDump = false



── fsharp ──────────────────────────────────────────────────────────────────────

let testTraceLevel level =

    traceEnabled && level >= traceLevel



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## traceRaw                                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let rec traceRaw level fn =

    if level |> testTraceLevel then

        traceCount <- traceCount + 1



        let text = $"%s{fn ()}"



        System.Console.WriteLine text

#if !CHAIN && !FABLE_COMPILER

        if traceDump then

            try

                let tmpPath = System.IO.Path.GetTempPath ()

                let logDir = System.IO.Path.Combine (tmpPath, "!polyglot")

                System.IO.Directory.CreateDirectory logDir |> ignore

                let logFile = System.IO.Path.Combine (logDir, 

$"{newGuidFromDateTime System.DateTime.Now}.txt")

                System.IO.File.WriteAllTextAsync (logFile, text) |> 

Async.AwaitTask |> Async.RunSynchronously

            with ex ->

                traceRaw Critical (fun () -> $"trace / ex: {ex |> 

printException}")

#endif



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



traceRaw Debug (fun () -> "test")



╭─[ 12.37ms - stdout ]─────────────────────────────────────────────────────────╮

│ test                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## trace                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let private replStart =

#if INTERACTIVE || !FABLE_COMPILER

    fun () ->

        if System.Reflection.Assembly.GetEntryAssembly().GetName().Name <> 

"Microsoft.DotNet.Interactive.App"

        then Some System.DateTime.Now.Ticks

        else None

    |> memoize

#else

    fun () -> None : int64 option

#endif



let trace level fn getLocals =

    fun () ->

        let time =

#if CHAIN

            ""

#else

            match replStart () with

            | Some replStart ->

                let t = System.DateTime.Now.Ticks - replStart |> System.TimeSpan

                System.DateTime (1, 1, 1, t.Hours, t.Minutes, t.Seconds, 

t.Milliseconds, t.Microseconds)

            | None -> System.DateTime.Now

            |> fun dateTime ->

#if FABLE_COMPILER_RUST

                "hh:mm:ss"

#else

                "HH:mm:ss"

#endif

                |> dateTime.ToString

#endif

        $"{time} #{traceCount} [[%A{level}]] %s{fn ()} / %s{getLocals ()}"

        |> String.trimStart [[||]]

        |> String.trimEnd [[| ' '; '/' |]]

    |> traceRaw level



let inline withTrace enabled fn =

    let oldTraceEnabled = traceEnabled

    try

        traceEnabled <- enabled

        fn ()

    finally

        traceEnabled <- oldTraceEnabled



let inline withTraceEnabled fn =

    withTrace true fn



let inline withTraceDisabled fn =

    withTrace false fn



let inline withTraceLevel level fn =

    let oldTraceLevel = traceLevel

    try

        traceLevel <- level

        fn ()

    finally

        traceLevel <- oldTraceLevel



let inline withTraceDump dump fn =

    let oldTraceDump = traceDump

    try

        traceDump <- dump

        fn ()

    finally

        traceDump <- oldTraceDump



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



trace Debug (fun () -> "test") getLocals



╭─[ 30.16ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #2 [Debug] test                                                     │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## newDisposable                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline newDisposable fn =

    { new System.IDisposable with

        member _.Dispose () = fn ()

    }



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable newDisposableTest = 0

newDisposable (fun () -> newDisposableTest <- newDisposableTest + 1)

|> fun x -> x.Dispose ()

newDisposableTest |> _equal 1



╭─[ 20.62ms - stdout ]─────────────────────────────────────────────────────────╮

│ 1                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable newDisposableTest = 0

fun () -> task {

    use x = newDisposable (fun () -> newDisposableTest <- newDisposableTest + 1)

    ()

}

|> fun x -> x () |> Async.AwaitTask |> Async.RunSynchronously

newDisposableTest |> _equal 1



╭─[ 110.63ms - stdout ]────────────────────────────────────────────────────────╮

│ 1                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable newDisposableTest = 0

async {

    use x = newDisposable (fun () -> newDisposableTest <- newDisposableTest + 1)

    ()

}

|> Async.RunSynchronously

newDisposableTest |> _equal 1



╭─[ 33.70ms - stdout ]─────────────────────────────────────────────────────────╮

│ 1                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable newDisposableTest = 0

async {

    let x = newDisposable (fun () -> newDisposableTest <- newDisposableTest + 1)

    ()

}

|> Async.RunSynchronously

newDisposableTest |> _equal 0



╭─[ 29.91ms - stdout ]─────────────────────────────────────────────────────────╮

│ 0                                                                            │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## retryFn                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline retryFn retries fn =

    let rec loop retry =

        try

            if retry < retries

            then fn () |> Some

            else None

        with ex ->

            let getLocals () = $"retry: {retry} / ex: {ex |> printException} / 

{getLocals ()}"

            trace Warning (fun () -> "retryFn") getLocals

            System.Threading.Thread.Sleep 1

            loop (retry + 1)

    loop 0



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable retryFnTest = 0

fun () ->

    retryFnTest <- retryFnTest + 1

    retryFnTest

|> retryFn 3

|> _equal (Some 1)



╭─[ 28.71ms - stdout ]─────────────────────────────────────────────────────────╮

│ FSharpOption<Int32>                                                          │

│       Value: 1                                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



fun () -> failwith "test"

|> retryFn 3

|> _equal None



╭─[ 68.96ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #3 [Warning] retryFn / retry: 0 / ex: System.Exception: test        │

│ 00:00:00 #4 [Warning] retryFn / retry: 1 / ex: System.Exception: test        │

│ 00:00:00 #5 [Warning] retryFn / retry: 2 / ex: System.Exception: test        │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable retryFnTest = 0

fun () ->

    if retryFnTest >= 2

    then retryFnTest

    else

        retryFnTest <- retryFnTest + 1

        failwith "test"

|> retryFn 3

|> _equal (Some 2)



╭─[ 79.03ms - stdout ]─────────────────────────────────────────────────────────╮

│ 00:00:00 #6 [Warning] retryFn / retry: 0 / ex: System.Exception: test        │

│ 00:00:00 #7 [Warning] retryFn / retry: 1 / ex: System.Exception: test        │

│ FSharpOption<Int32>                                                          │

│       Value: 2                                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Common.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 351888 bytes to Common.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # CommonFSharp (Polyglot)                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## getUnionCaseName                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getUnionCaseName<'T> (x: 'T) =

    match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

    | case, _ -> case.Name



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



TraceLevel.Critical

|> getUnionCaseName

|> _equal (nameof TraceLevel.Critical)



╭─[ 51.64ms - stdout ]─────────────────────────────────────────────────────────╮

│ Critical                                                                     │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook CommonFSharp.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 274494 bytes to CommonFSharp.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Threading (Polyglot)                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## newDisposableToken                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline newDisposableToken (mergeToken: System.Threading.CancellationToken 

option) =

    let cts = new System.Threading.CancellationTokenSource ()

    let cts =

        match mergeToken with

        | None -> cts

        | Some mergeToken ->

            System.Threading.CancellationTokenSource.CreateLinkedTokenSource [[|

cts.Token; mergeToken |]]

    let disposable = newDisposable cts.Cancel

    cts.Token, disposable



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let mutable counter = 0



let inline run fn =

    let token, disposable = newDisposableToken None

    use _ = disposable

    fn token

    async {

        fn token

    }

    |> Async.Start



let inline fn (token : System.Threading.CancellationToken) =

    counter <- counter + (if token.IsCancellationRequested then 10 else 1)



async {

    run fn

    do! Async.Sleep 1

    return counter

}

|> Async.RunSynchronously

|> _equal 11



╭─[ 123.18ms - stdout ]────────────────────────────────────────────────────────╮

│ 11                                                                           │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Threading.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 277510 bytes to Threading.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Crypto (Polyglot)                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## hashText                                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let hashText (input : string) =

    use sha256 = System.Security.Cryptography.SHA256.Create ()

    input

    |> System.Text.Encoding.UTF8.GetBytes

    |> sha256.ComputeHash

    |> Array.map (fun b -> b.ToString "x2")

    |> String.concat ""



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



""

|> hashText

|> _equal "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"



╭─[ 46.69ms - stdout ]─────────────────────────────────────────────────────────╮

│ e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



" "

|> hashText

|> _equal "36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068"



╭─[ 16.17ms - stdout ]─────────────────────────────────────────────────────────╮

│ 36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Crypto.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 276328 bytes to Crypto.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # FileSystem (Polyglot)                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/AsyncSeq.fs

#!import ../../lib/fsharp/Runtime.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module AsyncSeq =



    open Common



    /// ## subscribeEvent



    let inline subscribeEvent (event: IEvent<'H, 'A>) map =

        let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

        System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

        |> FSharp.Control.AsyncSeq.ofObservableBuffered



    let subscribeToken (token : System.Threading.CancellationToken) =

        let tcs = new System.Threading.Tasks.TaskCompletionSource ()

        System.Action tcs.SetResult |> token.Register |> ignore

        let start = System.DateTime.Now.Ticks

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun (...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Operators                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

module Operators =

    let inline (</>) a b =

        System.IO.Path.Combine (a, b)



── fsharp ──────────────────────────────────────────────────────────────────────

open Operators



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## createTempDirectoryName                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline createTempDirectoryName () =

    let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name



    System.IO.Path.GetTempPath ()

    </> $"!{root}"

    </> string (newGuidFromDateTime System.DateTime.Now)



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



createTempDirectoryName ()

|> _contains System.IO.Path.DirectorySeparatorChar



╭─[ 39.34ms - stdout ]─────────────────────────────────────────────────────────╮

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1254-1857-5773-54554 │

│ c9b5081                                                                      │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## createTempDirectory                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline createTempDirectory () =

    let tempFolder = createTempDirectoryName ()

    let result = System.IO.Directory.CreateDirectory tempFolder



    if not result.Exists then

        let getLocals () =

            $"tempFolder: {tempFolder} / result: {({|

                Exists = result.Exists

                CreationTime = result.CreationTime

            |})} {getLocals ()}"



        trace Debug (fun () -> "createTempDirectory") getLocals



    tempFolder



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempDirectory = createTempDirectory ()



Directory.Exists tempDirectory

|> _equal true



╭─[ 30.36ms - stdout ]─────────────────────────────────────────────────────────╮

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## getSourceDirectory                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let getSourceDirectory =

    fun () -> __SOURCE_DIRECTORY__

    |> memoize



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



getSourceDirectory ()

|> System.IO.DirectoryInfo

|> fun dir -> dir.Name

|> _equal "fsharp"



╭─[ 29.22ms - stdout ]─────────────────────────────────────────────────────────╮

│ fsharp                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## findParent                                                                │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline findParent name isFile rootDir =

    let rec loop dir =

        if dir </> name |> (if isFile then System.IO.File.Exists else 

System.IO.Directory.Exists)

        then dir

        else

            dir

            |> System.IO.Directory.GetParent

            |> function

                | null -> failwith $"""No parent for {if isFile then "file" else

"dir"} '{name}' at '{rootDir}'"""

                | parent -> parent.FullName |> loop

    loop rootDir



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



getSourceDirectory () |> findParent ".paket" false

|> System.IO.DirectoryInfo

|> fun dir -> dir.Name

|> _equal "polyglot"



╭─[ 36.39ms - stdout ]─────────────────────────────────────────────────────────╮

│ polyglot                                                                     │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



getSourceDirectory () |> findParent "paket.dependencies" true

|> System.IO.DirectoryInfo

|> fun dir -> dir.Name

|> _equal "polyglot"



╭─[ 21.22ms - stdout ]─────────────────────────────────────────────────────────╮

│ polyglot                                                                     │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## readAllTextAsync                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline readAllTextAsync path =

    path |> System.IO.File.ReadAllTextAsync |> Async.AwaitTask



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## fileExistsContent                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline fileExistsContent path content = async {

    if path |> System.IO.File.Exists |> not

    then return false

    else

        let! existingContent = path |> readAllTextAsync

        return content = existingContent

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## writeAllTextAsync                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline writeAllTextAsync path contents =

    System.IO.File.WriteAllTextAsync (path, contents) |> Async.AwaitTask



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## writeAllTextExists                                                        │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline writeAllTextExists path contents = async {

    let! exists = contents |> fileExistsContent path

    if not exists

    then do! contents |> writeAllTextAsync path

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## waitForFileAccess                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline waitForFileAccess access path =

    let fileAccess, fileShare =

        access

        |> Option.defaultValue (System.IO.FileAccess.ReadWrite, 

System.IO.FileShare.Read)



    let rec loop retry = async {

        try

            use _ = new System.IO.FileStream (

                path,

                System.IO.FileMode.Open,

                fileAccess,

                fileShare

            )

            return retry

        with ex ->

            if retry % 100 = 0 then

                let getLocals () = $"path: {path |> System.IO.Path.GetFileName} 

/ ex: {ex |> printException} / {getLocals ()}"

                trace Debug (fun () -> "waitForFileAccess") getLocals

            do! Async.Sleep 10

            return! loop (retry + 1)

    }

    loop 0



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = createTempDirectory ()

let path = tempFolder </> "test.txt"



let inline lockFile () = async {

    trace Debug (fun () -> "_1") getLocals

    use stream = new System.IO.FileStream (

        path,

        System.IO.FileMode.Open,

        System.IO.FileAccess.ReadWrite,

        System.IO.FileShare.None

    )

    trace Debug (fun () -> "_2") getLocals

    do! Async.Sleep 2000

    trace Debug (fun () -> "_3") getLocals

    stream.Seek (0L, SeekOrigin.Begin) |> ignore

    trace Debug (fun () -> "_4") getLocals

    stream.WriteByte 49uy

    trace Debug (fun () -> "_5") getLocals

    stream.Flush ()

    trace Debug (fun () -> "_6") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    do! "0" |> writeAllTextAsync path

    trace Debug (fun () -> "2") getLocals

    let! child = lockFile () |> Async.StartChild

    trace Debug (fun () -> "3") getLocals

    do! Async.Sleep 1

    trace Debug (fun () -> "4") getLocals

    let! retries = path |> waitForFileAccess None

    trace Debug (fun () -> "5") getLocals

    let! text = path |> readAllTextAsync

    trace Debug (fun () -> "6") getLocals

    do! child

    trace Debug (fun () -> "7") getLocals

    return retries, text

}

|> Async.runWithTimeout 3000

|> function

    | Some (retries, text) ->

        retries

        |> _isBetween

            (if Runtime.isWindows () then 100 else 100)

            (if Runtime.isWindows () then 150 else 200)

        

        text |> _equal "1"

        

        true

    | _ -> false

|> _equal true



╭─[ 2.43s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] 1                                                        │

│ 00:00:00 #2 [Debug] 2                                                        │

│ 00:00:00 #3 [Debug] _1                                                       │

│ 00:00:00 #4 [Debug] 3                                                        │

│ 00:00:00 #5 [Debug] _2                                                       │

│ 00:00:00 #6 [Debug] 4                                                        │

│ 00:00:00 #7 [Debug] waitForFileAccess / path: test.txt / ex:                 │

│ System.IO.IOException: The process cannot access the file                    │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1254-1929-2952-2362 │

│ 31bf82b4\test.txt' because it is being used by another process.              │

│ 00:00:01 #8 [Debug] waitForFileAccess / path: test.txt / ex:                 │

│ System.IO.IOException: The process cannot access the file                    │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1254-1929-2952-2362 │

│ 31bf82b4\test.txt' because it is being used by another process.              │

│ 00:00:02 #9 [Debug] _3                                                       │

│ 00:00:02 #10 [Debug] _4                                                      │

│ 00:00:02 #11 [Debug] _5                                                      │

│ 00:00:02 #12 [Debug] _6                                                      │

│ 00:00:02 #13 [Debug] 5                                                       │

│ 00:00:02 #14 [Debug] 6                                                       │

│ 00:00:02 #15 [Debug] 7                                                       │

│ 128                                                                          │

│ 128                                                                          │

│ 128                                                                          │

│ 1                                                                            │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## readAllTextRetryAsync                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline readAllTextRetryAsync fullPath =

    let rec loop retry = async {

        try

            if retry > 0

            then do!

                fullPath

                |> waitForFileAccess (Some (

                    System.IO.FileAccess.Read,

                    System.IO.FileShare.Read

                ))

                |> Async.runWithTimeoutAsync 1000

                |> Async.Ignore

            return! fullPath |> readAllTextAsync |> Async.map Some

        with ex ->

            let getLocals () = $"retry: {retry} / ex: {ex |> printException} / 

{getLocals ()}"

            trace Debug (fun () -> $"watchWithFilter / readContent") getLocals

            if retry = 0

            then return! loop (retry + 1)

            else return None

    }

    loop 0



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## deleteDirectoryAsync                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline deleteDirectoryAsync path =

    let rec loop retry = async {

        try

            System.IO.Directory.Delete (path, true)

            return retry

        with ex ->

            if retry % 100 = 0 then

                let getLocals () = $"path: {path |> System.IO.Path.GetFileName} 

/ ex: {ex |> printException} / {getLocals ()}"

                trace Debug (fun () -> "deleteDirectoryAsync") getLocals

            do! Async.Sleep 10

            return! loop (retry + 1)

    }

    loop 0



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = createTempDirectory ()

let path = tempFolder </> "test"



let inline lockDirectory () = async {

    trace Debug (fun () -> "_1") getLocals

    System.IO.File.WriteAllText (path </> "test.txt", "0")

    use _ = new System.IO.FileStream (

        path </> "test.txt",

        System.IO.FileMode.Open,

        System.IO.FileAccess.ReadWrite,

        System.IO.FileShare.None

    )

    trace Debug (fun () -> "_2") getLocals

    do! Async.Sleep 2000

    trace Debug (fun () -> "_3") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    Directory.CreateDirectory path |> ignore

    trace Debug (fun () -> "2") getLocals

    let! child = lockDirectory () |> Async.StartChild

    trace Debug (fun () -> "3") getLocals

    do! Async.Sleep 60

    trace Debug (fun () -> "4") getLocals

    let! retries = deleteDirectoryAsync path

    trace Debug (fun () -> "5") getLocals

    do! child

    trace Debug (fun () -> "6") getLocals

    return retries

}

|> Async.runWithTimeout 3000

|> function

    | Some retries ->

        retries

        |> _isBetween

            (if Runtime.isWindows () then 100 else 0)

            (if Runtime.isWindows () then 150 else 0)



        true

    | _ -> false

|> _equal true



╭─[ 2.31s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:02 #16 [Debug] 1                                                       │

│ 00:00:02 #17 [Debug] 2                                                       │

│ 00:00:02 #18 [Debug] 3                                                       │

│ 00:00:02 #19 [Debug] _1                                                      │

│ 00:00:02 #20 [Debug] _2                                                      │

│ 00:00:02 #21 [Debug] 4                                                       │

│ 00:00:02 #22 [Debug] deleteDirectoryAsync / path: test / ex:                 │

│ System.IO.IOException: The process cannot access the file 'test.txt' because │

│ it is being used by another process.                                         │

│ 00:00:04 #23 [Debug] deleteDirectoryAsync / path: test / ex:                 │

│ System.IO.IOException: The process cannot access the file 'test.txt' because │

│ it is being used by another process.                                         │

│ 00:00:04 #24 [Debug] _3                                                      │

│ 00:00:04 #25 [Debug] 5                                                       │

│ 00:00:04 #26 [Debug] 6                                                       │

│ 124                                                                          │

│ 124                                                                          │

│ 124                                                                          │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## deleteFileAsync                                                           │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline deleteFileAsync path =

    let rec loop retry = async {

        try

            System.IO.File.Delete path

            return retry

        with ex ->

            if retry % 100 = 0 then

                let getLocals () = $"path: {path |> System.IO.Path.GetFileName} 

/ ex: {ex |> printException} / {getLocals ()}"

                trace Warning (fun () -> "deleteFileAsync") getLocals

            do! Async.Sleep 10

            return! loop (retry + 1)

    }

    loop 0



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = createTempDirectory ()

let path = tempFolder </> "test.txt"



let inline lockFile () = async {

    trace Debug (fun () -> "_1") getLocals

    use _ = new System.IO.FileStream (

        path,

        System.IO.FileMode.Open,

        System.IO.FileAccess.ReadWrite,

        System.IO.FileShare.None

    )

    trace Debug (fun () -> "_2") getLocals

    do! Async.Sleep 2000

    trace Debug (fun () -> "_3") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    do! "0" |> writeAllTextAsync path

    trace Debug (fun () -> "2") getLocals

    let! child = lockFile () |> Async.StartChild

    trace Debug (fun () -> "3") getLocals

    do! Async.Sleep 1

    trace Debug (fun () -> "4") getLocals

    let! retries = deleteFileAsync path

    trace Debug (fun () -> "5") getLocals

    do! child

    trace Debug (fun () -> "6") getLocals

    return retries

}

|> Async.runWithTimeout 3000

|> function

    | Some retries ->

        retries

        |> _isBetween

            (if Runtime.isWindows () then 100 else 0)

            (if Runtime.isWindows () then 150 else 0)



        true

    | _ -> false

|> _equal true



╭─[ 2.28s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:05 #27 [Debug] 1                                                       │

│ 00:00:05 #28 [Debug] 2                                                       │

│ 00:00:05 #29 [Debug] 3                                                       │

│ 00:00:05 #30 [Debug] _1                                                      │

│ 00:00:05 #31 [Debug] _2                                                      │

│ 00:00:05 #32 [Debug] 4                                                       │

│ 00:00:05 #33 [Warning] deleteFileAsync / path: test.txt / ex:                │

│ System.IO.IOException: The process cannot access the file                    │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1254-2431-3156-32b6 │

│ 633dcc8c\test.txt' because it is being used by another process.              │

│ 00:00:06 #34 [Warning] deleteFileAsync / path: test.txt / ex:                │

│ System.IO.IOException: The process cannot access the file                    │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1254-2431-3156-32b6 │

│ 633dcc8c\test.txt' because it is being used by another process.              │

│ 00:00:07 #35 [Debug] _3                                                      │

│ 00:00:07 #36 [Debug] 5                                                       │

│ 00:00:07 #37 [Debug] 6                                                       │

│ 128                                                                          │

│ 128                                                                          │

│ 128                                                                          │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## moveFileAsync                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline moveFileAsync newPath oldPath =

    let rec loop retry = async {

        try

            System.IO.File.Move (oldPath, newPath)

            return retry

        with ex ->

            if retry % 100 = 0 then

                let getLocals () =

                    $"oldPath: {oldPath |> System.IO.Path.GetFileName} / 

newPath: {newPath |> System.IO.Path.GetFileName} / ex: {ex |> printException} / 

{getLocals ()}"

                trace Warning (fun () -> "moveFileAsync") getLocals

            do! Async.Sleep 10

            return! loop (retry + 1)

    }

    loop 0



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = createTempDirectory ()

let path = tempFolder </> "test.txt"

let newPath = tempFolder </> "test2.txt"



let inline lockFile () = async {

    trace Debug (fun () -> "_1") getLocals

    use _ = new System.IO.FileStream (

        path,

        System.IO.FileMode.Open,

        System.IO.FileAccess.ReadWrite,

        System.IO.FileShare.None

    )

    trace Debug (fun () -> "_2") getLocals

    do! Async.Sleep 2000

    trace Debug (fun () -> "_3") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    do! "0" |> writeAllTextAsync path

    trace Debug (fun () -> "2") getLocals

    let! child = lockFile () |> Async.StartChild

    trace Debug (fun () -> "3") getLocals

    do! Async.Sleep 1

    trace Debug (fun () -> "4") getLocals

    let! retries1 = path |> moveFileAsync newPath

    trace Debug (fun () -> "5") getLocals

    let! retries2 = newPath |> waitForFileAccess None

    trace Debug (fun () -> "6") getLocals

    let! text = newPath |> readAllTextAsync

    trace Debug (fun () -> "7") getLocals

    do! child

    trace Debug (fun () -> "8") getLocals

    return retries1, retries2, text

}

|> Async.runWithTimeout 3000

|> function

    | Some (retries1, retries2, text) ->

        retries1

        |> _isBetween

            (if Runtime.isWindows () then 100 else 0)

            (if Runtime.isWindows () then 150 else 0)



        retries2

        |> _isBetween

            (if Runtime.isWindows () then 0 else 100)

            (if Runtime.isWindows () then 0 else 200)

        

        text |> _equal "0"

        

        true

    | _ -> false

|> _equal true



╭─[ 2.33s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:07 #38 [Debug] 1                                                       │

│ 00:00:07 #39 [Debug] 2                                                       │

│ 00:00:07 #40 [Debug] 3                                                       │

│ 00:00:07 #41 [Debug] _1                                                      │

│ 00:00:07 #42 [Debug] _2                                                      │

│ 00:00:07 #43 [Debug] 4                                                       │

│ 00:00:07 #44 [Warning] moveFileAsync / oldPath: test.txt / newPath:          │

│ test2.txt / ex: System.IO.IOException: The process cannot access the file    │

│ because it is being used by another process.                                 │

│ 00:00:09 #45 [Warning] moveFileAsync / oldPath: test.txt / newPath:          │

│ test2.txt / ex: System.IO.IOException: The process cannot access the file    │

│ because it is being used by another process.                                 │

│ 00:00:09 #46 [Debug] _3                                                      │

│ 00:00:09 #47 [Debug] 5                                                       │

│ 00:00:09 #48 [Debug] 6                                                       │

│ 00:00:09 #49 [Debug] 7                                                       │

│ 00:00:09 #50 [Debug] 8                                                       │

│ 128                                                                          │

│ 128                                                                          │

│ 128                                                                          │

│ 0                                                                            │

│ 0                                                                            │

│ 0                                                                            │

│ 0                                                                            │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## watchDirectory                                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

[[<RequireQualifiedAccess>]]

type FileSystemChangeType =

    | Failure

    | Changed

    | Created

    | Deleted

    | Renamed



[[<RequireQualifiedAccess>]]

type FileSystemChange =

    | Failure of exn: exn

    | Changed of path: string * content: string option

    | Created of path: string * content: string option

    | Deleted of path: string

    | Renamed of oldPath: string * (string * string option)





let inline watchDirectoryWithFilter filter shouldReadContent path =

    let fullPath = path |> System.IO.Path.GetFullPath

    let getLocals () = $"filter: {filter} / {getLocals ()}"



    let watcher =

        new System.IO.FileSystemWatcher (

            Path = fullPath,

            NotifyFilter = filter,

            EnableRaisingEvents = true,

            IncludeSubdirectories = true

        )



    let inline getEventPath (path : string) =

        path |> String.trim |> String.replace fullPath "" |> String.trimStart 

[[| '/'; '\\' |]]



    let inline ticks () =

        System.DateTime.UtcNow.Ticks



    let changedStream =

        AsyncSeq.subscribeEvent

            watcher.Changed

            (fun event ->

                ticks (),

                [[ FileSystemChange.Changed (getEventPath event.FullPath, None) 

]]

            )



    let deletedStream =

        AsyncSeq.subscribeEvent

            watcher.Deleted

            (fun event ->

                ticks (),

                [[ FileSystemChange.Deleted (getEventPath event.FullPath) ]]

            )



    let createdStream =

        AsyncSeq.subscribeEvent

            watcher.Created

            (fun event ->

                let path = getEventPath event.FullPath

                ticks (), [[

                    FileSystemChange.Created (path, None)

                    if Runtime.isWindows () then

                        FileSystemChange.Changed (path, None)

                ]])



    let renamedStream =

        AsyncSeq.subscribeEvent

            watcher.Renamed

            (fun event ->

                ticks (), [[

                    FileSystemChange.Renamed (

                        getEventPath event.OldFullPath,

                        (getEventPath event.FullPath, None)

                    )

                ]]

            )



    let failureStream =

        AsyncSeq.subscribeEvent

            watcher.Error

            (fun event -> ticks (), [[ FileSystemChange.Failure 

(event.GetException ()) ]])



    let stream =

        [[

            changedStream

            deletedStream

            createdStream

            renamedStream

            failureStream

        ]]

        |> FSharp.Control.AsyncSeq.mergeAll

        |> FSharp.Control.AsyncSeq.map (fun (t, events) ->

            events

            |> List.fold

                (fun (i, events) event ->

                    i + 1L,

                    (t + i, event) :: events)

                (0L, [[]])

            |> snd

            |> List.rev

        )

        |> FSharp.Control.AsyncSeq.concatSeq

        |> FSharp.Control.AsyncSeq.mapAsyncParallel (fun (t, event) -> async {

            match shouldReadContent event, event with

            | true, FileSystemChange.Changed (path, _) ->

                do! Async.Sleep 5

                let! content = fullPath </> path |> readAllTextRetryAsync

                return t, FileSystemChange.Changed (path, content)

            | true, FileSystemChange.Created (path, _) ->

                do! Async.Sleep 5

                let! content = fullPath </> path |> readAllTextRetryAsync

                return t, FileSystemChange.Created (path, content)

            | true, FileSystemChange.Renamed (oldPath, (newPath, _)) ->

                let! content = fullPath </> newPath |> readAllTextRetryAsync

                return t, FileSystemChange.Renamed (oldPath, (newPath, content))

            | _ -> return t, event

        })



    let disposable =

        newDisposable (fun () ->

            trace Debug (fun () -> "watchWithFilter / Disposing watch stream") 

getLocals

            watcher.EnableRaisingEvents <- false

            watcher.Dispose ()

        )



    stream, disposable



let inline watchDirectory path =

    watchDirectoryWithFilter

        (System.IO.NotifyFilters.FileName

        // ||| System.IO.NotifyFilters.DirectoryName

        // ||| System.IO.NotifyFilters.Attributes

        //// ||| System.IO.NotifyFilters.Size

        ||| System.IO.NotifyFilters.LastWrite

        //// ||| System.IO.NotifyFilters.LastAccess

        // ||| System.IO.NotifyFilters.CreationTime

        // ||| System.IO.NotifyFilters.Security

        )

        path



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### testEventsRaw (test)                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline testEventsRaw

    (watchFn : (_ -> bool) -> string -> FSharp.Control.AsyncSeq<int64 * 

FileSystemChange> * IDisposable)

    write

    =

    let tempDirectory = createTempDirectory ()

    let stream, disposable = watchFn (fun _ -> true) tempDirectory



    let events = System.Collections.Concurrent.ConcurrentBag ()



    let inline iter () =

        stream

        |> FSharp.Control.AsyncSeq.iterAsyncParallel (fun event -> async { 

events.Add event })



    let run = async {

        let! _ = iter () |> Async.StartChild

        do! Async.Sleep 250

        return! write tempDirectory

    }



    try

        run

        |> Async.runWithTimeout 60000

        |> _equal (Some ())

    finally

        disposable.Dispose ()

        deleteDirectoryAsync tempDirectory |> Async.Ignore |> 

Async.RunSynchronously



    let eventsLog =

        events

        |> Seq.toList

        |> List.sortBy fst

        |> List.fold

            (fun (prev, acc) (ticks, event) ->

                ticks, (ticks, (if prev = 0L then 0L else ticks - prev), event) 

:: acc

            )

            (0L, [[]])

        |> snd

        |> List.rev

        |> List.map (fun (diff, n, event) ->

            let text = $"{n} / {diff} / {event}"

            if text |> String.length <= 100

            then text

            else text |> String.substring 0 100 |> String.replace "\n" ""

        )

        |> String.concat "\n"

    let getLocals () = $"eventsLog: \n{eventsLog} / {getLocals ()}"

    trace Debug (fun () -> "testEventsRaw") getLocals



    events

    |> Seq.toList

    |> List.sortBy fst

    |> List.map snd

    |> List.fold

        (fun acc event ->

            match acc, event with

            | FileSystemChange.Changed (lastPath, Some lastContent) as lastEvent

:: acc,

                FileSystemChange.Changed (path, Some content)

                when lastPath = path && content |> String.startsWith lastContent

                ->

                event :: acc

            | _ -> event :: acc

        )

        [[]]

    |> List.rev



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ #### fast (test)                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline write path = async {

    let n = 2



    for i = 1 to n do

        do! $"a{i}" |> writeAllTextAsync (path </> $"file{i}.txt")



    do! Async.Sleep 250



    for i = 1 to n do

        do! $"b{i}" |> writeAllTextAsync (path </> $"file{i}.txt")



    do! Async.Sleep 250



    for i = 1 to n do

        do! path </> $"file{i}.txt" |> moveFileAsync (path </> $"file_{i}.txt") 

|> Async.Ignore



    do! Async.Sleep 250



    for i = 1 to n do

        do! $"c{i}" |> writeAllTextAsync (path </> $"file_{i}.txt")



    do! Async.Sleep 250



    for i = 1 to n do

        do! deleteFileAsync (path </> $"file_{i}.txt") |> Async.Ignore



    do! Async.Sleep 250

}



let inline run () =

    let events = testEventsRaw watchDirectory write



    events

    |> _sequenceEqual [[

        FileSystemChange.Created ("file1.txt", Some "a1")

        FileSystemChange.Changed ("file1.txt", Some "a1")

        FileSystemChange.Created ("file2.txt", Some "a2")

        FileSystemChange.Changed ("file2.txt", Some "a2")



        FileSystemChange.Changed ("file1.txt", Some "b1")

        FileSystemChange.Changed ("file2.txt", Some "b2")



        FileSystemChange.Renamed ("file1.txt", ("file_1.txt", Some "b1"))

        FileSystemChange.Renamed ("file2.txt", ("file_2.txt", Some "b2"))



        FileSystemChange.Changed ("file_1.txt", Some "c1")

        FileSystemChange.Changed ("file_2.txt", Some "c2")



        FileSystemChange.Deleted "file_1.txt"

        FileSystemChange.Deleted "file_2.txt"

    ]]



run

|> retryFn 3

|> _equal (Some ())



╭─[ 5.09s - stdout ]───────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│ 00:00:16 #51 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ 00:00:16 #52 [Debug] testEventsRaw / eventsLog:                              │

│ 0 / 638341952743502646 / Created ("file1.txt", Some "a1")                    │

│ 1 / 638341952743502647 / Changed ("file1.txt", Some "a1")                    │

│ 64850 / 638341952743567497 / Changed ("file1.txt", Some "a1")                │

│ 4170 / 638341952743571667 / Created ("file2.txt", Some "a2")                 │

│ 1 / 638341952743571668 / Changed ("file2.txt", Some "a2")                    │

│ 270 / 638341952743571938 / Changed ("file2.txt", Some "a2")                  │

│ 2478395 / 638341952746050333 / Changed ("file1.txt", Some "b1")              │

│ 2256 / 638341952746052589 / Changed ("file1.txt", Some "b1")                 │

│ 6795 / 638341952746059384 / Changed ("file2.txt", Some "b2")                 │

│ 1677 / 638341952746061061 / Changed ("file2.txt", Some "b2")                 │

│ 2614640 / 638341952748675701 / Renamed ("file1.txt", ("file_1.txt", Some     │

│ "b1"))                                                                       │

│ 11567 / 638341952748687268 / Renamed ("file2.txt", ("file_2.txt", Some       │

│ "b2"))                                                                       │

│ 2566230 / 638341952751253498 / Changed ("file_1.txt", Some "c1")             │

│ 2592 / 638341952751256090 / Changed ("file_1.txt", Some "c1")                │

│ 13674 / 638341952751269764 / Changed ("file_2.txt", Some "c2")               │

│ 2617 / 638341952751272381 / Changed ("file_2.txt", Some "c2")                │

│ 2479380 / 638341952753751761 / Deleted "file_1.txt"                          │

│ 2153 / 638341952753753914 / Deleted "file_2.txt"                             │

│ FSharpList<FileSystemChange>                                                 │

│       - path: file1.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: a1                                                          │

│       - path: file1.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: a1                                                          │

│       - path: file2.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: a2                                                          │

│       - path: file2.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: a2                                                          │

│       - path: file1.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: b1                                                          │

│       - path: file2.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: b2                                                          │

│       - oldPath: file1.txt                                                   │

│         Item2:         - file_1.txt                                          │

│         - FSharpOption<String>                                               │

│             Value: b1                                                        │

│       - oldPath: file2.txt                                                   │

│         Item2:         - file_2.txt                                          │

│         - FSharpOption<String>                                               │

│             Value: b2                                                        │

│       - path: file_1.txt                                                     │

│         content: FSharpOption<String>                                        │

│           Value: c1                                                          │

│       - path: file_2.txt                                                     │

│         content: FSharpOption<String>                                        │

│           Value: c2                                                          │

│       - path: file_1.txt                                                     │

│       - path: file_2.txt                                                     │

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ #### slow (test)                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline write path = async {

    let n = 2



    let contents =

        [[ 1 .. n ]]

        |> List.map (string >> String.replicate 1_000_000)



    for i = 1 to n do

        do! $"{contents.[[i - 1]]}a" |> writeAllTextAsync (path </> 

$"file{i}.txt")



    do! Async.Sleep 1500



    for i = 1 to n do

        do! $"{contents.[[i - 1]]}b" |> writeAllTextAsync (path </> 

$"file{i}.txt")



    do! Async.Sleep 1500



    for i = 1 to n do

        do! path </> $"file{i}.txt" |> moveFileAsync (path </> $"file_{i}.txt") 

|> Async.Ignore



    do! Async.Sleep 1500



    for i = 1 to n do

        do! $"{contents.[[i - 1]]}c" |> writeAllTextAsync (path </> 

$"file_{i}.txt")



    do! Async.Sleep 1500



    for i = 1 to n do

        do! deleteFileAsync (path </> $"file_{i}.txt") |> Async.Ignore



    do! Async.Sleep 1500

}



let inline run () =

    let events =

        testEventsRaw watchDirectory write

        |> List.map (function

            | FileSystemChange.Changed (path, Some content) ->

                FileSystemChange.Changed (path, content |> Seq.distinct |> 

Seq.map string |> String.concat "" |> Some)

            | FileSystemChange.Created (path, Some content) ->

                FileSystemChange.Created (path, content |> Seq.distinct |> 

Seq.map string |> String.concat "" |> Some)

            | FileSystemChange.Renamed (oldPath, (newPath, Some content)) ->

                FileSystemChange.Renamed (

                    oldPath,

                    (newPath, content |> Seq.distinct |> Seq.map string |> 

String.concat "" |> Some)

                )

            | event -> event

        )



    events

    |> _sequenceEqual [[

        FileSystemChange.Created ("file1.txt", Some "1a")

        FileSystemChange.Changed ("file1.txt", Some "1a")

        FileSystemChange.Created ("file2.txt", Some "2a")

        FileSystemChange.Changed ("file2.txt", Some "2a")



        FileSystemChange.Changed ("file1.txt", Some "1b")

        FileSystemChange.Changed ("file2.txt", Some "2b")



        FileSystemChange.Renamed ("file1.txt", ("file_1.txt", Some "1b"))

        FileSystemChange.Renamed ("file2.txt", ("file_2.txt", Some "2b"))



        FileSystemChange.Changed ("file_1.txt", Some "1c")

        FileSystemChange.Changed ("file_2.txt", Some "2c")



        FileSystemChange.Deleted "file_1.txt"

        FileSystemChange.Deleted "file_2.txt"

    ]]



run

|> retryFn 5

|> _equal (Some ())



╭─[ 12.96s - stdout ]──────────────────────────────────────────────────────────╮

│ 00:00:22 #53 [Debug] watchWithFilter / readContent / retry: 0 / ex:          │

│ System.AggregateException: One or more errors occurred. (The process cannot  │

│ access the file                                                              │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1254-4027-2706-2acd │

│ cf0c506f\file1.txt' because it is being used by another process.)            │

│ 00:00:22 #54 [Debug] watchWithFilter / readContent / retry: 0 / ex:          │

│ System.AggregateException: One or more errors occurred. (The process cannot  │

│ access the file                                                              │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1254-4027-2706-2acd │

│ cf0c506f\file2.txt' because it is being used by another process.)            │

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│ 00:00:28 #55 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ 00:00:29 #56 [Debug] testEventsRaw / eventsLog:                              │

│ 0 / 638341952805298737 / Created  ("file1.txt",   Some                       │

│ "1111111111111111111111111111111111111                                       │

│ 1 / 638341952805298738 / Changed  ("file1.txt",   Some                       │

│ "1111111111111111111111111111111111111                                       │

│ 96628 / 638341952805395366 / Changed  ("file1.txt",   Some                   │

│ "111111111111111111111111111111111                                           │

│ 28221 / 638341952805423587 / Created  ("file2.txt",   Some                   │

│ "222222222222222222222222222222222                                           │

│ 1 / 638341952805423588 / Changed  ("file2.txt",   Some                       │

│ "2222222222222222222222222222222222222                                       │

│ 80209 / 638341952805503797 / Changed  ("file2.txt",   Some                   │

│ "222222222222222222222222222222222                                           │

│ 15188330 / 638341952820692127 / Changed  ("file1.txt",   Some                │

│ "111111111111111111111111111111                                              │

│ 240488 / 638341952820932615 / Changed  ("file1.txt",   Some                  │

│ "11111111111111111111111111111111                                            │

│ 400135 / 638341952821332750 / Changed  ("file2.txt",   Some                  │

│ "22222222222222222222222222222222                                            │

│ 99674 / 638341952821432424 / Changed  ("file2.txt",   Some                   │

│ "222222222222222222222222222222222                                           │

│ 15118925 / 638341952836551349 / Renamed  ("file1.txt",   ("file_1.txt",      │

│ Some      "1111111111                                                        │

│ 17897 / 638341952836569246 / Renamed  ("file2.txt",   ("file_2.txt",    Some │

│ "2222222222222                                                               │

│ 15155884 / 638341952851725130 / Changed  ("file_1.txt",   Some               │

│ "11111111111111111111111111111                                               │

│ 63727 / 638341952851788857 / Changed  ("file_1.txt",   Some                  │

│ "11111111111111111111111111111111                                            │

│ 48576 / 638341952851837433 / Changed  ("file_2.txt",   Some                  │

│ "22222222222222222222222222222222                                            │

│ 89560 / 638341952851926993 / Changed  ("file_2.txt",   Some                  │

│ "22222222222222222222222222222222                                            │

│ 15029457 / 638341952866956450 / Deleted "file_1.txt"                         │

│ 10275 / 638341952866966725 / Deleted "file_2.txt"                            │

│ FSharpList<FileSystemChange>                                                 │

│       - path: file1.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: 1a                                                          │

│       - path: file1.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: 1a                                                          │

│       - path: file2.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: 2a                                                          │

│       - path: file2.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: 2a                                                          │

│       - path: file1.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: 1b                                                          │

│       - path: file2.txt                                                      │

│         content: FSharpOption<String>                                        │

│           Value: 2b                                                          │

│       - oldPath: file1.txt                                                   │

│         Item2:         - file_1.txt                                          │

│         - FSharpOption<String>                                               │

│             Value: 1b                                                        │

│       - oldPath: file2.txt                                                   │

│         Item2:         - file_2.txt                                          │

│         - FSharpOption<String>                                               │

│             Value: 2b                                                        │

│       - path: file_1.txt                                                     │

│         content: FSharpOption<String>                                        │

│           Value: 1c                                                          │

│       - path: file_2.txt                                                     │

│         content: FSharpOption<String>                                        │

│           Value: 2c                                                          │

│       - path: file_1.txt                                                     │

│       - path: file_2.txt                                                     │

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ### testEventsSorted (test)                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline sortEvent event =

    match event with

    | FileSystemChange.Failure _ -> 0

    | FileSystemChange.Created _ -> 1

    | FileSystemChange.Changed _ -> 2

    | FileSystemChange.Renamed (_oldPath, _) -> 3

    | FileSystemChange.Deleted _ -> 4



let inline formatEvents events =

    events

    |> Seq.toList

    |> List.sortBy (snd >> sortEvent)

    |> List.choose (fun (ticks, event) ->

        match event with

        | FileSystemChange.Failure _ ->

            None

        | FileSystemChange.Changed (path, _) ->

            Some (ticks, System.IO.Path.GetFileName path, nameof 

FileSystemChangeType.Changed)

        | FileSystemChange.Created (path, _) ->

            Some (ticks, System.IO.Path.GetFileName path, nameof 

FileSystemChangeType.Created)

        | FileSystemChange.Deleted path ->

            Some (ticks, System.IO.Path.GetFileName path, nameof 

FileSystemChangeType.Deleted)

        | FileSystemChange.Renamed (_oldPath, (path, _)) ->

            Some (ticks, System.IO.Path.GetFileName path, nameof 

FileSystemChangeType.Renamed)

    )

    |> List.sortBy (fun (_, path, _) -> path)

    |> List.distinctBy (fun (_, path, event) -> path, event)



let inline testEventsSorted

    (watchFn : string -> FSharp.Control.AsyncSeq<int64 * FileSystemChange> * 

IDisposable)

    write

    =

    let path = createTempDirectory ()

    let stream, disposable = watchFn path



    let events = System.Collections.Concurrent.ConcurrentBag ()



    let inline iter () =

        stream

        |> FSharp.Control.AsyncSeq.iterAsyncParallel (fun event -> async { 

events.Add event })



    let run = async {

        let! _ = iter () |> Async.StartChild

        do! Async.Sleep 250

        return! write path

    }



    try

        run

        |> Async.runWithTimeout 5000

        |> _equal (Some ())

    finally

        disposable.Dispose ()

        deleteDirectoryAsync path |> Async.Ignore |> Async.RunSynchronously



    let events = formatEvents events



    let eventMap =

        events

        |> List.map (fun (ticks, path, event) -> path, (event, ticks))

        |> List.groupBy fst

        |> List.map (fun (path, events) ->

            let event, _ticks =

                events

                |> List.map snd

                |> List.sortByDescending snd

                |> List.head



            path, event

        )

        |> Map.ofList



    let eventList =

        events

        |> List.map (fun (_ticks, path, event) -> path, event)



    eventMap, eventList



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ #### create and delete (test)                                                │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline write path = async {

    let n = 3



    for i = 1 to n do

        do! $"{i}" |> writeAllTextAsync (path </> $"file{i}.txt")



    for i = 1 to n do

        do! deleteFileAsync (path </> $"file{i}.txt") |> Async.Ignore

    

    do! Async.Sleep 150

}



let inline run () =

    let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))

write



    [[

        "file1.txt", nameof FileSystemChangeType.Created

        "file1.txt", nameof FileSystemChangeType.Changed

        "file1.txt", nameof FileSystemChangeType.Deleted



        "file2.txt", nameof FileSystemChangeType.Created

        "file2.txt", nameof FileSystemChangeType.Changed

        "file2.txt", nameof FileSystemChangeType.Deleted



        "file3.txt", nameof FileSystemChangeType.Created

        "file3.txt", nameof FileSystemChangeType.Changed

        "file3.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> _sequenceEqual eventList



    [[

        "file1.txt", nameof FileSystemChangeType.Deleted

        "file2.txt", nameof FileSystemChangeType.Deleted

        "file3.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> Map.ofList

    |> _sequenceEqual eventMap



run

|> retryFn 3

|> _equal (Some ())



╭─[ 3.57s - stdout ]───────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│ 00:00:33 #57 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ FSharpList<Tuple<String,String>>                                             │

│ ( file1.txt, Created )                                                       │

│ ( file1.txt, Changed )                                                       │

│ ( file1.txt, Deleted )                                                       │

│ ( file2.txt, Created )                                                       │

│ ( file2.txt, Changed )                                                       │

│ ( file2.txt, Deleted )                                                       │

│ ( file3.txt, Created )                                                       │

│ ( file3.txt, Changed )                                                       │

│ ( file3.txt, Deleted )                                                       │

│ FSharpMap<String,String>                                                     │

│       - Key: file1.txt                                                       │

│         Value: Deleted                                                       │

│       - Key: file2.txt                                                       │

│         Value: Deleted                                                       │

│       - Key: file3.txt                                                       │

│         Value: Deleted                                                       │

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ #### change (test)                                                           │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline write path = async {

    let n = 2



    for i = 1 to n do

        do! $"{i}" |> writeAllTextAsync (path </> $"file{i}.txt")



    for i = 1 to n do

        do! "" |> writeAllTextAsync (path </> $"file{i}.txt")



    for i = 1 to n do

        do! deleteFileAsync (path </> $"file{i}.txt") |> Async.Ignore

    

    do! Async.Sleep 150

}



let inline run () =

    let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))

write



    [[

        "file1.txt", nameof FileSystemChangeType.Created

        "file1.txt", nameof FileSystemChangeType.Changed

        "file1.txt", nameof FileSystemChangeType.Deleted



        "file2.txt", nameof FileSystemChangeType.Created

        "file2.txt", nameof FileSystemChangeType.Changed

        "file2.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> _sequenceEqual eventList



    [[

        "file1.txt", nameof FileSystemChangeType.Deleted

        "file2.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> Map.ofList

    |> _sequenceEqual eventMap



run

|> retryFn 3

|> _equal (Some ())



╭─[ 4.04s - stdout ]───────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│ 00:00:37 #58 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ FSharpList<Tuple<String,String>>                                             │

│ ( file1.txt, Created )                                                       │

│ ( file1.txt, Changed )                                                       │

│ ( file1.txt, Deleted )                                                       │

│ ( file2.txt, Created )                                                       │

│ ( file2.txt, Changed )                                                       │

│ ( file2.txt, Deleted )                                                       │

│ FSharpMap<String,String>                                                     │

│       - Key: file1.txt                                                       │

│         Value: Deleted                                                       │

│       - Key: file2.txt                                                       │

│         Value: Deleted                                                       │

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ #### rename (test)                                                           │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline write path = async {

    let n = 2



    for i = 1 to n do

        do! $"{i}" |> writeAllTextAsync (path </> $"file{i}.txt")



    for i = 1 to n do

        do! path </> $"file{i}.txt" |> moveFileAsync (path </> $"file_{i}.txt") 

|> Async.Ignore



    for i = 1 to n do

        do! deleteFileAsync (path </> $"file_{i}.txt") |> Async.Ignore

    

    do! Async.Sleep 150

}



let inline run () =

    let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))

write



    [[

        "file1.txt", nameof FileSystemChangeType.Created

        "file1.txt", nameof FileSystemChangeType.Changed

        "file2.txt", nameof FileSystemChangeType.Created

        "file2.txt", nameof FileSystemChangeType.Changed



        "file_1.txt", nameof FileSystemChangeType.Renamed

        "file_1.txt", nameof FileSystemChangeType.Deleted



        "file_2.txt", nameof FileSystemChangeType.Renamed

        "file_2.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> _sequenceEqual eventList



    [[

        "file1.txt", nameof FileSystemChangeType.Changed

        "file2.txt", nameof FileSystemChangeType.Changed

        "file_1.txt", nameof FileSystemChangeType.Deleted

        "file_2.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> Map.ofList

    |> _sequenceEqual eventMap



run

|> retryFn 3

|> _equal (Some ())



╭─[ 4.88s - stdout ]───────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│ 00:00:42 #59 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ FSharpList<Tuple<String,String>>                                             │

│ ( file1.txt, Created )                                                       │

│ ( file1.txt, Changed )                                                       │

│ ( file2.txt, Created )                                                       │

│ ( file2.txt, Changed )                                                       │

│ ( file_1.txt, Renamed )                                                      │

│ ( file_1.txt, Deleted )                                                      │

│ ( file_2.txt, Renamed )                                                      │

│ ( file_2.txt, Deleted )                                                      │

│ FSharpMap<String,String>                                                     │

│       - Key: file1.txt                                                       │

│         Value: Changed                                                       │

│       - Key: file2.txt                                                       │

│         Value: Changed                                                       │

│       - Key: file_1.txt                                                      │

│         Value: Deleted                                                       │

│       - Key: file_2.txt                                                      │

│         Value: Deleted                                                       │

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ #### full (test)                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let inline write path = async {

    let n = 2



    for i = 1 to n do

        do! $"{i}" |> writeAllTextAsync (path </> $"file{i}.txt")



    for i = 1 to n do

        do! "" |> writeAllTextAsync (path </> $"file{i}.txt")



    for i = 1 to n do

        do! path </> $"file{i}.txt" |> moveFileAsync (path </> $"file_{i}.txt") 

|> Async.Ignore



    for i = 1 to n do

        do! $"{i}" |> writeAllTextAsync (path </> $"file_{i}.txt")



    for i = 1 to n do

        do! deleteFileAsync (path </> $"file_{i}.txt") |> Async.Ignore

    

    do! Async.Sleep 150

}



let inline run () =

    let eventMap, eventList = testEventsSorted (watchDirectory (fun _ -> false))

write



    [[

        "file1.txt", nameof FileSystemChangeType.Created

        "file1.txt", nameof FileSystemChangeType.Changed

        "file2.txt", nameof FileSystemChangeType.Created

        "file2.txt", nameof FileSystemChangeType.Changed



        "file_1.txt", nameof FileSystemChangeType.Changed

        "file_1.txt", nameof FileSystemChangeType.Renamed

        "file_1.txt", nameof FileSystemChangeType.Deleted



        "file_2.txt", nameof FileSystemChangeType.Changed

        "file_2.txt", nameof FileSystemChangeType.Renamed

        "file_2.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> _sequenceEqual eventList



    [[

        "file1.txt", nameof FileSystemChangeType.Changed

        "file2.txt", nameof FileSystemChangeType.Changed

        "file_1.txt", nameof FileSystemChangeType.Deleted

        "file_2.txt", nameof FileSystemChangeType.Deleted

    ]]

    |> Map.ofList

    |> _sequenceEqual eventMap



run

|> retryFn 3

|> _equal (Some ())



╭─[ 5.59s - stdout ]───────────────────────────────────────────────────────────╮

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│ 00:00:47 #60 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ FSharpList<Tuple<String,String>>                                             │

│ ( file1.txt, Created )                                                       │

│ ( file1.txt, Changed )                                                       │

│ ( file2.txt, Created )                                                       │

│ ( file2.txt, Changed )                                                       │

│ ( file_1.txt, Changed )                                                      │

│ ( file_1.txt, Renamed )                                                      │

│ ( file_1.txt, Deleted )                                                      │

│ ( file_2.txt, Changed )                                                      │

│ ( file_2.txt, Renamed )                                                      │

│ ( file_2.txt, Deleted )                                                      │

│ FSharpMap<String,String>                                                     │

│       - Key: file1.txt                                                       │

│         Value: Changed                                                       │

│       - Key: file2.txt                                                       │

│         Value: Changed                                                       │

│       - Key: file_1.txt                                                      │

│         Value: Deleted                                                       │

│       - Key: file_2.txt                                                      │

│         Value: Deleted                                                       │

│ FSharpOption<Unit>                                                           │

│       Value: <null>                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook FileSystem.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 464684 bytes to FileSystem.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Networking (Polyglot)                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/Runtime.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## testPortOpen                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline testPortOpen port = async {

    let! ct = Async.CancellationToken

    use client = new System.Net.Sockets.TcpClient ()

    try

        do! client.ConnectAsync ("127.0.0.1", port, ct) |> 

Async.awaitValueTaskUnit

        return true

    with ex ->

        trace Verbose (fun () -> $"testPortOpen / ex: {ex |> printException}") 

getLocals

        return false

}



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



testPortOpen 65536

|> Async.runWithTimeout 120

|> _equal (Some false)



╭─[ 179.77ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Verbose] testPortOpen / ex: System.ArgumentOutOfRangeException: │

│ Specified argument was out of the range of valid values. (Parameter 'port')  │

│ FSharpOption<Boolean>                                                        │

│       Value: False                                                           │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline testPortOpenTimeout timeout port = async {

    let! result =

        testPortOpen port

        |> Async.runWithTimeoutAsync timeout

    return

        match result with

        | None -> false

        | Some result -> result

}



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



testPortOpenTimeout 120 65535

|> Async.RunSynchronously

|> _equal false



╭─[ 252.43ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:00 #2 [Debug] runWithTimeoutAsync / timeout: 120                       │

│ False                                                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## waitForPortAccess                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline waitForPortAccess timeout status port =

    let rec loop retry = async {

        let! isPortOpen =

            match timeout with

            | None -> testPortOpen port

            | Some timeout -> testPortOpenTimeout timeout port

        if isPortOpen = status

        then return retry

        else

            if retry % 100 = 0 then

                let getLocals () = $"port: {port} / retry: {retry} / {getLocals 

()}"

                trace Verbose (fun () -> "waitForPortAccess") getLocals

            do! Async.Sleep 10

            return! loop (retry + 1)

    }

    loop 0



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let port = 5000



let inline lockPort () = async {

    trace Debug (fun () -> "_1") getLocals

    do! Async.Sleep 5000

    use listener = new System.Net.Sockets.TcpListener 

(System.Net.IPAddress.Parse "127.0.0.1", port)

    trace Debug (fun () -> "_2") getLocals

    listener.Start ()

    trace Debug (fun () -> "_3") getLocals

    do! Async.Sleep 2000

    trace Debug (fun () -> "_4") getLocals

    listener.Stop ()

    trace Debug (fun () -> "_5") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    let! child = lockPort () |> Async.StartChild

    trace Debug (fun () -> "2") getLocals

    do! Async.Sleep 1

    trace Debug (fun () -> "3") getLocals

    let! retries1 = waitForPortAccess None true port

    trace Debug (fun () -> "4") getLocals

    let! retries2 = waitForPortAccess None false port

    trace Debug (fun () -> "5") getLocals

    do! child

    trace Debug (fun () -> "6") getLocals

    return retries1, retries2

}

|> Async.runWithTimeout 20000

|> function

    | Some (retries1, retries2) ->

        retries1

        |> _isBetween

            (if Runtime.isWindows () then 2 else 2)

            (if Runtime.isWindows () then 5 else 1500)



        retries2

        |> _isBetween

            (if Runtime.isWindows () then 80 else 80)

            (if Runtime.isWindows () then 150 else 600)



        true

    | _ -> false

|> _equal true



╭─[ 9.50s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:01 #3 [Debug] 1                                                        │

│ 00:00:01 #4 [Debug] _1                                                       │

│ 00:00:01 #5 [Debug] 2                                                        │

│ 00:00:01 #6 [Debug] 3                                                        │

│ 00:00:03 #7 [Verbose] testPortOpen / ex: System.AggregateException: One or   │

│ more errors occurred. (No connection could be made because the target        │

│ machine actively refused it.)                                                │

│ 00:00:03 #8 [Verbose] waitForPortAccess / port: 5000 / retry: 0              │

│ 00:00:05 #9 [Verbose] testPortOpen / ex: System.AggregateException: One or   │

│ more errors occurred. (No connection could be made because the target        │

│ machine actively refused it.)                                                │

│ 00:00:06 #10 [Debug] _2                                                      │

│ 00:00:06 #11 [Debug] _3                                                      │

│ 00:00:06 #12 [Debug] 4                                                       │

│ 00:00:06 #13 [Verbose] waitForPortAccess / port: 5000 / retry: 0             │

│ 00:00:07 #14 [Verbose] waitForPortAccess / port: 5000 / retry: 100           │

│ 00:00:08 #15 [Debug] _4                                                      │

│ 00:00:08 #16 [Debug] _5                                                      │

│ 00:00:10 #17 [Verbose] testPortOpen / ex: System.AggregateException: One or  │

│ more errors occurred. (No connection could be made because the target        │

│ machine actively refused it.)                                                │

│ 00:00:10 #18 [Debug] 5                                                       │

│ 00:00:10 #19 [Debug] 6                                                       │

│ 2                                                                            │

│ 2                                                                            │

│ 2                                                                            │

│ 123                                                                          │

│ 123                                                                          │

│ 123                                                                          │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let port = 5000



let inline lockPort () = async {

    trace Debug (fun () -> "_1") getLocals

    do! Async.Sleep 500

    use listener = new System.Net.Sockets.TcpListener 

(System.Net.IPAddress.Parse "127.0.0.1", port)

    trace Debug (fun () -> "_2") getLocals

    listener.Start ()

    trace Debug (fun () -> "_3") getLocals

    do! Async.Sleep 200

    trace Debug (fun () -> "_4") getLocals

    listener.Stop ()

    trace Debug (fun () -> "_5") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    let! child = lockPort () |> Async.StartChild

    trace Debug (fun () -> "2") getLocals

    do! Async.Sleep 1

    trace Debug (fun () -> "3") getLocals

    let! retries1 = waitForPortAccess (Some 60) true port

    trace Debug (fun () -> "4") getLocals

    let! retries2 = waitForPortAccess (Some 60) false port

    trace Debug (fun () -> "5") getLocals

    do! child

    trace Debug (fun () -> "6") getLocals

    return retries1, retries2

}

|> Async.runWithTimeout 2000

|> function

    | Some (retries1, retries2) ->

        retries1

        |> _isBetween

            (if Runtime.isWindows () then 4 else 2)

            (if Runtime.isWindows () then 15 else 150)



        retries2

        |> _isBetween

            (if Runtime.isWindows () then 5 else 0)

            (if Runtime.isWindows () then 20 else 60)



        true

    | _ -> false

|> _equal true



╭─[ 1.46s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:10 #20 [Debug] 1                                                       │

│ 00:00:10 #21 [Debug] 2                                                       │

│ 00:00:10 #22 [Debug] _1                                                      │

│ 00:00:10 #23 [Debug] 3                                                       │

│ 00:00:10 #24 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:10 #25 [Verbose] waitForPortAccess / port: 5000 / retry: 0             │

│ 00:00:10 #26 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:11 #27 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:11 #28 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:11 #29 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:11 #30 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:11 #31 [Debug] _2                                                      │

│ 00:00:11 #32 [Debug] _3                                                      │

│ 00:00:11 #33 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:11 #34 [Debug] 4                                                       │

│ 00:00:11 #35 [Verbose] waitForPortAccess / port: 5000 / retry: 0             │

│ 00:00:11 #36 [Debug] _4                                                      │

│ 00:00:11 #37 [Debug] _5                                                      │

│ 00:00:11 #38 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:11 #39 [Debug] 5                                                       │

│ 00:00:11 #40 [Debug] 6                                                       │

│ 7                                                                            │

│ 7                                                                            │

│ 7                                                                            │

│ 9                                                                            │

│ 9                                                                            │

│ 9                                                                            │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## getAvailablePort                                                          │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getAvailablePort timeout initialPort =

    let rec loop port = async {

        let! isPortOpen =

            match timeout with

            | None -> testPortOpen port

            | Some timeout -> testPortOpenTimeout timeout port

        if not isPortOpen

        then return port

        else return! loop (port + 1)

    }

    loop initialPort



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let port = 5000



let inline lockPorts () = async {

    trace Debug (fun () -> "_1") getLocals

    use listener1 = new System.Net.Sockets.TcpListener 

(System.Net.IPAddress.Parse "127.0.0.1", port)

    use listener2 = new System.Net.Sockets.TcpListener 

(System.Net.IPAddress.Parse "127.0.0.1", port + 1)

    trace Debug (fun () -> "_2") getLocals

    listener1.Start ()

    listener2.Start ()

    trace Debug (fun () -> "_3") getLocals

    do! Async.Sleep 4000

    trace Debug (fun () -> "_4") getLocals

    listener1.Stop ()

    listener2.Stop ()

    trace Debug (fun () -> "_5") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    let! child = lockPorts () |> Async.StartChild

    trace Debug (fun () -> "2") getLocals

    do! Async.Sleep 240

    trace Debug (fun () -> "3") getLocals

    let! availablePort = getAvailablePort None port

    trace Debug (fun () -> "4") getLocals

    let! retries = waitForPortAccess None false port

    trace Debug (fun () -> "5") getLocals

    do! child

    trace Debug (fun () -> "6") getLocals

    return availablePort, retries

}

|> Async.runWithTimeout 15000

|> function

    | Some (availablePort, retries) ->

        availablePort |> _equal (port + 2)



        retries

        |> _isBetween

            (if Runtime.isWindows () then 100 else 100)

            (if Runtime.isWindows () then 150 else 1200)



        true

    | _ -> false

|> _equal true



╭─[ 6.43s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:12 #41 [Debug] 1                                                       │

│ 00:00:12 #43 [Debug] _1                                                      │

│ 00:00:12 #42 [Debug] 2                                                       │

│ 00:00:12 #44 [Debug] _2                                                      │

│ 00:00:12 #45 [Debug] _3                                                      │

│ 00:00:12 #46 [Debug] 3                                                       │

│ 00:00:14 #47 [Verbose] testPortOpen / ex: System.AggregateException: One or  │

│ more errors occurred. (No connection could be made because the target        │

│ machine actively refused it.)                                                │

│ 00:00:14 #48 [Debug] 4                                                       │

│ 00:00:14 #49 [Verbose] waitForPortAccess / port: 5000 / retry: 0             │

│ 00:00:16 #50 [Verbose] waitForPortAccess / port: 5000 / retry: 100           │

│ 00:00:16 #51 [Debug] _4                                                      │

│ 00:00:16 #52 [Debug] _5                                                      │

│ 00:00:18 #53 [Verbose] testPortOpen / ex: System.AggregateException: One or  │

│ more errors occurred. (No connection could be made because the target        │

│ machine actively refused it.)                                                │

│ 00:00:18 #54 [Debug] 5                                                       │

│ 00:00:18 #55 [Debug] 6                                                       │

│ 5002                                                                         │

│ 111                                                                          │

│ 111                                                                          │

│ 111                                                                          │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let port = 5000



let inline lockPorts () = async {

    trace Debug (fun () -> "_1") getLocals

    use listener1 = new System.Net.Sockets.TcpListener 

(System.Net.IPAddress.Parse "127.0.0.1", port)

    use listener2 = new System.Net.Sockets.TcpListener 

(System.Net.IPAddress.Parse "127.0.0.1", port + 1)

    trace Debug (fun () -> "_2") getLocals

    listener1.Start ()

    listener2.Start ()

    trace Debug (fun () -> "_3") getLocals

    do! Async.Sleep 400

    trace Debug (fun () -> "_4") getLocals

    listener1.Stop ()

    listener2.Stop ()

    trace Debug (fun () -> "_5") getLocals

}



async {

    trace Debug (fun () -> "1") getLocals

    let! child = lockPorts () |> Async.StartChild

    trace Debug (fun () -> "2") getLocals

    do! Async.Sleep 240

    trace Debug (fun () -> "3") getLocals

    let! availablePort = getAvailablePort (Some 60) port

    trace Debug (fun () -> "4") getLocals

    let! retries = waitForPortAccess (Some 60) false port

    trace Debug (fun () -> "5") getLocals

    do! child

    trace Debug (fun () -> "6") getLocals

    return availablePort, retries

}

|> Async.runWithTimeout 1500

|> function

    | Some (availablePort, retries) ->

        availablePort |> _equal (port + 2)



        retries

        |> _isBetween

            (if Runtime.isWindows () then 2 else 1)

            (if Runtime.isWindows () then 10 else 120)



        true

    | _ -> false

|> _equal true



╭─[ 997.43ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:18 #56 [Debug] 1                                                       │

│ 00:00:18 #57 [Debug] 2                                                       │

│ 00:00:18 #58 [Debug] _1                                                      │

│ 00:00:18 #59 [Debug] _2                                                      │

│ 00:00:18 #60 [Debug] _3                                                      │

│ 00:00:19 #61 [Debug] 3                                                       │

│ 00:00:19 #62 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:19 #63 [Debug] 4                                                       │

│ 00:00:19 #64 [Verbose] waitForPortAccess / port: 5000 / retry: 0             │

│ 00:00:19 #65 [Debug] _4                                                      │

│ 00:00:19 #66 [Debug] _5                                                      │

│ 00:00:19 #67 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:19 #68 [Debug] 5                                                       │

│ 00:00:19 #69 [Debug] 6                                                       │

│ 5002                                                                         │

│ 3                                                                            │

│ 3                                                                            │

│ 3                                                                            │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Networking.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 324096 bytes to Networking.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Runtime (Polyglot)                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/AsyncSeq.fs

#!import ../../lib/fsharp/Runtime.fs

#!import ../../lib/fsharp/FileSystem.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module AsyncSeq =



    open Common



    /// ## subscribeEvent



    let inline subscribeEvent (event: IEvent<'H, 'A>) map =

        let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

        System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

        |> FSharp.Control.AsyncSeq.ofObservableBuffered



    let subscribeToken (token : System.Threading.CancellationToken) =

        let tcs = new System.Threading.Tasks.TaskCompletionSource ()

        System.Action tcs.SetResult |> token.Register |> ignore

        let start = System.DateTime.Now.Ticks

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun (...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module FileSystem =



    open Common



    /// ## Operators



    module Operators =

        let inline (</>) a b =

            System.IO.Path.Combine (a, b)



    open Operators



    /// ## createTempDirectoryName



    let inline createTempDirectoryName () =

        let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name



        System.IO.Path.GetTempPath ()

        </> $"!{root}"

        </> string (newGuidFromDateTime System.DateTime.Now)



    /// ## createTempDirectory



    let inline createTempDirectory () =

        let tempFolder = createTempDirectoryName ()

        let result = System.IO.Directory.CreateDirectory tempFolder



        if not result.Exists then

            let ge...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



open FileSystem.Operators



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## isWindows                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let isWindows =

    fun () ->

        System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

            System.Runtime.InteropServices.OSPlatform.Windows

    |> memoize



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



isWindows ()



╭─[ 70.58ms - return value ]───────────────────────────────────────────────────╮

│ <div class="dni-plaintext"><pre>True</pre></div><style>                      │

│ .dni-code-hint {                                                             │

│     font-style: italic;                                                      │

│     overflow: hidden;                                                        │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview {                                                              │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview td {                                                           │

│     vertical-align: top;                                                     │

│     text-align: start;                                                       │

│ }                                                                            │

│ details.dni-treeview {                                                       │

│     padding-left: 1em;                                                       │

│ }                                                                            │

│ table td {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ table tr {                                                                   │

│     vertical-align: top;                                                     │

│     margin: 0em 0px;                                                         │

│ }                                                                            │

│ table tr td pre                                                              │

│ {                                                                            │

│     vertical-align: top !important;                                          │

│     margin: 0em 0px !important;                                              │

│ }                                                                            │

│ table th {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ </style>                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## getExecutableSuffix                                                       │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getExecutableSuffix () =

    if isWindows ()

    then ".exe"

    else ""



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



getExecutableSuffix ()



╭─[ 10.45ms - return value ]───────────────────────────────────────────────────╮

│ .exe                                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## splitCommand                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type private CommandParseStep =

    | Start

    | Path of quoted: bool

    | Arguments



let splitCommand (command: string) =

    let rec loop (path, args) chars step =

        match chars, step with

        | ('"' | '\'') :: tail, _ when path = "" -> loop (path, args) tail (Path

true)

        | ('"' | '\'') :: tail, Path true -> loop (path, args) tail (Path false)

        | ' ' :: tail, Path true -> loop ($"{path} ", args) tail (Path true)

        | ' ' :: tail, (Start | Path _) -> loop (path, args) tail Arguments

        | char :: tail, Arguments -> loop (path, $"{args}{char}") tail Arguments

        | char :: tail, _ -> loop ($"{path}{char}", args) tail step

        | _, _ -> path |> String.replace @"\" "/", args

    loop ("", "") (command |> Seq.toList) Start



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



splitCommand ""

|> _equal ("", "")



splitCommand "/a/b/c"

|> _equal ("/a/b/c", "")



splitCommand "cat file.txt"

|> _equal ("cat", "file.txt")



splitCommand """..\..\file.exe file1.txt file2.txt"""

|> _equal ("../../file.exe", "file1.txt file2.txt")



splitCommand @"c:\dir\file.exe ""file1.txt file2.txt"""

|> _equal ("c:/dir/file.exe", @"""file1.txt file2.txt""")



splitCommand @"""..\..\dir name\file.exe"" ""file 1.txt"" file2.txt"

|> _equal ("../../dir name/file.exe", @"""file 1.txt"" file2.txt")



splitCommand @"""..\..\file 1.exe"" -c \\""echo 1\\"""

|> _equal ("../../file 1.exe", @"-c \\""echo 1\\""")



splitCommand @"..\..\file 1.exe -c \\""echo 1\\"""

|> _equal ("../../file", @"1.exe -c \\""echo 1\\""")



╭─[ 79.89ms - stdout ]─────────────────────────────────────────────────────────╮

│ ( ,  )                                                                       │

│ ( /a/b/c,  )                                                                 │

│ ( cat, file.txt )                                                            │

│ ( ../../file.exe, file1.txt file2.txt )                                      │

│ ( c:/dir/file.exe, "file1.txt file2.txt" )                                   │

│ ( ../../dir name/file.exe, "file 1.txt" file2.txt )                          │

│ ( ../../file 1.exe, -c \\"echo 1\\" )                                        │

│ ( ../../file, 1.exe -c \\"echo 1\\" )                                        │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## executeAsync                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type ExecutionLine =

    {

        ProcessId : int

        Line : string

        Error : bool

    }



type ExecutionOptions =

    {

        Command : string

        WorkingDirectory : string option

        CancellationToken : System.Threading.CancellationToken option

        OnLine : (ExecutionLine -> Async<unit>) option

    }



let inline executeWithOptionsAsync (options : ExecutionOptions) = async {

    let fileName, arguments = options.Command |> splitCommand

    let workingDirectory = options.WorkingDirectory |> Option.defaultValue ""



    trace Debug (fun () -> $"executeAsync / options: {options}") getLocals



    let startInfo = System.Diagnostics.ProcessStartInfo (

        Arguments = arguments,

        CreateNoWindow = true,

        FileName = fileName,

        RedirectStandardError = true,

        RedirectStandardOutput = true,

        StandardOutputEncoding = System.Text.Encoding.UTF8,

        UseShellExecute = false,

        WorkingDirectory = workingDirectory

    )



    use proc = new System.Diagnostics.Process (StartInfo = startInfo)

    let output = System.Collections.Concurrent.ConcurrentStack<string> ()



    let inline event error (e: System.Diagnostics.DataReceivedEventArgs) = async

{

        if e.Data <> null then

            match options.OnLine with

            | Some onLine ->

                do!

                    onLine

                        {

                            ProcessId = proc.Id

                            Line = e.Data

                            Error = error

                        }

            | None -> ()



            trace

                Verbose

                (fun () -> $"> {e.Data}")

                Common.getLocals



            output.Push

                $"{

                    if error then '[['.ToString() else System.String.Empty

                }{

                    e.Data

                }{

                    if error then ']]'.ToString() else System.String.Empty

                }"

    }



    proc.OutputDataReceived.Add (event false >> Async.StartImmediate)

    proc.ErrorDataReceived.Add (event true >> Async.StartImmediate)



    if proc.Start () |> not

    then failwith $"executeAsync / proc.Start () error"



    proc.BeginErrorReadLine ()

    proc.BeginOutputReadLine ()



    let! ct =

        options.CancellationToken

        |> Option.defaultValue System.Threading.CancellationToken.None

        |> Async.mergeCancellationTokenWithDefaultAsync



    use reg = ct.Register (fun _ ->

        if not proc.HasExited then proc.Kill ()

    )



    let! exitCode = async {

        try

            do! proc.WaitForExitAsync ct |> Async.AwaitTask

            return proc.ExitCode

        with :? System.Threading.Tasks.TaskCanceledException as ex ->

            trace Warning (fun () -> $"executeAsync / WaitForExitAsync / ex: {ex

|> printException}") getLocals

            ex |> printException |> output.Push

            return System.Int32.MinValue

    }



    let output = output |> Seq.rev |> String.concat "\n"



    trace Debug (fun () ->

        $"executeAsync / exitCode: {exitCode} / output.Length: {output.Length}"

    ) getLocals



    return exitCode, output

}



let inline executeAsync command =

    executeWithOptionsAsync

        {

            Command = command

            CancellationToken = None

            OnLine = None

            WorkingDirectory = None

        }



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = FileSystem.createTempDirectory ()

let fileName = "test.txt"

let path = tempFolder </> fileName



async {

    let! exitCode, result = executeAsync @$"pwsh -c ""Get-Content {path}"""

    exitCode |> _equal 1

    result |> _stringContains "not exist"



    do! "0" |> FileSystem.writeAllTextAsync path



    return!

        executeWithOptionsAsync

            {

                Command = @$"pwsh -c ""Get-Content {fileName}"""

                CancellationToken = None

                OnLine = None

                WorkingDirectory = Some tempFolder

            }



}

|> Async.runWithTimeout 10000

|> function

    | Some (exitCode, output) ->

        exitCode |> _equal 0

        output |> _equal "0"



        true

    | _ -> false

|> _equal true



╭─[ 1.94s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] executeAsync / options: { Command =                      │

│    "pwsh -c "Get-Content                                                     │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1255-5463-6330-61b69 │

│ c5587dc\test.txt""                                                           │

│   WorkingDirectory = None                                                    │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:00 #2 [Verbose] > Get-Content: Cannot find path              │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1255-5463-6330-61b6 │

│ 9c5587dc\test.txt' because it does not exist.                              │

│ 00:00:00 #3 [Debug] executeAsync / exitCode: 1 / output.Length: 171          │

│ 1                                                                            │

│ [Get-Content: Cannot find path                                     │

│ 'C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1255-5463-6330-61b6 │

│ 9c5587dc\test.txt' because it does not exist.]                             │

│ 00:00:00 #4 [Debug] executeAsync / options: { Command = "pwsh -c             │

│ "Get-Content test.txt""                                                      │

│   WorkingDirectory =                                                         │

│    Some                                                                      │

│                                                                              │

│ "C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1255-5463-6330-61b6 │

│ 9c5587dc"                                                                    │

│   CancellationToken = None                                                   │

│   OnLine = None }                                                            │

│ 00:00:01 #5 [Verbose] > 0                                                    │

│ 00:00:01 #6 [Debug] executeAsync / exitCode: 0 / output.Length: 1            │

│ 0                                                                            │

│ 0                                                                            │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = FileSystem.createTempDirectory ()

let path = tempFolder </> "test.txt"



let command = @$"pwsh -c ""Get-Content {path}"""



async {

    do! "0" |> FileSystem.writeAllTextAsync path

    let cts = new System.Threading.CancellationTokenSource ()

    trace Debug (fun () -> "1") getLocals

    let! result =

        executeWithOptionsAsync

            {

                Command = command

                CancellationToken = Some cts.Token

                OnLine = None

                WorkingDirectory = None

            }

        |> Async.StartChild

    trace Debug (fun () -> "2") getLocals

    do! Async.Sleep 100

    trace Debug (fun () -> "3") getLocals

    cts.Cancel ()

    trace Debug (fun () -> "4") getLocals

    let! exitCode, output = result

    trace Debug (fun () -> "5") getLocals

    return exitCode, output

}

|> Async.runWithTimeout 10000

|> function

    | Some (exitCode, output) ->

        exitCode |> _equal -2147483648

        output |> _equal "System.Threading.Tasks.TaskCanceledException: A task 

was canceled."



        true

    | _ -> false

|> _equal true



╭─[ 524.93ms - stdout ]────────────────────────────────────────────────────────╮

│ 00:00:01 #7 [Debug] 1                                                        │

│ 00:00:01 #9 [Debug] 2                                                        │

│ 00:00:01 #8 [Debug] executeAsync / options: { Command =                      │

│    "pwsh -c "Get-Content                                                     │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1255-5645-4528-439df │

│ e99b5ef\test.txt""                                                           │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = None }                                                            │

│ 00:00:01 #10 [Debug] 3                                                       │

│ 00:00:01 #11 [Debug] 4                                                       │

│ 00:00:01 #12 [Warning] executeAsync / WaitForExitAsync / ex:                 │

│ System.Threading.Tasks.TaskCanceledException: A task was canceled.           │

│ 00:00:01 #13 [Debug] executeAsync / exitCode: -2147483648 / output.Length:   │

│ 66                                                                           │

│ 00:00:01 #14 [Debug] 5                                                       │

│ -2147483648                                                                  │

│ System.Threading.Tasks.TaskCanceledException: A task was canceled.           │

│ True                                                                         │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## splitArgs                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline splitArgs commandLine =

    commandLine

    |> System.CommandLine.Parsing.CommandLineStringSplitter.Instance.Split



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""a b "c d" e"""

|> splitArgs

|> Seq.toArray

|> _equal [[| "a"; "b"; "c d"; "e" |]]



╭─[ 26.05ms - stdout ]─────────────────────────────────────────────────────────╮

│ [ a, b, c d, e ]                                                             │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## parseArgs                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parseArgs<'T when 'T :> Argu.IArgParserTemplate> args =

    let assemblyName = 

System.Reflection.Assembly.GetEntryAssembly().GetName().Name

    let errorHandler : Argu.IExiter =

        if [[ "Microsoft.DotNet.Interactive.App"; "dotnet-repl" ]] |> 

List.contains assemblyName

        then Argu.ExceptionExiter ()

        else Argu.ProcessExiter (function Argu.ErrorCode.HelpText -> None | _ ->

Some System.ConsoleColor.Red)



    let parser =

        Argu.ArgumentParser.Create<'T> (

            programName = $"{assemblyName}{getExecutableSuffix ()}",

            errorHandler = errorHandler

        )



    parser.ParseCommandLine args



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



[[<RequireQualifiedAccess>]]

type Arguments =

    | [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.ExactlyOnce; 

Argu.ArguAttributes.Last>]]

        Paths of paths : string list



    interface Argu.IArgParserTemplate with

        member s.Usage =

            match s with

            | Paths _ -> nameof Paths



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



fun () -> parseArgs<Arguments> [[||]] |> ignore

|> _throwsC (fun ex _ ->

    printException ex

    |> _stringContains "Argu.ArguParseException: ERROR: missing parameter 

'<paths>...'."

)



╭─[ 122.21ms - stdout ]────────────────────────────────────────────────────────╮

│ FSI_0029+it@3-246                                                            │

│ Argu.ArguParseException: ERROR: missing parameter '<paths>...'.              │

│ USAGE: dotnet-repl.exe [--help] <paths>...                                   │

│                                                                              │

│ PATHS:                                                                       │

│                                                                              │

│     <paths>...            Paths                                              │

│                                                                              │

│ OPTIONS:                                                                     │

│                                                                              │

│     --help                display this list of options.                      │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parseAllArgs<'T when 'T :> Argu.IArgParserTemplate> args =

    args

    |> parseArgs<'T>

    |> fun results -> results.GetAllResults ()



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



[[<RequireQualifiedAccess>]]

type Arguments =

    | [[<Argu.ArguAttributes.MainCommand; Argu.ArguAttributes.ExactlyOnce; 

Argu.ArguAttributes.Last>]]

        Paths of paths : string list



    interface Argu.IArgParserTemplate with

        member s.Usage =

            match s with

            | Paths _ -> nameof Paths



parseAllArgs<Arguments> [[| "a b"; "c" |]]

|> _equal [[ Arguments.Paths [[ "a b"; "c" ]] ]]



╭─[ 85.82ms - stdout ]─────────────────────────────────────────────────────────╮

│ FSharpList<Arguments>                                                        │

│       - paths: [ a b, c ]                                                    │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline parseArgsMap<'T when 'T :> Argu.IArgParserTemplate> args =

    args

    |> parseAllArgs<'T>

    |> List.groupBy CommonFSharp.getUnionCaseName<'T>

    |> Map.ofList



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



parseArgsMap<Arguments> [[| "a b"; "c" |]]

|> _equal (

    [[ nameof Arguments.Paths, [[ Arguments.Paths [[ "a b"; "c" ]] ]] ]]

    |> Map.ofList

)



╭─[ 55.86ms - stdout ]─────────────────────────────────────────────────────────╮

│ FSharpMap<String,FSharpList<Arguments>>                                      │

│       - Key: Paths                                                           │

│         Value: FSharpList<Arguments>                                         │

│           - paths: [ a b, c ]                                                │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Runtime.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 337265 bytes to Runtime.dib.html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Toml (Polyglot)                                                            │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/tomlyn/0.16.2/lib/net6.0/Tomlyn.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common



── fsharp ──────────────────────────────────────────────────────────────────────

let inline (/./) (table: Tomlyn.Model.TomlTable) (key: string) : 

Tomlyn.Model.TomlTable =

    table.[[key]] :?> Tomlyn.Model.TomlTable



let inline (/../) (table: Tomlyn.Model.TomlTable) (key: string) : 'T seq =

    table.[[key]] :?> Tomlyn.Model.TomlArray |> Seq.cast<'T>



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tomlContent =

    """

[[extension]]

paths = [["/a", "/b"]]

"""



let toml = Tomlyn.Toml.Parse tomlContent

let tomlModel = Tomlyn.Toml.ToModel toml



let paths : string seq = tomlModel /./ "extension" /../ "paths"



paths

|> Seq.toList

|> _equal [[ "/a"; "/b" ]]



╭─[ 113.34ms - stdout ]────────────────────────────────────────────────────────╮

│ [ /a, /b ]                                                                   │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Toml.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 276896 bytes to Toml.dib.html

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: CommonFSharp.dib

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: Networking.dib

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: Common.dib

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: AsyncSeq.dib

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: Crypto.dib

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: Async.dib

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: Threading.dib

00:00:00 #2 [Debug] writeDibCode / output: Fs / path: FileSystem.dib

00:00:00 #5 [Debug] parseDibCode / output: Fs / file: Networking.dib

00:00:00 #9 [Debug] parseDibCode / output: Fs / file: Threading.dib

00:00:00 #6 [Debug] parseDibCode / output: Fs / file: AsyncSeq.dib

00:00:00 #4 [Debug] parseDibCode / output: Fs / file: Common.dib

00:00:00 #4 [Debug] parseDibCode / output: Fs / file: CommonFSharp.dib

00:00:00 #7 [Debug] parseDibCode / output: Fs / file: Crypto.dib

00:00:00 #8 [Debug] parseDibCode / output: Fs / file: Async.dib

00:00:00 #10 [Debug] parseDibCode / output: Fs / file: FileSystem.dib

00:00:00 #12 [Debug] writeDibCode / output: Fs / path: Runtime.dib

00:00:00 #12 [Debug] writeDibCode / output: Fs / path: Toml.dib

00:00:00 #13 [Debug] parseDibCode / output: Fs / file: Runtime.dib

00:00:00 #14 [Debug] parseDibCode / output: Fs / file: Toml.dib

In [ ]:
{ . "$ScriptDir/../apps/spiral/build.ps1" } | Invoke-Block

── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # Supervisor (Polyglot)                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"

#r 

@"../../../../../../../.nuget/packages/microsoft.aspnetcore.http.connections.com

mon/7.0.0/lib/net7.0/Microsoft.AspNetCore.Http.Connections.Common.dll"

#r 

@"../../../../../../../.nuget/packages/microsoft.aspnetcore.http.connections.cli

ent/7.0.0/lib/net7.0/Microsoft.AspNetCore.Http.Connections.Client.dll"

#r 

@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.common/7.0.0

/lib/net7.0/Microsoft.AspNetCore.SignalR.Common.dll"

#r 

@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.client/7.0.0

/lib/net7.0/Microsoft.AspNetCore.SignalR.Client.dll"

#r 

@"../../../../../../../.nuget/packages/microsoft.aspnetcore.signalr.client.core/

7.0.0/lib/net7.0/Microsoft.AspNetCore.SignalR.Client.Core.dll"

#r 

@"../../../../../../../.nuget/packages/fsharp.json/0.4.1/lib/netstandard2.0/FSha

rp.Json.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Threading.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/AsyncSeq.fs

#!import ../../lib/fsharp/Networking.fs

#!import ../../lib/fsharp/Runtime.fs

#!import ../../lib/fsharp/FileSystem.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Threading =



    open Common



    /// ## newDisposableToken



    let inline newDisposableToken (mergeToken: 

System.Threading.CancellationToken option) =

        let cts = new System.Threading.CancellationTokenSource ()

        let cts =

            match mergeToken with

            | None -> cts

            | Some mergeToken ->

                System.Threading.CancellationTokenSource.CreateLinkedTokenSource

[[| cts.Token; mergeToken |]]

        let disposable = newDisposable cts.Cancel

        cts.Token, disposable





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module AsyncSeq =



    open Common



    /// ## subscribeEvent



    let inline subscribeEvent (event: IEvent<'H, 'A>) map =

        let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

        System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

        |> FSharp.Control.AsyncSeq.ofObservableBuffered



    let subscribeToken (token : System.Threading.CancellationToken) =

        let tcs = new System.Threading.Tasks.TaskCompletionSource ()

        System.Action tcs.SetResult |> token.Register |> ignore

        let start = System.DateTime.Now.Ticks

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun (...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Networking =



    open Common



    /// ## testPortOpen



    let inline testPortOpen port = async {

        let! ct = Async.CancellationToken

        use client = new System.Net.Sockets.TcpClient ()

        try

            do! client.ConnectAsync ("127.0.0.1", port, ct) |> 

Async.awaitValueTaskUnit

            return true

        with ex ->

            trace Verbose (fun () -> $"testPortOpen / ex: {ex |> 

printException}") getLocals

            return false

    }



    let inline testPortOpenTimeout timeout port = async {

        let! result =

            testPortOpen port

            |> Async.runWithTimeoutAsync timeout

        return

            match result with

            | None -> false

 ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module FileSystem =



    open Common



    /// ## Operators



    module Operators =

        let inline (</>) a b =

            System.IO.Path.Combine (a, b)



    open Operators



    /// ## createTempDirectoryName



    let inline createTempDirectoryName () =

        let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name



        System.IO.Path.GetTempPath ()

        </> $"!{root}"

        </> string (newGuidFromDateTime System.DateTime.Now)



    /// ## createTempDirectory



    let inline createTempDirectory () =

        let tempFolder = createTempDirectoryName ()

        let result = System.IO.Directory.CreateDirectory tempFolder



        if not result.Exists then

            let ge...



── fsharp ──────────────────────────────────────────────────────────────────────

open Common

open FileSystem.Operators

open Microsoft.AspNetCore.SignalR.Client



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## sendJson                                                                  │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline sendJson (port : int) (json : string) = async {

    let! portOpen = Networking.testPortOpen port

    if portOpen then

        try

            let connection = 

HubConnectionBuilder().WithUrl($"http://127.0.0.1:{port}").Build()

            do! connection.StartAsync () |> Async.AwaitTask

            let! result = connection.InvokeAsync<string>("ClientToServerMsg", 

json) |> Async.AwaitTask

            do! connection.StopAsync () |> Async.AwaitTask

            trace Debug (fun () -> $"sendJson / port: {port} / json: {json} / 

result.Length: {result |> Option.ofObj |> Option.map String.length}") getLocals

            return Some result

        with ex ->

            trace Critical (fun () -> $"sendJson / port: {port} / json: {json} /

ex: {ex |> printException}") getLocals

            return None

    else

        trace Debug (fun () -> "sendJson / error: port not open") getLocals

        return None

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## sendObj                                                                   │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline sendObj port obj =

    obj

    |> System.Text.Json.JsonSerializer.Serialize

    |> sendJson port



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## awaitCompiler                                                             │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

type VSCPos = {| line : int; character : int |}

type VSCRange = VSCPos * VSCPos

type RString = VSCRange * string

type TracedError = {| trace : string list; message : string |}

type ClientErrorsRes =

    | FatalError of string

    | TracedError of TracedError

    | PackageErrors of {| uri : string; errors : RString list |}

    | TokenizerErrors of {| uri : string; errors : RString list |}

    | ParserErrors of {| uri : string; errors : RString list |}

    | TypeErrors of {| uri : string; errors : RString list |}



── fsharp ──────────────────────────────────────────────────────────────────────

let inline awaitCompiler port cancellationToken = async {

    let! ct =

        cancellationToken

        |> Option.defaultValue System.Threading.CancellationToken.None

        |> Async.mergeCancellationTokenWithDefaultAsync

    

    let cts = new System.Threading.CancellationTokenSource ()



    let compiler = MailboxProcessor.Start (fun inbox -> async {

        let! availablePort = Networking.getAvailablePort (Some 60) port

        if availablePort <> port then

            inbox.Post port

        else

            let repositoryRoot = FileSystem.getSourceDirectory () |> 

FileSystem.findParent ".paket" false



            let compilerPath =

                repositoryRoot </> "deps/The-Spiral-Language/The Spiral Language

2/artifacts/bin/The Spiral Language 2/release"

                |> System.IO.Path.GetFullPath



            let dllPath = compilerPath </> "Spiral.dll"



            let! exitCode, result =

                Runtime.executeWithOptionsAsync

                    {

                        Command = $@"dotnet ""{dllPath}"" port={availablePort}"

                        CancellationToken = Some ct

                        WorkingDirectory = None

                        OnLine = Some <| fun { Line = line } -> async {

                            if line |> String.contains $"Server bound to: 

http://localhost:{availablePort}" then

                                do! Networking.waitForPortAccess (Some 500) true

availablePort |> Async.Ignore



                                let rec loop retry = async {

                                    let getLocals () = $"port: {availablePort} /

retry: {retry} / {getLocals ()}"

                                    try

                                        let pingObj = {| Ping = true |}

                                        let! pingResult = pingObj |> sendObj 

availablePort

                                        trace Verbose (fun () -> $"awaitCompiler

/ Ping / result: {pingResult}") getLocals

                                    with ex ->

                                        trace Verbose (fun () -> $"awaitCompiler

/ Ping / ex: {ex |> printException}") getLocals

                                        do! Async.Sleep 10

                                        do! loop (retry + 1)

                                }

                                do! loop 0

                                inbox.Post availablePort

                        }

                    }

            trace Debug (fun () -> $"awaitCompiler / exitCode: {exitCode} / 

result: {result}") getLocals

            cts.Cancel ()

    }, ct)



    let! serverPort = compiler.Receive ()



    let connection = 

HubConnectionBuilder().WithUrl($"http://127.0.0.1:{serverPort}").Build ()

    do! connection.StartAsync () |> Async.AwaitTask



    let event = Event<_> ()

    let disposable = connection.On<string> ("ServerToClientMsg", event.Trigger)

    let stream =

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun () -> async {

                let! msg = event.Publish |> Async.AwaitEvent

                return Some (msg |> 

FSharp.Json.Json.deserialize<ClientErrorsRes>, ())

            })

            ()



    let disposable =

        newDisposable (fun () ->

            disposable.Dispose ()

            connection.StopAsync () |> Async.AwaitTask |> Async.StartImmediate

        )



    return

        serverPort,

        stream,

        cts.Token,

        disposable

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## getFileUri                                                                │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getFileUri path =

    $"file:///{path |> String.trimStart [[| '/' |]]}"



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getFilePathFromUri uri =

    match System.Uri.TryCreate (uri, System.UriKind.Absolute) with

    | true, uri -> uri.AbsolutePath |> System.IO.Path.GetFullPath

    | _ -> failwith "invalid uri"



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getCompilerPort () =

    13805



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## buildFile                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline buildFile timeout port cancellationToken path = async {

    let fullPath = path |> System.IO.Path.GetFullPath

    let fileDir = fullPath |> System.IO.Path.GetDirectoryName

    let fileName = fullPath |> System.IO.Path.GetFileNameWithoutExtension

    let! code = fullPath |> FileSystem.readAllTextAsync



    let eventFilter = function

        | FileSystem.FileSystemChange.Changed (path, _) when path = 

$"{fileName}.fsx" -> true

        | _ -> false



    let stream, disposable = fileDir |> FileSystem.watchDirectory eventFilter

    use _ = disposable



    let token, disposable = Threading.newDisposableToken cancellationToken

    use _ = disposable



    let! serverPort, errors, ct, disposable = awaitCompiler port (Some token)

    use _ = disposable



    let fsxContentSeq =

        stream

        |> FSharp.Control.AsyncSeq.choose (function

            | _, (FileSystem.FileSystemChange.Changed (path, Some content) as 

event)

                when event |> eventFilter

                ->

                Some content

            | _ -> None

        )

        |> FSharp.Control.AsyncSeq.map (fun content ->

            Some (content |> String.replace "\r\n" "\n"), None

        )



    let inline printErrorData (data : {| uri : string; errors : RString list |})

=

        let fileName = data.uri |> System.IO.Path.GetFileName

        let errors =

            data.errors

            |> List.map snd

            |> String.concat "\n"

        $"{fileName}:\n{errors}"



    let errorsSeq =

        errors

        |> FSharp.Control.AsyncSeq.choose (fun error ->

            match error with

            | FatalError message ->

                Some (message, error)

            | TracedError data ->

                Some (data.message, error)

            | PackageErrors data when data.errors |> List.isEmpty |> not ->

                Some (data |> printErrorData, error)

            | TokenizerErrors data when data.errors |> List.isEmpty |> not ->

                Some (data |> printErrorData, error)

            | ParserErrors data when data.errors |> List.isEmpty |> not ->

                Some (data |> printErrorData, error)

            | TypeErrors data when data.errors |> List.isEmpty |> not ->

                Some (data |> printErrorData, error)

            | _ -> None

        )

        |> FSharp.Control.AsyncSeq.map (fun (message, error) ->

            None, Some (message, error)

        )

    

    let timerSeq =

        1000

        |> FSharp.Control.AsyncSeq.intervalMs

        |> FSharp.Control.AsyncSeq.map (fun _ -> None, None)



    let outputSeq =

        [[ fsxContentSeq; errorsSeq; timerSeq ]]

        |> FSharp.Control.AsyncSeq.mergeAll



    let! outputChild =

        ((None, [[]], 0), outputSeq)

        ||> FSharp.Control.AsyncSeq.scan (

            fun (fsxContentResult, errors, typeErrorCount) (fsxContent, error) 

->

                match fsxContent, error with

                | Some fsxContent, None -> Some fsxContent, errors, 

typeErrorCount

                | None, Some (_, FatalError "File main has a type error 

somewhere in its path.") ->

                    fsxContentResult, errors, typeErrorCount + 1

                | None, Some error -> fsxContentResult, error :: errors, 

typeErrorCount

                | None, None when typeErrorCount >= 1 ->

                    fsxContentResult, errors, typeErrorCount + 1

                | _ -> fsxContentResult, errors, typeErrorCount

        )

        |> FSharp.Control.AsyncSeq.takeWhileInclusive (fun (fsxContent, errors, 

typeErrorCount) ->

            trace Debug (fun () -> $"buildFile / takeWhileInclusive / 

fsxContent: {fsxContent} / errors: {errors} / typeErrorCount: {typeErrorCount}")

getLocals

            match fsxContent, errors with

            | None, [[]] when typeErrorCount > 2 -> false

            | None, [[]] -> true

            | _ -> false

        )

        |> FSharp.Control.AsyncSeq.tryLast

        |> Async.withCancellationToken ct

        |> Async.catch

        |> Async.runWithTimeoutAsync timeout

        |> Async.StartChild



    let fileOpenObj = {| FileOpen = {| uri = fullPath |> getFileUri; spiText = 

code |} |}

    let! _fileOpenResult = fileOpenObj |> sendObj serverPort



    do! Async.Sleep 30



    let buildFileObj = {| BuildFile = {| uri = fullPath |> getFileUri; backend =

"Fsharp" |} |}

    let! _buildFileResult = buildFileObj |> sendObj serverPort



    return!

        outputChild

        |> Async.map (function

            | Some (Ok (Some (message, errors, _))) -> message, errors |> 

List.distinct |> List.rev

            | Some (Error ex) ->

                trace Critical (fun () -> $"buildFile / error: {ex |> 

printException}") getLocals

                None, [[]]

            | _ -> None, [[]]

        )

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## persistCode                                                               │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline persistCode code = async {

    let tempDir = FileSystem.createTempDirectory ()



    let mainPath = tempDir </> "main.spi"

    do! code |> FileSystem.writeAllTextAsync mainPath



    let repositoryRoot = FileSystem.getSourceDirectory () |> 

FileSystem.findParent ".paket" false



    let spiprojPath = tempDir </> "package.spiproj"

    let spiprojCode =

        $"""packageDir: {repositoryRoot </> "lib"}

packages:

    |core-

    spiral-

modules:

    main

"""

    do! spiprojCode |> FileSystem.writeAllTextAsync spiprojPath



    let disposable = newDisposable (fun () ->

        ()

        // tempDir |> FileSystem.deleteDirectoryAsync |> Async.Ignore |> 

Async.RunSynchronously

    )



    return mainPath, disposable

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## buildCode                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline buildCode timeout cancellationToken code = async {

    let! mainPath, disposable = persistCode code

    use _ = disposable

    let port = getCompilerPort ()

    return! mainPath |> buildFile timeout port cancellationToken

}



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let buildCode timeout cancellationToken code = buildCode timeout 

cancellationToken code



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""inl app () =

    console.write_line "text"

    1i32



inl main () =

    app

    |> dyn

    |> ignore

"""

|> buildCode 15000 None

|> Async.runWithTimeout 15000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        Some """let rec closure0 () () : int32 =

    let v0 : string = "text"

    System.Console.WriteLine v0

    1

let v0 : (unit -> int32) = closure0()

()

""",

        [[]]

    )

)



╭─[ 3.02s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60                        │

│ 00:00:00 #2 [Debug] executeAsync / options: { Command =                      │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral                │

│ 00:00:00 #4 [Verbose] > dll_path:                                            │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500                       │

│ 00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0             │

│ 00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} /           │

│ result.Length:                                                               │

│ 00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port:      │

│ 13805 / retry: 0                                                             │

│ 00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805              │

│ 00:00:01 #10 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:01 #11 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:01 #12 [Debug] sendJson / port: 13805 / json:                          │

│ {"FileOpen":{"spiText":"inl app () =\n    console.write_line                 │

│ \u0022text\u0022\n    1i32\n\ninl main () =\n    app\n    |\u003E dyn\n      │

│ |\u003E                                                                      │

│ ignore\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-rep │

│ l\\20231029-1256-3519-1903-17149305bb79\\main.spi"}} / result.Length:        │

│ 00:00:01 #13 [Debug] sendJson / port: 13805 / json:                          │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-3519-1903-17149305bb79\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:01 #14 [Verbose] > Building                                            │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-3519-1903-17149 │

│ 305bb79\main.spi                                                             │

│ 00:00:02 #15 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:02 #16 [Debug] buildFile / takeWhileInclusive / fsxContent: Some(let   │

│ rec closure0 () () : int32 =                                                 │

│     let v0 : string = "text"                                                 │

│     System.Console.WriteLine v0                                              │

│     1                                                                        │

│ let v0 : (unit -> int32) = closure0()                                        │

│ ()                                                                           │

│ ) / errors: [] / typeErrorCount: 0                                           │

│ 00:00:02 #17 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - FSharpOption<String>                                    │

│           Value: let rec closure0 () () : int32 =                            │

│     let v0 : string = "text"                                                 │

│     System.Console.WriteLine v0                                              │

│     1                                                                        │

│ let v0 : (unit -> int32) = closure0()                                        │

│ ()                                                                           │

│                                                                              │

│       - [  ]                                                                 │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> _equal None



╭─[ 10.23s - stdout ]──────────────────────────────────────────────────────────╮

│ 00:00:02 #18 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:02 #19 [Debug] executeAsync / options: { Command =                     │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:03 #20 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral               │

│ 00:00:03 #21 [Verbose] > dll_path:                                           │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:03 #22 [Debug] runWithTimeoutAsync / timeout: 500                      │

│ 00:00:03 #23 [Verbose] waitForPortAccess / port: 13805 / retry: 0            │

│ 00:00:03 #24 [Debug] sendJson / port: 13805 / json: {"Ping":true} /          │

│ result.Length:                                                               │

│ 00:00:03 #25 [Verbose] awaitCompiler / Ping / result: Some(null) / port:     │

│ 13805 / retry: 0                                                             │

│ 00:00:03 #26 [Verbose] > Server bound to: http://localhost:13805             │

│ 00:00:03 #27 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:03 #28 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:03 #29 [Debug] sendJson / port: 13805 / json:                          │

│ {"FileOpen":{"spiText":"","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\T │

│ emp\\!dotnet-repl\\20231029-1256-3822-2208-25e36b5cc799\\main.spi"}} /       │

│ result.Length:                                                               │

│ 00:00:03 #30 [Debug] sendJson / port: 13805 / json:                          │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-3822-2208-25e36b5cc799\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:04 #31 [Verbose] > Building                                            │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-3822-2208-25e36 │

│ b5cc799\main.spi                                                             │

│ 00:00:04 #32 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:05 #33 [Verbose] > Cannot find `main` in file main.                    │

│ 00:00:05 #34 [Verbose] > Build skipped for                                   │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-3822-2208-25e36 │

│ b5cc799\main.spi                                                             │

│ 00:00:05 #35 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:06 #36 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:07 #37 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:08 #38 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:09 #39 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:10 #40 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:11 #41 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:12 #42 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:12 #43 [Debug] runWithTimeoutAsync / timeout: 10000                    │

│ 00:00:12 #44 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ <null>                                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"inl app () =

    0i32



inl a = 1



inl main () =

    app

    |> dyn

    |> ignore

"

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[ "main.spi:

Global inl/let statements should all return functions known at parse time." ]]

    )

)



╭─[ 1.74s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:13 #45 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:13 #46 [Debug] executeAsync / options: { Command =                     │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:13 #47 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral               │

│ 00:00:13 #48 [Verbose] > dll_path:                                           │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:14 #51 [Debug] runWithTimeoutAsync / timeout: 500                      │

│ 00:00:14 #52 [Verbose] waitForPortAccess / port: 13805 / retry: 0            │

│ 00:00:14 #53 [Debug] sendJson / port: 13805 / json: {"Ping":true} /          │

│ result.Length:                                                               │

│ 00:00:14 #54 [Verbose] awaitCompiler / Ping / result: Some(null) / port:     │

│ 13805 / retry: 0                                                             │

│ 00:00:14 #55 [Verbose] > Server bound to: http://localhost:13805             │

│ 00:00:14 #56 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:14 #57 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:14 #58 [Debug] sendJson / port: 13805 / json:                          │

│ {"FileOpen":{"spiText":"inl app () =\n    0i32\n\ninl a = 1\n\ninl main ()   │

│ =\n    app\n    |\u003E dyn\n    |\u003E                                     │

│ ignore\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-rep │

│ l\\20231029-1256-4850-5026-5d422c590d6a\\main.spi"}} / result.Length:        │

│ 00:00:14 #59 [Debug] sendJson / port: 13805 / json:                          │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-4850-5026-5d422c590d6a\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:14 #60 [Verbose] > Building                                            │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-4850-5026-5d422 │

│ c590d6a\main.spi                                                             │

│ 00:00:14 #61 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [(main.spi:                                                                  │

│ Global inl/let statements should all return functions known at parse time.,  │

│ ParserErrors                                                                 │

│   { errors =                                                                 │

│      [(({ character = 0                                                      │

│           line = 3 }, { character = 9                                        │

│                         line = 3 }),                                         │

│        "Global inl/let statements should all return functions known at parse │

│ time.")]                                                                     │

│     uri =                                                                    │

│                                                                              │

│ "file:///C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-4850-5 │

│ 026-5d422c590d6a\main.spi" })] / typeErrorCount: 0                           │

│ 00:00:14 #62 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ main.spi:                                                          │

│ Global inl/let statements should all return functions known at parse time. ] │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""inl main () =

    1i32 / 0i32

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[ "An attempt to divide by zero has been detected at compile time." ]]

    )

)



╭─[ 2.42s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:15 #64 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:15 #65 [Debug] executeAsync / options: { Command =                     │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:15 #66 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral               │

│ 00:00:15 #67 [Verbose] > dll_path:                                           │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:15 #68 [Debug] runWithTimeoutAsync / timeout: 500                      │

│ 00:00:15 #69 [Verbose] waitForPortAccess / port: 13805 / retry: 0            │

│ 00:00:15 #71 [Debug] sendJson / port: 13805 / json: {"Ping":true} /          │

│ result.Length:                                                               │

│ 00:00:15 #72 [Verbose] awaitCompiler / Ping / result: Some(null) / port:     │

│ 13805 / retry: 0                                                             │

│ 00:00:15 #73 [Verbose] > Server bound to: http://localhost:13805             │

│ 00:00:15 #74 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:15 #75 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:15 #76 [Debug] sendJson / port: 13805 / json:                          │

│ {"FileOpen":{"spiText":"inl main () =\n    1i32 /                            │

│ 0i32\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\ │

│ \20231029-1256-5027-2759-25c24c4a4335\\main.spi"}} / result.Length:          │

│ 00:00:16 #77 [Debug] sendJson / port: 13805 / json:                          │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-5027-2759-25c24c4a4335\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:16 #78 [Verbose] > Building                                            │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5027-2759-25c24 │

│ c4a4335\main.spi                                                             │

│ 00:00:16 #80 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:17 #81 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [(An attempt to divide by zero has been detected at compile time.,           │

│ TracedError                                                                  │

│   { message = "An attempt to divide by zero has been detected at compile     │

│ time."                                                                       │

│     trace =                                                                  │

│      ["Error trace on line: 1, column: 10 in module:                         │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5027-2759-25c24 │

│ c4a4335\main.spi.                                                            │

│ inl main () =                                                                │

│          ^                                                                   │

│ ";                                                                           │

│       "Error trace on line: 2, column: 5 in module:                          │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5027-2759-25c24 │

│ c4a4335\main.spi.                                                            │

│     1i32 / 0i32                                                              │

│     ^                                                                        │

│ "] })] / typeErrorCount: 0                                                   │

│ 00:00:17 #82 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ An attempt to divide by zero has been detected at compile time. ]  │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""inl main () =

    1 + ""

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[

            "main.spi:

Constraint satisfaction error.

Got: string

Fails to satisfy: number"

        ]]

    )

)



╭─[ 2.08s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:17 #83 [Debug] runWithTimeoutAsync / timeout: 60                       │

│ 00:00:17 #84 [Debug] executeAsync / options: { Command =                     │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:17 #85 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral               │

│ 00:00:17 #86 [Verbose] > dll_path:                                           │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:18 #88 [Debug] runWithTimeoutAsync / timeout: 500                      │

│ 00:00:18 #89 [Verbose] waitForPortAccess / port: 13805 / retry: 0            │

│ 00:00:18 #90 [Debug] sendJson / port: 13805 / json: {"Ping":true} /          │

│ result.Length:                                                               │

│ 00:00:18 #91 [Verbose] awaitCompiler / Ping / result: Some(null) / port:     │

│ 13805 / retry: 0                                                             │

│ 00:00:18 #92 [Verbose] > Server bound to: http://localhost:13805             │

│ 00:00:18 #93 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:18 #94 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:18 #95 [Debug] sendJson / port: 13805 / json:                          │

│ {"FileOpen":{"spiText":"inl main () =\n    1 \u002B                          │

│ \u0022\u0022\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotn │

│ et-repl\\20231029-1256-5268-6825-6ff37b22fce1\\main.spi"}} / result.Length:  │

│ 00:00:18 #96 [Debug] sendJson / port: 13805 / json:                          │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-5268-6825-6ff37b22fce1\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:18 #97 [Verbose] > Building                                            │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5268-6825-6ff37 │

│ b22fce1\main.spi                                                             │

│ 00:00:19 #99 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 1                                                       │

│ 00:00:19 #100 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [(main.spi:                                                          │

│ Constraint satisfaction error.                                               │

│ Got: string                                                                  │

│ Fails to satisfy: number, TypeErrors                                         │

│   { errors =                                                                 │

│      [(({ character = 8                                                      │

│           line = 1 }, { character = 10                                       │

│                         line = 1 }),                                         │

│        "Constraint satisfaction error.                                       │

│ Got: string                                                                  │

│ Fails to satisfy: number")]                                                  │

│     uri =                                                                    │

│                                                                              │

│ "file:///C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5268-6 │

│ 825-6ff37b22fce1\main.spi" })] / typeErrorCount: 1                           │

│ 00:00:19 #101 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ main.spi:                                                          │

│ Constraint satisfaction error.                                               │

│ Got: string                                                                  │

│ Fails to satisfy: number ]                                                   │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""inl main () =

    x + y

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[

            "main.spi:

Unbound variable.

Unbound variable."

        ]]

    )

)



╭─[ 2.11s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:19 #102 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:19 #103 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:19 #104 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:19 #105 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:20 #107 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:20 #108 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:20 #109 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:20 #110 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:20 #111 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:20 #112 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:20 #113 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:20 #114 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"inl main () =\n    x \u002B                          │

│ y\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\20 │

│ 231029-1256-5481-8176-83836971b0b0\\main.spi"}} / result.Length:             │

│ 00:00:20 #115 [Debug] sendJson / port: 13805 / json:                         │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-5481-8176-83836971b0b0\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:20 #116 [Verbose] > Building                                           │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5481-8176-83836 │

│ 971b0b0\main.spi                                                             │

│ 00:00:21 #118 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 1                                               │

│ 00:00:21 #119 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [(main.spi:                                                          │

│ Unbound variable.                                                            │

│ Unbound variable., TypeErrors                                                │

│   { errors =                                                                 │

│      [(({ character = 4                                                      │

│           line = 1 }, { character = 5                                        │

│                         line = 1 }), "Unbound variable.");                   │

│       (({ character = 8                                                      │

│           line = 1 }, { character = 9                                        │

│                         line = 1 }), "Unbound variable.")]                   │

│     uri =                                                                    │

│                                                                              │

│ "file:///C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5481-8 │

│ 176-83836971b0b0\main.spi" })] / typeErrorCount: 1                           │

│ 00:00:21 #120 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ main.spi:                                                          │

│ Unbound variable.                                                            │

│ Unbound variable. ]                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""union a =

    | B

    | c



inl main () =

    ()

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[ "main.spi:

Expected: uppercase variable" ]]

    )

)



╭─[ 1.65s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:21 #121 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:21 #122 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:21 #123 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:21 #124 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:22 #126 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:22 #127 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:22 #128 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:22 #129 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:22 #130 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:22 #131 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:22 #132 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:22 #133 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"union a =\n    | B\n    | c\n\ninl main () =\n       │

│ ()\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\2 │

│ 0231029-1256-5695-9581-956400d8c023\\main.spi"}} / result.Length:            │

│ 00:00:22 #134 [Debug] sendJson / port: 13805 / json:                         │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-5695-9581-956400d8c023\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:22 #135 [Verbose] > Building                                           │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5695-9581-95640 │

│ 0d8c023\main.spi                                                             │

│ 00:00:23 #137 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [(main.spi:                                                          │

│ Expected: uppercase variable, ParserErrors                                   │

│   { errors = [(({ character = 6                                              │

│                   line = 2 }, { character = 7                                │

│                                 line = 2 }), "Expected: uppercase            │

│ variable")]                                                                  │

│     uri =                                                                    │

│                                                                              │

│ "file:///C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5695-9 │

│ 581-956400d8c023\main.spi" })] / typeErrorCount: 0                           │

│ 00:00:23 #138 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ main.spi:                                                          │

│ Expected: uppercase variable ]                                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""

/// abc

inl main () =

    ()

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[ "main.spi:

Expected: whitespace" ]]

    )

)



╭─[ 1.44s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:23 #139 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:23 #140 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:23 #141 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:23 #142 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:24 #144 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:24 #145 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:24 #146 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:24 #147 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:24 #148 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:24 #149 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:24 #150 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:24 #151 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"\n/// abc\ninl main () =\n                           │

│ ()\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\2 │

│ 0231029-1256-5862-6217-63e98338f7b9\\main.spi"}} / result.Length:            │

│ 00:00:24 #152 [Debug] sendJson / port: 13805 / json:                         │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1256-5862-6217-63e98338f7b9\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:24 #153 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [(main.spi:                                                          │

│ Expected: whitespace, TokenizerErrors                                        │

│   { errors = [(({ character = 2                                              │

│                   line = 1 }, { character = 3                                │

│                                 line = 1 }), "Expected: whitespace")]        │

│     uri =                                                                    │

│                                                                              │

│ "file:///C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1256-5862-6 │

│ 217-63e98338f7b9\main.spi" })] / typeErrorCount: 0                           │

│ 00:00:24 #154 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ main.spi:                                                          │

│ Expected: whitespace ]                                                       │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""

inl main () =

    real

        inl real_unbox forall a. (obj : a) : a =

            typecase obj with

            | _ => obj

        real_unbox ()

    ()

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[ "Cannot apply a forall with a term." ]]

    )

)



╭─[ 2.39s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:24 #155 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:24 #156 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:25 #158 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:25 #159 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:25 #160 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:25 #161 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:25 #162 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:25 #163 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:25 #164 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:25 #165 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:25 #166 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:25 #167 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"\ninl main () =\n    real\n        inl real_unbox    │

│ forall a. (obj : a) : a =\n            typecase obj with\n            | _    │

│ =\u003E obj\n        real_unbox ()\n                                         │

│ ()\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\2 │

│ 0231029-1257-0012-1262-1b7803c6a9d7\\main.spi"}} / result.Length:            │

│ 00:00:25 #168 [Debug] sendJson / port: 13805 / json:                         │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1257-0012-1262-1b7803c6a9d7\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:26 #170 [Verbose] > Building                                           │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0012-1262-1b780 │

│ 3c6a9d7\main.spi                                                             │

│ 00:00:26 #171 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:26 #172 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [(Cannot apply a forall with a term., TracedError                    │

│   { message = "Cannot apply a forall with a term."                           │

│     trace =                                                                  │

│      ["Error trace on line: 2, column: 10 in module:                         │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0012-1262-1b780 │

│ 3c6a9d7\main.spi.                                                            │

│ inl main () =                                                                │

│          ^                                                                   │

│ ";                                                                           │

│       "Error trace on line: 4, column: 9 in module:                          │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0012-1262-1b780 │

│ 3c6a9d7\main.spi.                                                            │

│         inl real_unbox forall a. (obj : a) : a =                             │

│         ^                                                                    │

│ ";                                                                           │

│       "Error trace on line: 7, column: 9 in module:                          │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0012-1262-1b780 │

│ 3c6a9d7\main.spi.                                                            │

│         real_unbox ()                                                        │

│         ^                                                                    │

│ "] })] / typeErrorCount: 0                                                   │

│ 00:00:26 #173 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ Cannot apply a forall with a term. ]                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""

inl main () =

    real

        inl real_unbox forall a. (obj : a) : a =

            typecase obj with

            | _ => obj

        real_unbox `i32 1

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        None,

        [[ "The main function should not have a forall." ]]

    )

)



╭─[ 2.24s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:27 #175 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:27 #176 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:27 #177 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:27 #178 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:27 #179 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:27 #180 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:28 #182 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:28 #183 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:28 #184 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:28 #185 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:28 #186 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:28 #187 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"\ninl main () =\n    real\n        inl real_unbox    │

│ forall a. (obj : a) : a =\n            typecase obj with\n            | _    │

│ =\u003E obj\n        real_unbox \u0060i32                                    │

│ 1\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\20 │

│ 231029-1257-0249-4938-47e4cae5ab93\\main.spi"}} / result.Length:             │

│ 00:00:28 #188 [Debug] sendJson / port: 13805 / json:                         │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1257-0249-4938-47e4cae5ab93\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:28 #189 [Verbose] > Building                                           │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0249-4938-47e4c │

│ ae5ab93\main.spi                                                             │

│ 00:00:29 #191 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:29 #192 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [(The main function should not have a forall., TracedError { message │

│ = "The main function should not have a forall."                              │

│               trace = [] })] / typeErrorCount: 0                             │

│ 00:00:29 #193 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - <null>                                                  │

│       - [ The main function should not have a forall. ]                      │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""

inl init_series start end inc =

    inl total : f64 = conv ((end - start) / inc) + 1

    listm.init total (conv >> (*) inc >> (+) start) : list f64



type integration = (f64 -> f64) -> f64 -> f64 -> f64



inl integral dt : integration =

    fun f a b =>

        init_series (a + dt / 2) (b - dt / 2) dt

        |> listm.map (f >> (*) dt)

        |> listm.fold (+) 0



inl main () =

    integral 0.1 (fun x => x ** 2) 0 1

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

|> _equal (

    Some (

        Some "0.3325000000000001\n",

        [[]]

    )

)



╭─[ 2.43s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:29 #194 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:29 #195 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:29 #196 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:29 #197 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:30 #199 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:30 #200 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:30 #201 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:30 #202 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:30 #203 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:30 #204 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:30 #205 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:30 #206 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"\ninl init_series start end inc =\n    inl total :   │

│ f64 = conv ((end - start) / inc) \u002B 1\n    listm.init total (conv        │

│ \u003E\u003E (*) inc \u003E\u003E (\u002B) start) : list f64\n\ntype         │

│ integration = (f64 -\u003E f64) -\u003E f64 -\u003E f64 -\u003E f64\n\ninl   │

│ integral dt : integration =\n    fun f a b =\u003E\n        init_series (a   │

│ \u002B dt / 2) (b - dt / 2) dt\n        |\u003E listm.map (f \u003E\u003E    │

│ (*) dt)\n        |\u003E listm.fold (\u002B) 0\n\ninl main () =\n            │

│ integral 0.1 (fun x =\u003E x ** 2) 0                                        │

│ 1\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\20 │

│ 231029-1257-0476-7619-7b31ebbf3326\\main.spi"}} / result.Length:             │

│ 00:00:30 #207 [Debug] sendJson / port: 13805 / json:                         │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1257-0476-7619-7b31ebbf3326\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:30 #208 [Verbose] > Building                                           │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0476-7619-7b31e │

│ bbf3326\main.spi                                                             │

│ 00:00:31 #210 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:31 #211 [Debug] buildFile / takeWhileInclusive / fsxContent:           │

│ Some(0.3325000000000001                                                      │

│ ) / errors: [] / typeErrorCount: 0                                           │

│ 00:00:31 #212 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│ FSharpOption<Tuple<FSharpOption<String>,FSharpList<String>>>                 │

│       Value:       - FSharpOption<String>                                    │

│           Value: 0.3325000000000001                                          │

│                                                                              │

│       - [  ]                                                                 │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""

inl init_series start end inc =

    inl total : f64 = conv ((end - start) / inc) + 1

    listm.init total (conv >> (*) inc >> (+) start) : list f64



type integration = (f64 -> f64) -> f64 -> f64 -> f64



inl integral dt : integration =

    fun f a b =>

        init_series (a + dt / 2) (b - dt / 2) dt

        |> listm.map (f >> (*) dt)

        |> listm.fold (+) 0



inl main () =

    integral 0.01 (fun x => x ** 2) 0 1

"""

|> buildCode 10000 None

|> Async.runWithTimeout 10000

|> Option.map (fun (fsxContent, errors) -> fsxContent, errors |> List.map fst)

// |> _equal None

// |> fun x -> printfn $"{x.ToDisplayString ()}"



╭─[ 6.95s - return value ]─────────────────────────────────────────────────────╮

│ <details open="open" class="dni-treeview"><summary><span                     │

│ class="dni-code-hint"><code>Some((, [                                        │

│ ]))</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><t │

│ d>Value</td><td><details class="dni-treeview"><summary><span                 │

│ class="dni-code-hint"><code>(, [                                             │

│ ])</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

│ >Item1</td><td><div                                                          │

│ class="dni-plaintext"><pre>&lt;null&gt;</pre></div></td></tr><tr><td>Item2</ │

│ td><td><div class="dni-plaintext"><pre>[                                     │

│ ]</pre></div></td></tr></tbody></table></div></details></td></tr></tbody></t │

│ able></div></details><style>                                                 │

│ .dni-code-hint {                                                             │

│     font-style: italic;                                                      │

│     overflow: hidden;                                                        │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview {                                                              │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview td {                                                           │

│     ve...                                                                    │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 6.97s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:31 #213 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:31 #214 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:buildCode@3-983> }                                      │

│ 00:00:32 #216 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:32 #217 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:32 #218 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:32 #219 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:32 #220 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:32 #221 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:32 #222 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:32 #223 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:32 #224 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"\ninl init_series start end inc =\n    inl total :   │

│ f64 = conv ((end - start) / inc) \u002B 1\n    listm.init total (conv        │

│ \u003E\u003E (*) inc \u003E\u003E (\u002B) start) : list f64\n\ntype         │

│ integration = (f64 -\u003E f64) -\u003E f64 -\u003E f64 -\u003E f64\n\ninl   │

│ integral dt : integration =\n    fun f a b =\u003E\n        init_series (a   │

│ \u002B dt / 2) (b - dt / 2) dt\n        |\u003E listm.map (f \u003E\u003E    │

│ (*) dt)\n        |\u003E listm.fold (\u002B) 0\n\ninl main () =\n            │

│ integral 0.01 (fun x =\u003E x ** 2) 0                                       │

│ 1\n","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\20 │

│ 231029-1257-0719-1936-133d996e7cde\\main.spi"}} / result.Length:             │

│ 00:00:32 #225 [Debug] sendJson / port: 13805 / json:                         │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\Users\\i574n\\AppData\\L │

│ ocal\\Temp\\!dotnet-repl\\20231029-1257-0719-1936-133d996e7cde\\main.spi"}}  │

│ / result.Length:                                                             │

│ 00:00:33 #227 [Verbose] > Building                                           │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0719-1936-133d9 │

│ 96e7cde\main.spi                                                             │

│ 00:00:33 #228 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:34 #229 [Verbose] > Stack overflow.                                    │

│ 00:00:34 #230 [Verbose] > Repeat 3 times:                                    │

│ 00:00:34 #231 [Verbose] > --------------------------------                   │

│ 00:00:34 #232 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #233 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #234 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #235 [Verbose] > --------------------------------                   │

│ 00:00:34 #236 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #237 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #238 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #239 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #240 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #241 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #242 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #243 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #244 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #245 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #246 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #247 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #248 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #249 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #250 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #251 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #252 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #254 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #255 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #256 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #257 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #258 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #259 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #260 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #261 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #262 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #263 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #264 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #265 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #266 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #267 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #268 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #269 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #270 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #271 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #272 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #273 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #274 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #275 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #276 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #277 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #278 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #279 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #280 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #281 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #282 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #283 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #284 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #285 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #286 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #287 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #288 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #289 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #290 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #291 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #292 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #293 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #294 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #295 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #296 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #297 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #298 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #299 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #300 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #301 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #302 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #303 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #304 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #305 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #306 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #307 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #308 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #309 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #310 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #311 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #312 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #313 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #314 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #315 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #316 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #317 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #318 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #319 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #320 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #321 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #322 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #323 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #324 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #325 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #326 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #327 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #328 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #329 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #330 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #331 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #332 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #333 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #334 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #335 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #336 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #337 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #338 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #339 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #340 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #341 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #342 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #343 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #344 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #345 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #346 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #347 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #348 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #349 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #350 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #351 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #352 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #353 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #354 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #355 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #356 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #357 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #358 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #359 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #360 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #361 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #362 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #363 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #364 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #365 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #366 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #367 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #368 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #369 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #370 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #371 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #372 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #373 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #374 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #375 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #376 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #377 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #378 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #379 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #380 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #381 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #382 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #383 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #384 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #385 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #386 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #387 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #388 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #389 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #390 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #391 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #392 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #393 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #394 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #395 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #396 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #397 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #398 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #399 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #400 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #401 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #402 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #403 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #404 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #405 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #406 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #407 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #408 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #409 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #410 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #411 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #412 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #413 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #414 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #415 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #416 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #417 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #418 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #419 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #420 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #421 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #422 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #423 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #424 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #425 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #426 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #427 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #428 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #429 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #430 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #431 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #432 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #433 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #434 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #435 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #436 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #437 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #438 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #439 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #440 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #441 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #442 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #443 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #444 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #445 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #446 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #447 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #448 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #449 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #450 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #451 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #452 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #453 [Verbose] >    at                                              │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)         │

│ 00:00:34 #454 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv,     │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #455 [Verbose] >    at                                              │

│ Spiral.PartEval.Main.term_scope''@574(TopEnv,                                │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #456 [Verbose] >    at Spiral.PartEval.Main.term_scope'@578(TopEnv, │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv,                │

│ System.Collections.Generic.Dictionary`2<TypedOp,Data>, E)                    │

│ 00:00:34 #457 [Verbose] >    at Spiral.PartEval.Main.term_scope@579(TopEnv,  │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)             │

│ 00:00:34 #458 [Verbose] >    at Spiral.PartEval.Main.peval(TopEnv, E)        │

│ 00:00:34 #459 [Verbose] >    at                                              │

│ Spiral.Supervisor.file_build$cont@383(System.String, SupervisorState,        │

│ PrepassTopEnv, Microsoft.FSharp.Core.FSharpOption`1<E>,                      │

│ Microsoft.FSharp.Core.Unit)                                                  │

│ 00:00:34 #460 [Verbose] >    at                                              │

│ Spiral.Supervisor.x2yJ@1-28(SupervisorErrorSources, System.String,           │

│ System.String, SupervisorState, PrepassTopEnv)                               │

│ 00:00:34 #461 [Verbose] >    at                                              │

│ Spiral.Supervisor+x2yJ@380-41.Do(PrepassTopEnv)                              │

│ 00:00:34 #462 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #463 [Verbose] >    at Hopac.Job+result@1000-1[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #464 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #465 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #466 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #467 [Verbose] >    at Hopac.Job+result@1000-1[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #468 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #469 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #470 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #471 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #472 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #473 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #474 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #475 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #476 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #477 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #478 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #479 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #480 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #481 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #482 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #483 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #484 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #485 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #486 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #487 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #488 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #489 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #490 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #491 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #492 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #493 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #494 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #495 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #496 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #497 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #498 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #499 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #500 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #501 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #502 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #503 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #504 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #505 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #506 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #507 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #508 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #509 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #510 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #511 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #512 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #513 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #514 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #515 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #516 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #517 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #518 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #519 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #520 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #521 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #522 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #523 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #524 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #525 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #526 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #527 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #528 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #529 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #530 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #531 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #532 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #533 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #534 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #535 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #536 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #537 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon,           │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)                  │

│ 00:00:34 #538 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #539 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #540 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #541 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #542 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #543 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #544 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #545 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #546 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #547 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #548 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #549 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #550 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #551 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #552 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #553 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #554 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon,       │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #555 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #556 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #557 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)                                                              │

│ 00:00:34 #558 [Verbose] >    at Hopac.Promise`1+Fulfill[[System.__Canon,     │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #559 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)                                                              │

│ 00:00:34 #560 [Verbose] >    at Hopac.Core.Cont.Do[[System.__Canon,          │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)                                     │

│ 00:00:34 #561 [Verbose] >    at Hopac.Promise`1[[System.__Canon,             │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #562 [Verbose] >    at Hopac.Core.JobCont`2[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib,    │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)                                           │

│ 00:00:34 #563 [Verbose] >    at Hopac.Core.JobWork`1[[System.__Canon,        │

│ System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,                    │

│ PublicKeyToken=7cec85d7bea7798e]].DoWork(Hopac.Core.Worker ByRef)            │

│ 00:00:34 #564 [Verbose] >    at Hopac.Core.Worker.Run(Hopac.Scheduler,       │

│ Int32)                                                                       │

│ 00:00:34 #565 [Verbose] >    at Hopac.Platform.Scheduler+thread@30.Invoke()  │

│ 00:00:34 #566 [Verbose] >    at                                              │

│ System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionCont │

│ ext, System.Threading.ContextCallback, System.Object)                        │

│ 00:00:34 #567 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:35 #569 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:36 #571 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:37 #573 [Debug] buildFile / takeWhileInclusive / fsxContent:  /        │

│ errors: [] / typeErrorCount: 0                                               │

│ 00:00:38 #575 [Debug] executeAsync / exitCode: -1073741571 / output.Length:  │

│ 177108                                                                       │

│ 00:00:38 #576 [Debug] awaitCompiler / exitCode: -1073741571 / result: pwd:   │

│ C:\home\git\polyglot\apps\spiral                                             │

│ dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language  │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ Server bound to: http://localhost:13805                                      │

│ Building                                                                     │

│ C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1257-0719-1936-133d9 │

│ 96e7cde\main.spi                                                             │

│ [Stack overflow.]                                                            │

│ [Repeat 3 times:]                                                            │

│ [--------------------------------]                                           │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [--------------------------------]                                           │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at                                                                       │

│ System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr,     │

│ Void (IntPtr, Byte ByRef,                                                    │

│ System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]        │

│ [   at Spiral.PartEval.Main.term@684-65(TopEnv,                              │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term_scope''@574(TopEnv,                         │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.term_scope'@578(TopEnv,                          │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv,                │

│ System.Collections.Generic.Dictionary`2<TypedOp,Data>, E)]                   │

│ [   at Spiral.PartEval.Main.term_scope@579(TopEnv,                           │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[                 │

│ ]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[           │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOpti │

│ on`1<System.String>>>,HashConsTable>>,                                       │

│ System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[                 │

│ ],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind │

│ []>>>,HashConsTable>>,                                                       │

│ System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections. │

│ Generic.Dictionary`2<ConsedNode`1<Ty[                                        │

│ ]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>,                │

│ Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Micr │

│ osoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]            │

│ [   at Spiral.PartEval.Main.peval(TopEnv, E)]                                │

│ [   at Spiral.Supervisor.file_build$cont@383(System.String, SupervisorState, │

│ PrepassTopEnv, Microsoft.FSharp.Core.FSharpOption`1<E>,                      │

│ Microsoft.FSharp.Core.Unit)]                                                 │

│ [   at Spiral.Supervisor.x2yJ@1-28(SupervisorErrorSources, System.String,    │

│ System.String, SupervisorState, PrepassTopEnv)]                              │

│ [   at Spiral.Supervisor+x2yJ@380-41.Do(PrepassTopEnv)]                      │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib,            │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>,               │

│ Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]                 │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib,        │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].Do(Hopac.Core.Worker ByRef,                │

│ System.__Canon)]                                                             │

│ [   at Hopac.Promise`1+Fulfill[[System.__Canon, System.Private.CoreLib,      │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef,            │

│ System.__Canon)]                                                             │

│ [   at Hopac.Core.Cont.Do[[System.__Canon, System.Private.CoreLib,           │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]](Hopac.Core.Cont`1<System.__Canon>,         │

│ Hopac.Core.Worker ByRef, System.__Canon)]                                    │

│ [   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib,              │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobCont`2[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[         │

│ System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral,    │

│ PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef,             │

│ Hopac.Core.Cont`1<System.__Canon>)]                                          │

│ [   at Hopac.Core.JobWork`1[[System.__Canon, System.Private.CoreLib,         │

│ Version=8.0.0.0, Culture=neutral,                                            │

│ PublicKeyToken=7cec85d7bea7798e]].DoWork(Hopac.Core.Worker ByRef)]           │

│ [   at Hopac.Core.Worker.Run(Hopac.Scheduler, Int32)]                        │

│ [   at Hopac.Platform.Scheduler+thread@30.Invoke()]                          │

│ [   at                                                                       │

│ System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionCont │

│ ext, System.Threading.ContextCallback, System.Object)]                       │

│ 00:00:38 #577 [Critical] buildFile / error: System.AggregateException: One   │

│ or more errors occurred. (One or more errors occurred. (A task was           │

│ canceled.))                                                                  │

│ 00:00:38 #578 [Debug] watchWithFilter / Disposing watch stream / filter:     │

│ FileName, LastWrite                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## getFileTokenRange                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getFileTokenRange port cancellationToken path = async {

    let fullPath = path |> System.IO.Path.GetFullPath

    let! code = fullPath |> FileSystem.readAllTextAsync

    let lines = code |> String.split [[| '\n' |]]



    let token, disposable = Threading.newDisposableToken cancellationToken

    use _ = disposable



    let! serverPort, _errors, ct, disposable = awaitCompiler port (Some token)

    use _ = disposable



    let fileOpenObj = {| FileOpen = {| uri = fullPath |> getFileUri; spiText = 

code |} |}

    let! _fileOpenResult = fileOpenObj |> sendObj serverPort



    let fileTokenRangeObj =

        {|

            FileTokenRange =

                {|

                    uri = fullPath |> getFileUri

                    range =

                        [[|

                            {| line = 0; character = 0 |}

                            {| line = lines.Length - 1; character = 

lines.[[lines.Length - 1]].Length |}

                        |]]

                |}

        |}

    let! fileTokenRangeResult =

        fileTokenRangeObj

        |> sendObj serverPort

        |> Async.withCancellationToken ct



    return fileTokenRangeResult |> Option.map FSharp.Json.Json.deserialize<int 

array>

}



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## getCodeTokenRange                                                         │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let inline getCodeTokenRange cancellationToken code = async {

    let! mainPath, disposable = persistCode code

    use _ = disposable

    let port = getCompilerPort ()

    return! mainPath |> getFileTokenRange port cancellationToken

}



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""inl main () = ()"""

|> getCodeTokenRange None

|> Async.runWithTimeout 10000

|> Option.flatten

|> _equal (Some [[| 0; 0; 3; 7; 0; 0; 4; 4; 0; 0; 0; 5; 1; 8; 0; 0; 1; 1; 8; 0; 

0; 2; 1; 4; 0; 0;

2; 1; 8; 0; 0; 1; 1; 8; 0 |]])



╭─[ 4.60s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:49 #589 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:49 #590 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:it@4-434> }                                             │

│ 00:00:49 #592 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:49 #593 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:49 #594 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:49 #595 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:50 #596 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:50 #597 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:50 #598 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:50 #599 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"inl main () =                                        │

│ ()","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\202 │

│ 31029-1257-2448-4852-446520fcbcfb\\main.spi"}} / result.Length:              │

│ 00:00:50 #601 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileTokenRange":{"range":[                                                 │

│ {"character":0,"line":0},{"character":16,"line":0}],"uri":"file:///C:\\Users │

│ \\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\20231029-1257-2448-4852-446520f │

│ cbcfb\\main.spi"}} / result.Length: Some(213)                                │

│ FSharpOption<Int32[]>                                                        │

│       Value: [ 0, 0, 3, 7, 0, 0, 4, 4, 0, 0, 0, 5, 1, 8, 0, 0, 1, 1, 8, 0,   │

│ 0, 2, 1, 4, 0, 0, 2, 1, 8, 0, 0, 1, 1, 8, 0 ]                                │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



"""inl main () = 1i32"""

|> getCodeTokenRange None

|> Async.runWithTimeout 10000

|> Option.flatten

|> _equal (Some [[| 0; 0; 3; 7; 0; 0; 4; 4; 0; 0; 0; 5; 1; 8; 0; 0; 1; 1; 8; 0; 

0; 2; 1; 4; 0; 0;

2; 1; 3; 0; 0; 1; 3; 12; 0 |]])



╭─[ 4.76s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:54 #605 [Debug] runWithTimeoutAsync / timeout: 60                      │

│ 00:00:54 #606 [Debug] executeAsync / options: { Command =                    │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:it@4-801> }                                             │

│ 00:00:54 #607 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral              │

│ 00:00:54 #608 [Verbose] > dll_path:                                          │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:54 #610 [Debug] runWithTimeoutAsync / timeout: 500                     │

│ 00:00:54 #611 [Verbose] waitForPortAccess / port: 13805 / retry: 0           │

│ 00:00:54 #612 [Debug] sendJson / port: 13805 / json: {"Ping":true} /         │

│ result.Length:                                                               │

│ 00:00:54 #613 [Verbose] awaitCompiler / Ping / result: Some(null) / port:    │

│ 13805 / retry: 0                                                             │

│ 00:00:54 #614 [Verbose] > Server bound to: http://localhost:13805            │

│ 00:00:54 #615 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileOpen":{"spiText":"inl main () =                                        │

│ 1i32","uri":"file:///C:\\Users\\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\2 │

│ 0231029-1257-2928-2839-2edeff894abd\\main.spi"}} / result.Length:            │

│ 00:00:55 #616 [Debug] sendJson / port: 13805 / json:                         │

│ {"FileTokenRange":{"range":[                                                 │

│ {"character":0,"line":0},{"character":18,"line":0}],"uri":"file:///C:\\Users │

│ \\i574n\\AppData\\Local\\Temp\\!dotnet-repl\\20231029-1257-2928-2839-2edeff8 │

│ 94abd\\main.spi"}} / result.Length: Some(214)                                │

│ FSharpOption<Int32[]>                                                        │

│       Value: [ 0, 0, 3, 7, 0, 0, 4, 4, 0, 0, 0, 5, 1, 8, 0, 0, 1, 1, 8, 0,   │

│ 0, 2, 1, 4, 0, 0, 2, 1, 3, 0, 0, 1, 3, 12, 0 ]                               │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Arguments                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

[[<RequireQualifiedAccess>]]

type Arguments =

    | BuildFile of string * string

    | FileTokenRange of string * string

    | ExecuteCommand of string

    | Timeout of int

    | Port of int



    interface Argu.IArgParserTemplate with

        member s.Usage =

            match s with

            | BuildFile _ -> nameof BuildFile

            | FileTokenRange _ -> nameof FileTokenRange

            | ExecuteCommand _ -> nameof ExecuteCommand

            | Timeout _ -> nameof Timeout

            | Port _ -> nameof Port



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## main                                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let main args =

    let argsMap = args |> Runtime.parseArgsMap<Arguments>



    let buildFileActions =

        argsMap

        |> Map.tryFind (nameof Arguments.BuildFile)

        |> Option.defaultValue [[]]

        |> List.choose (function

            | Arguments.BuildFile (inputPath, outputPath) -> Some (inputPath, 

outputPath)

            | _ -> None

        )



    let fileTokenRangeActions =

        argsMap

        |> Map.tryFind (nameof Arguments.FileTokenRange)

        |> Option.defaultValue [[]]

        |> List.choose (function

            | Arguments.FileTokenRange (inputPath, outputPath) -> Some 

(inputPath, outputPath)

            | _ -> None

        )



    let executeCommandActions =

        argsMap

        |> Map.tryFind (nameof Arguments.ExecuteCommand)

        |> Option.defaultValue [[]]

        |> List.choose (function

            | Arguments.ExecuteCommand command -> Some command

            | _ -> None

        )



    let timeout =

        match argsMap |> Map.tryFind (nameof Arguments.Timeout) with

        | Some [[ Arguments.Timeout timeout ]] -> timeout

        | _ -> 60000 * 60



    let port =

        match argsMap |> Map.tryFind (nameof Arguments.Port) with

        | Some [[ Arguments.Port port ]] -> Some port

        | _ -> None



    async {

        let! buildFileResult =

            buildFileActions

            |> List.map (fun (inputPath, outputPath) -> async {

                let port = port |> Option.defaultWith getCompilerPort

                let! outputCode, errors = inputPath |> buildFile timeout port 

None

                

                errors

                |> List.map snd

                |> List.iter (fun error ->

                    trace Critical (fun () -> $"main / error: {error}") 

getLocals

                )



                match outputCode with

                | Some outputCode ->

                    do! outputCode |> FileSystem.writeAllTextAsync outputPath

                    return 0

                | None ->

                    return 1

            })

            |> Async.Sequential



        let! fileTokenRangeResult =

            fileTokenRangeActions

            |> List.map (fun (inputPath, outputPath) -> async {

                let port = port |> Option.defaultWith getCompilerPort

                let! tokenRange = inputPath |> getFileTokenRange port None

                match tokenRange with

                | Some tokenRange ->

                    do! tokenRange |> FSharp.Json.Json.serialize |> 

FileSystem.writeAllTextAsync outputPath

                    return 0

                | None ->

                    return 1

            })

            |> Async.Sequential

        

        let! executeCommandResult =

            executeCommandActions

            |> List.map (fun command -> async {

                let port = port |> Option.defaultWith getCompilerPort



                let localToken, disposable = Threading.newDisposableToken None

                use _ = disposable



                let! serverPort, _errors, compilerToken, disposable = 

awaitCompiler port (Some localToken)

                use _ = disposable

                

                let! exitCode, result =

                    Runtime.executeWithOptionsAsync

                        {

                            Command = command

                            CancellationToken = Some compilerToken

                            WorkingDirectory = None

                            OnLine = None

                        }



                trace Debug (fun () -> $"main / executeCommand / exitCode: 

{exitCode}") getLocals



                return exitCode

            })

            |> Async.Sequential

            

        return

            [[| buildFileResult; fileTokenRangeResult; executeCommandResult |]]

            |> Array.collect id

            |> Array.sum

    }

    |> Async.runWithTimeout timeout

    |> Option.defaultValue 1



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let args =

    System.Environment.GetEnvironmentVariable "ARGS"

    |> Runtime.splitArgs

    |> Seq.toArray



match args with

| [[||]] -> 0

| args -> if main args = 0 then 0 else failwith "main failed"



╭─[ 28.69ms - return value ]───────────────────────────────────────────────────╮

│ <div class="dni-plaintext"><pre>0</pre></div><style>                         │

│ .dni-code-hint {                                                             │

│     font-style: italic;                                                      │

│     overflow: hidden;                                                        │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview {                                                              │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview td {                                                           │

│     vertical-align: top;                                                     │

│     text-align: start;                                                       │

│ }                                                                            │

│ details.dni-treeview {                                                       │

│     padding-left: 1em;                                                       │

│ }                                                                            │

│ table td {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ table tr {                                                                   │

│     vertical-align: top;                                                     │

│     margin: 0em 0px;                                                         │

│ }                                                                            │

│ table tr td pre                                                              │

│ {                                                                            │

│     vertical-align: top !important;                                          │

│     margin: 0em 0px !important;                                              │

│ }                                                                            │

│ table th {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ </style>                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook Supervisor.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 846256 bytes to Supervisor.dib.html

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: Tasks.dib

00:00:00 #1 [Debug] writeDibCode / output: Fs / path: Supervisor.dib

00:00:00 #3 [Debug] parseDibCode / output: Fs / file: Supervisor.dib

00:00:00 #3 [Debug] parseDibCode / output: Spi / file: Tasks.dib

00:00:00 #1 [Debug] persistCodeProject / packages: [Argu; FSharp.Control.AsyncSeq; FSharp.Json; ... ] / modules: [lib/fsharp/Common.fs; lib/fsharp/CommonFSharp.fs; lib/fsharp/Threading.fs; ... ] / path: C:\home\git\polyglot\apps\spiral / name: Supervisor / code.Length: 18683

00:00:00 #2 [Debug] buildProject / fullPath: C:\home\git\polyglot\apps\spiral\target\Supervisor.fsproj

00:00:00 #3 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\spiral\target\Supervisor.fsproj" --configuration Release --output ../dist --runtime linux-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\spiral\target"

  CancellationToken = None

  OnLine = None }

00:00:00 #4 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:00 #5 [Verbose] >   Determining projects to restore...

00:00:01 #6 [Verbose] >   Restored C:\home\git\polyglot\apps\spiral\target\Supervisor.fsproj (in 459 ms).

00:00:01 #7 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\spiral\target\Supervisor.fsproj]

00:00:13 #8 [Verbose] >   Supervisor -> C:\home\git\polyglot\apps\spiral\target\bin\Release\net8.0\linux-x64\Supervisor.dll

00:00:14 #9 [Verbose] >   Supervisor -> C:\home\git\polyglot\apps\spiral\dist\

00:00:14 #10 [Debug] executeAsync / exitCode: 0 / output.Length: 632

00:00:14 #11 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\spiral\target\Supervisor.fsproj" --configuration Release --output ../dist --runtime win-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\spiral\target"

  CancellationToken = None

  OnLine = None }

00:00:15 #12 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:15 #13 [Verbose] >   Determining projects to restore...

00:00:16 #14 [Verbose] >   Restored C:\home\git\polyglot\apps\spiral\target\Supervisor.fsproj (in 411 ms).

00:00:16 #15 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\spiral\target\Supervisor.fsproj]

00:00:28 #16 [Verbose] >   Supervisor -> C:\home\git\polyglot\apps\spiral\target\bin\Release\net8.0\win-x64\Supervisor.dll

00:00:36 #17 [Verbose] >   Supervisor -> C:\home\git\polyglot\apps\spiral\dist\

00:00:36 #18 [Debug] executeAsync / exitCode: 0 / output.Length: 630

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Tasks.dib -Retries 3""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ ## Tasks (Polyglot)                                                          │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1258-3459-5905-5dc958d6f3a5\main.spi

00:00:08 #22 [Verbose] >

00:00:08 #23 [Verbose] > ╭─[ 4.71s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #24 [Verbose] > │ ()                                                                           │

00:00:08 #25 [Verbose] > │                                                                              │

00:00:08 #26 [Verbose] > │                                                                              │

00:00:08 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #28 [Verbose] >

00:00:08 #29 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #30 [Verbose] > inl types () =

00:00:08 #31 [Verbose] >     global "[[<Fable.Core.Erase; Fable.Core.Emit(\"std::string::String\")>]]

00:00:08 #32 [Verbose] > type std_string_String = class end"

00:00:08 #33 [Verbose] >     global "[[<Fable.Core.Erase; Fable.Core.Emit(\"&$0\")>]] type Ref<'T> =

00:00:08 #34 [Verbose] > class end"

00:00:08 #35 [Verbose] >     global "[[<Fable.Core.Erase; Fable.Core.Emit(\"str\")>]] type Str = class

00:00:08 #36 [Verbose] > end"

00:00:08 #37 [Verbose] >

00:00:08 #38 [Verbose] > inl emit_expr forall a t. (args : a) (code : string) : t =

00:00:08 #39 [Verbose] >     real

00:00:08 #40 [Verbose] >         $"Fable.Core.RustInterop.emitRustExpr !args !code" : t

00:00:08 #41 [Verbose] >

00:00:08 #42 [Verbose] >

00:00:08 #43 [Verbose] > nominal std_string = $"std_string_String"

00:00:08 #44 [Verbose] > nominal ref' t = $"Ref<`t>"

00:00:08 #45 [Verbose] > nominal str = $"Str"

00:00:08 #46 [Verbose] >

00:00:08 #47 [Verbose] > inl format_debug forall t. (x : t) : std_string =

00:00:08 #48 [Verbose] >     real

00:00:08 #49 [Verbose] >         emit_expr `t `std_string x "format!(\"{:?}\", $0)"

00:00:08 #50 [Verbose] >

00:00:08 #51 [Verbose] > inl format_pretty forall t. (x : t) : std_string =

00:00:08 #52 [Verbose] >     real

00:00:08 #53 [Verbose] >         emit_expr `t `std_string x "format!(\"{:#?}\", $0)"

00:00:08 #54 [Verbose] >

00:00:08 #55 [Verbose] > inl to_std_string (str : ref' str) : std_string =

00:00:08 #56 [Verbose] >     // inl str = join str

00:00:08 #57 [Verbose] >     // // emit_expr () $"\"!str.to_string()\""

00:00:08 #58 [Verbose] >     // // emit_expr () $"\"alloc::string::to_string(!str)\""

00:00:08 #59 [Verbose] >     // emit_expr str "($0).to_string()"

00:00:08 #60 [Verbose] >     emit_expr str $"\"String::from(core::ops::Deref::deref($0))\""

00:00:08 #61 [Verbose] >     // emit_expr str $"\"String::from(*$0)\""

00:00:08 #62 [Verbose] >     // emit_expr () $"\"String::from(!str)\""

00:00:08 #63 [Verbose] >

00:00:08 #64 [Verbose] > inl format forall t. (x : t) : std_string =

00:00:08 #65 [Verbose] >     real

00:00:08 #66 [Verbose] >         inl result : std_string =

00:00:08 #67 [Verbose] >             typecase t with

00:00:08 #68 [Verbose] >             | string => to_std_string x

00:00:08 #69 [Verbose] >             | std_string => x

00:00:08 #70 [Verbose] >             | _ => format_pretty `t x

00:00:08 #71 [Verbose] >         result

00:00:08 #72 [Verbose] >

00:00:08 #73 [Verbose] > inl raw_string_literal (s : string) : ref' str =

00:00:08 #74 [Verbose] >     emit_expr () $"\"r#\\\"\" + !s + \"\\\"#\""

00:00:08 #75 [Verbose] >

00:00:08 #76 [Verbose] > inl (~#) (s : string) : ref' str =

00:00:08 #77 [Verbose] >     raw_string_literal s

00:00:08 #78 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1258-3726-2627-2479187d55aa\main.spi

00:00:08 #79 [Verbose] >

00:00:08 #80 [Verbose] > ╭─[ 243.18ms - stdout ]────────────────────────────────────────────────────────╮

00:00:08 #81 [Verbose] > │ ()                                                                           │

00:00:08 #82 [Verbose] > │                                                                              │

00:00:08 #83 [Verbose] > │                                                                              │

00:00:08 #84 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #85 [Verbose] >

00:00:08 #86 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #87 [Verbose] > nominal task_name = string

00:00:08 #88 [Verbose] >

00:00:08 #89 [Verbose] > union manual_scheduling =

00:00:08 #90 [Verbose] >     | WithSuggestion

00:00:08 #91 [Verbose] >     | WithoutSuggestion

00:00:08 #92 [Verbose] >

00:00:08 #93 [Verbose] > union recurrency_offset =

00:00:08 #94 [Verbose] >     | Days : i32

00:00:08 #95 [Verbose] >     | Weeks : i32

00:00:08 #96 [Verbose] >     | Months : i32

00:00:08 #97 [Verbose] >

00:00:08 #98 [Verbose] > union day_of_week =

00:00:08 #99 [Verbose] >     | Sunday

00:00:08 #100 [Verbose] >     | Monday

00:00:08 #101 [Verbose] >     | Tuesday

00:00:08 #102 [Verbose] >     | Wednesday

00:00:08 #103 [Verbose] >     | Thursday

00:00:08 #104 [Verbose] >     | Friday

00:00:08 #105 [Verbose] >     | Saturday

00:00:08 #106 [Verbose] >

00:00:08 #107 [Verbose] > union month =

00:00:08 #108 [Verbose] >     | January

00:00:08 #109 [Verbose] >     | February

00:00:08 #110 [Verbose] >     | March

00:00:08 #111 [Verbose] >     | April

00:00:08 #112 [Verbose] >     | May

00:00:08 #113 [Verbose] >     | June

00:00:08 #114 [Verbose] >     | July

00:00:08 #115 [Verbose] >     | August

00:00:08 #116 [Verbose] >     | September

00:00:08 #117 [Verbose] >     | October

00:00:08 #118 [Verbose] >     | November

00:00:08 #119 [Verbose] >     | December

00:00:08 #120 [Verbose] >

00:00:08 #121 [Verbose] > nominal day = i32

00:00:08 #122 [Verbose] > nominal year = i32

00:00:08 #123 [Verbose] >

00:00:08 #124 [Verbose] > union fixed_recurrency =

00:00:08 #125 [Verbose] >     | Weekly : day_of_week

00:00:08 #126 [Verbose] >     | Monthly : day

00:00:08 #127 [Verbose] >     | Yearly : day * month

00:00:08 #128 [Verbose] >

00:00:08 #129 [Verbose] > union recurrency =

00:00:08 #130 [Verbose] >     | Offset : recurrency_offset

00:00:08 #131 [Verbose] >     | Fixed : list fixed_recurrency

00:00:08 #132 [Verbose] >

00:00:08 #133 [Verbose] > union scheduling =

00:00:08 #134 [Verbose] >     | Manual : manual_scheduling

00:00:08 #135 [Verbose] >     | Recurrent : recurrency

00:00:08 #136 [Verbose] >

00:00:08 #137 [Verbose] > type task =

00:00:08 #138 [Verbose] >     {

00:00:08 #139 [Verbose] >         name : task_name

00:00:08 #140 [Verbose] >         scheduling : scheduling

00:00:08 #141 [Verbose] >     }

00:00:08 #142 [Verbose] >

00:00:08 #143 [Verbose] > type date =

00:00:08 #144 [Verbose] >     {

00:00:08 #145 [Verbose] >         year : year

00:00:08 #146 [Verbose] >         month : month

00:00:08 #147 [Verbose] >         day : day

00:00:08 #148 [Verbose] >     }

00:00:08 #149 [Verbose] >

00:00:08 #150 [Verbose] > union status =

00:00:08 #151 [Verbose] >     | Postponed : option ()

00:00:08 #152 [Verbose] >

00:00:08 #153 [Verbose] > type event =

00:00:08 #154 [Verbose] >     {

00:00:08 #155 [Verbose] >         date : date

00:00:08 #156 [Verbose] >         status : status

00:00:08 #157 [Verbose] >     }

00:00:08 #158 [Verbose] >

00:00:08 #159 [Verbose] > type task_template =

00:00:08 #160 [Verbose] >     {

00:00:08 #161 [Verbose] >         task : task

00:00:08 #162 [Verbose] >         events : list event

00:00:08 #163 [Verbose] >     }

00:00:08 #164 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1258-3750-5018-5f36eca40acd\main.spi

00:00:08 #165 [Verbose] >

00:00:08 #166 [Verbose] > ╭─[ 185.61ms - stdout ]────────────────────────────────────────────────────────╮

00:00:08 #167 [Verbose] > │ ()                                                                           │

00:00:08 #168 [Verbose] > │                                                                              │

00:00:08 #169 [Verbose] > │                                                                              │

00:00:08 #170 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #171 [Verbose] >

00:00:08 #172 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #173 [Verbose] > // // test

00:00:08 #174 [Verbose] > // // rust=

00:00:08 #175 [Verbose] >

00:00:08 #176 [Verbose] > types ()

00:00:08 #177 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1258-3768-6895-6fa745a11894\main.spi

00:00:14 #178 [Verbose] >

00:00:14 #179 [Verbose] > ╭─[ 5.41s - return value ]─────────────────────────────────────────────────────╮

00:00:14 #180 [Verbose] > │ .rs output:                                                                  │

00:00:14 #181 [Verbose] > │                                                                              │

00:00:14 #182 [Verbose] > │                                                                              │

00:00:14 #183 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #184 [Verbose] >

00:00:14 #185 [Verbose] > ╭─[ 5.43s - stdout ]───────────────────────────────────────────────────────────╮

00:00:14 #186 [Verbose] > │                                                                              │

00:00:14 #187 [Verbose] > │ .fsx:                                                                        │

00:00:14 #188 [Verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type            │

00:00:14 #189 [Verbose] > │ std_string_String = class end                                                │

00:00:14 #190 [Verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end        │

00:00:14 #191 [Verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end            │

00:00:14 #192 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #193 [Verbose] > │     ()                                                                       │

00:00:14 #194 [Verbose] > │ method0()                                                                    │

00:00:14 #195 [Verbose] > │                                                                              │

00:00:14 #196 [Verbose] > │ .rs:                                                                         │

00:00:14 #197 [Verbose] > │ #![allow(dead_code,)]                                                        │

00:00:14 #198 [Verbose] > │ #![allow(non_camel_case_types,)]                                             │

00:00:14 #199 [Verbose] > │ #![allow(non_snake_case,)]                                                   │

00:00:14 #200 [Verbose] > │ #![allow(non_upper_case_globals,)]                                           │

00:00:14 #201 [Verbose] > │ #![allow(unreachable_code,)]                                                 │

00:00:14 #202 [Verbose] > │ #![allow(unused_attributes,)]                                                │

00:00:14 #203 [Verbose] > │ #![allow(unused_imports,)]                                                   │

00:00:14 #204 [Verbose] > │ #![allow(unused_macros,)]                                                    │

00:00:14 #205 [Verbose] > │ #![allow(unused_parens,)]                                                    │

00:00:14 #206 [Verbose] > │ #![allow(unused_variables,)]                                                 │

00:00:14 #207 [Verbose] > │ pub mod Repl_main {                                                          │

00:00:14 #208 [Verbose] > │     use super::*;                                                            │

00:00:14 #209 [Verbose] > │     use fable_library_rust::Native_::on_startup;                             │

00:00:14 #210 [Verbose] > │     pub fn method0() { (); }                                                 │

00:00:14 #211 [Verbose] > │     on_startup!(Repl_main::method0());                                       │

00:00:14 #212 [Verbose] > │ }                                                                            │

00:00:14 #213 [Verbose] > │                                                                              │

00:00:14 #214 [Verbose] > │                                                                              │

00:00:14 #215 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #216 [Verbose] >

00:00:14 #217 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #218 [Verbose] > // // test

00:00:14 #219 [Verbose] > // // rust=

00:00:14 #220 [Verbose] >

00:00:14 #221 [Verbose] > inl get_tasks () : list task_template =

00:00:14 #222 [Verbose] >     [[

00:00:14 #223 [Verbose] >         {

00:00:14 #224 [Verbose] >             task =

00:00:14 #225 [Verbose] >                 {

00:00:14 #226 [Verbose] >                     name = task_name "01"

00:00:14 #227 [Verbose] >                     scheduling = Manual WithSuggestion

00:00:14 #228 [Verbose] >                 }

00:00:14 #229 [Verbose] >             events = [[]]

00:00:14 #230 [Verbose] >         }

00:00:14 #231 [Verbose] >         {

00:00:14 #232 [Verbose] >             task =

00:00:14 #233 [Verbose] >                 {

00:00:14 #234 [Verbose] >                     name = task_name "02"

00:00:14 #235 [Verbose] >                     scheduling = Manual WithSuggestion

00:00:14 #236 [Verbose] >                 }

00:00:14 #237 [Verbose] >             events = [[]]

00:00:14 #238 [Verbose] >         }

00:00:14 #239 [Verbose] >         {

00:00:14 #240 [Verbose] >             task =

00:00:14 #241 [Verbose] >                 {

00:00:14 #242 [Verbose] >                     name = task_name "03"

00:00:14 #243 [Verbose] >                     scheduling = Manual WithSuggestion

00:00:14 #244 [Verbose] >                 }

00:00:14 #245 [Verbose] >             events = [[]]

00:00:14 #246 [Verbose] >         }

00:00:14 #247 [Verbose] >     ]]

00:00:14 #248 [Verbose] >

00:00:14 #249 [Verbose] > types ()

00:00:14 #250 [Verbose] > get_tasks () |> format_pretty |> console.write_line

00:00:14 #251 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1258-4313-1315-156f6a8dbde3\main.spi

00:00:19 #252 [Verbose] >

00:00:19 #253 [Verbose] > ╭─[ 5.48s - return value ]─────────────────────────────────────────────────────╮

00:00:19 #254 [Verbose] > │ .rs output:                                                                  │

00:00:19 #255 [Verbose] > │ UH2_0(                                                                       │

00:00:19 #256 [Verbose] > │     UH0_1,                                                                   │

00:00:19 #257 [Verbose] > │     "01",                                                                    │

00:00:19 #258 [Verbose] > │     US4_0(                                                                   │

00:00:19 #259 [Verbose] > │         US3_0,                                                               │

00:00:19 #260 [Verbose] > │     ),                                                                       │

00:00:19 #261 [Verbose] > │     UH2_0(                                                                   │

00:00:19 #262 [Verbose] > │         UH0_1,                                                               │

00:00:19 #263 [Verbose] > │         "02",                                                                │

00:00:19 #264 [Verbose] > │         US4_0(                                                               │

00:00:19 #265 [Verbose] > │             US3_0,                                                           │

00:00:19 #266 [Verbose] > │         ),                                                                   │

00:00:19 #267 [Verbose] > │         UH2_0(                                                               │

00:00:19 #268 [Verbose] > │             UH0_1,                                                           │

00:00:19 #269 [Verbose] > │             "03",                                                            │

00:00:19 #270 [Verbose] > │             US4_0(                                                           │

00:00:19 #271 [Verbose] > │                 US3_0,                                                       │

00:00:19 #272 [Verbose] > │             ),                                                               │

00:00:19 #273 [Verbose] > │             UH2_1,                                                           │

00:00:19 #274 [Verbose] > │         ),                                                                   │

00:00:19 #275 [Verbose] > │     ),                                                                       │

00:00:19 #276 [Verbose] > │ )                                                                            │

00:00:19 #277 [Verbose] > │                                                                              │

00:00:19 #278 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #279 [Verbose] >

00:00:19 #280 [Verbose] > ╭─[ 5.49s - stdout ]───────────────────────────────────────────────────────────╮

00:00:19 #281 [Verbose] > │                                                                              │

00:00:19 #282 [Verbose] > │ .fsx:                                                                        │

00:00:19 #283 [Verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("std::string::String")>] type            │

00:00:19 #284 [Verbose] > │ std_string_String = class end                                                │

00:00:19 #285 [Verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("&$0")>] type Ref<'T> = class end        │

00:00:19 #286 [Verbose] > │ [<Fable.Core.Erase; Fable.Core.Emit("str")>] type Str = class end            │

00:00:19 #287 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:19 #288 [Verbose] > │     | US0_0                                                                  │

00:00:19 #289 [Verbose] > │     | US0_1                                                                  │

00:00:19 #290 [Verbose] > │     | US0_2                                                                  │

00:00:19 #291 [Verbose] > │     | US0_3                                                                  │

00:00:19 #292 [Verbose] > │     | US0_4                                                                  │

00:00:19 #293 [Verbose] > │     | US0_5                                                                  │

00:00:19 #294 [Verbose] > │     | US0_6                                                                  │

00:00:19 #295 [Verbose] > │     | US0_7                                                                  │

00:00:19 #296 [Verbose] > │     | US0_8                                                                  │

00:00:19 #297 [Verbose] > │     | US0_9                                                                  │

00:00:19 #298 [Verbose] > │     | US0_10                                                                 │

00:00:19 #299 [Verbose] > │     | US0_11                                                                 │

00:00:19 #300 [Verbose] > │ and [<Struct>] US2 =                                                         │

00:00:19 #301 [Verbose] > │     | US2_0                                                                  │

00:00:19 #302 [Verbose] > │     | US2_1                                                                  │

00:00:19 #303 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:19 #304 [Verbose] > │     | US1_0 of f0_0 : US2                                                    │

00:00:19 #305 [Verbose] > │ and UH0 =                                                                    │

00:00:19 #306 [Verbose] > │     | UH0_0 of int32 * US0 * int32 * US1 * UH0                               │

00:00:19 #307 [Verbose] > │     | UH0_1                                                                  │

00:00:19 #308 [Verbose] > │ and [<Struct>] US3 =                                                         │

00:00:19 #309 [Verbose] > │     | US3_0                                                                  │

00:00:19 #310 [Verbose] > │     | US3_1                                                                  │

00:00:19 #311 [Verbose] > │ and [<Struct>] US7 =                                                         │

00:00:19 #312 [Verbose] > │     | US7_0                                                                  │

00:00:19 #313 [Verbose] > │     | US7_1                                                                  │

00:00:19 #314 [Verbose] > │     | US7_2                                                                  │

00:00:19 #315 [Verbose] > │     | US7_3                                                                  │

00:00:19 #316 [Verbose] > │     | US7_4                                                                  │

00:00:19 #317 [Verbose] > │     | US7_5                                                                  │

00:00:19 #318 [Verbose] > │     | US7_6                                                                  │

00:00:19 #319 [Verbose] > │ and [<Struct>] US6 =                                                         │

00:00:19 #320 [Verbose] > │     | US6_0 of f0_0 : int32                                                  │

00:00:19 #321 [Verbose] > │     | US6_1 of f1_0 : US7                                                    │

00:00:19 #322 [Verbose] > │     | US6_2 of f2_0 : int32 * f2_1 : US0                                     │

00:00:19 #323 [Verbose] > │ and UH1 =                                                                    │

00:00:19 #324 [Verbose] > │     | UH1_0 of US6 * UH1                                                     │

00:00:19 #325 [Verbose] > │     | UH1_1                                                                  │

00:00:19 #326 [Verbose] > │ and [<Struct>] US8 =                                                         │

00:00:19 #327 [Verbose] > │     | US8_0 of f0_0 : int32                                                  │

00:00:19 #328 [Verbose] > │     | US8_1 of f1_0 : int32                                                  │

00:00:19 #329 [Verbose] > │     | US8_2 of f2_0 : int32                                                  │

00:00:19 #330 [Verbose] > │ and [<Struct>] US5 =                                                         │

00:00:19 #331 [Verbose] > │     | US5_0 of f0_0 : UH1                                                    │

00:00:19 #332 [Verbose] > │     | US5_1 of f1_0 : US8                                                    │

00:00:19 #333 [Verbose] > │ and [<Struct>] US4 =                                                         │

00:00:19 #334 [Verbose] > │     | US4_0 of f0_0 : US3                                                    │

00:00:19 #335 [Verbose] > │     | US4_1 of f1_0 : US5                                                    │

00:00:19 #336 [Verbose] > │ and UH2 =                                                                    │

00:00:19 #337 [Verbose] > │     | UH2_0 of UH0 * string * US4 * UH2                                      │

00:00:19 #338 [Verbose] > │     | UH2_1                                                                  │

00:00:19 #339 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:19 #340 [Verbose] > │     let v0 : UH0 = UH0_1                                                     │

00:00:19 #341 [Verbose] > │     let v1 : string = "01"                                                   │

00:00:19 #342 [Verbose] > │     let v2 : US3 = US3_0                                                     │

00:00:19 #343 [Verbose] > │     let v3 : US4 = US4_0(v2)                                                 │

00:00:19 #344 [Verbose] > │     let v4 : UH0 = UH0_1                                                     │

00:00:19 #345 [Verbose] > │     let v5 : string = "02"                                                   │

00:00:19 #346 [Verbose] > │     let v6 : US3 = US3_0                                                     │

00:00:19 #347 [Verbose] > │     let v7 : US4 = US4_0(v6)                                                 │

00:00:19 #348 [Verbose] > │     let v8 : UH0 = UH0_1                                                     │

00:00:19 #349 [Verbose] > │     let v9 : string = "03"                                                   │

00:00:19 #350 [Verbose] > │     let v10 : US3 = US3_0                                                    │

00:00:19 #351 [Verbose] > │     let v11 : US4 = US4_0(v10)                                               │

00:00:19 #352 [Verbose] > │     let v12 : UH2 = UH2_1                                                    │

00:00:19 #353 [Verbose] > │     let v13 : UH2 = UH2_0(v8, v9, v11, v12)                                  │

00:00:19 #354 [Verbose] > │     let v14 : UH2 = UH2_0(v4, v5, v7, v13)                                   │

00:00:19 #355 [Verbose] > │     let v15 : UH2 = UH2_0(v0, v1, v3, v14)                                   │

00:00:19 #356 [Verbose] > │     let v16 : string = "format!(\"{:#?}\", $0)"                              │

00:00:19 #357 [Verbose] > │     let v17 : std_string_String = Fable.Core.RustInterop.emitRustExpr v15    │

00:00:19 #358 [Verbose] > │ v16                                                                          │

00:00:19 #359 [Verbose] > │     System.Console.WriteLine v17                                             │

00:00:19 #360 [Verbose] > │     ()                                                                       │

00:00:19 #361 [Verbose] > │ method0()                                                                    │

00:00:19 #362 [Verbose] > │                                                                              │

00:00:19 #363 [Verbose] > │ .rs:                                                                         │

00:00:19 #364 [Verbose] > │ #![allow(dead_code,)]                                                        │

00:00:19 #365 [Verbose] > │ #![allow(non_camel_case_types,)]                                             │

00:00:19 #366 [Verbose] > │ #![allow(non_snake_case,)]                                                   │

00:00:19 #367 [Verbose] > │ #![allow(non_upper_case_globals,)]                                           │

00:00:19 #368 [Verbose] > │ #![allow(unreachable_code,)]                                                 │

00:00:19 #369 [Verbose] > │ #![allow(unused_attributes,)]                                                │

00:00:19 #370 [Verbose] > │ #![allow(unused_imports,)]                                                   │

00:00:19 #371 [Verbose] > │ #![allow(unused_macros,)]                                                    │

00:00:19 #372 [Verbose] > │ #![allow(unused_parens,)]                                                    │

00:00:19 #373 [Verbose] > │ #![allow(unused_variables,)]                                                 │

00:00:19 #374 [Verbose] > │ pub mod Repl_main {                                                          │

00:00:19 #375 [Verbose] > │     use super::*;                                                            │

00:00:19 #376 [Verbose] > │     use fable_library_rust::Native_::Any;                                    │

00:00:19 #377 [Verbose] > │     use fable_library_rust::Native_::LrcPtr;                                 │

00:00:19 #378 [Verbose] > │     use fable_library_rust::Native_::on_startup;                             │

00:00:19 #379 [Verbose] > │     use fable_library_rust::String_::string;                                 │

00:00:19 #380 [Verbose] > │     #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]     │

00:00:19 #381 [Verbose] > │     pub enum US0 {                                                           │

00:00:19 #382 [Verbose] > │         US0_0,                                                               │

00:00:19 #383 [Verbose] > │         US0_1,                                                               │

00:00:19 #384 [Verbose] > │         US0_2,                                                               │

00:00:19 #385 [Verbose] > │         US0_3,                                                               │

00:00:19 #386 [Verbose] > │         US0_4,                                                               │

00:00:19 #387 [Verbose] > │         US0_5,                                                               │

00:00:19 #388 [Verbose] > │         US0_6,                                                               │

00:00:19 #389 [Verbose] > │         US0_7,                                                               │

00:00:19 #390 [Verbose] > │         US0_8,                                                               │

00:00:19 #391 [Verbose] > │         US0_9,                                                               │

00:00:19 #392 [Verbose] > │         US0_10,                                                              │

00:00:19 #393 [Verbose] > │         US0_11,                                                              │

00:00:19 #394 [Verbose] > │     }                                                                        │

00:00:19 #395 [Verbose] > │     impl core::fmt::Display for Repl_main::US0 {                             │

00:00:19 #396 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #397 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #398 [Verbose] > │         }                                                                    │

00:00:19 #399 [Verbose] > │     }                                                                        │

00:00:19 #400 [Verbose] > │     #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]     │

00:00:19 #401 [Verbose] > │     pub enum US2 { US2_0, US2_1, }                                           │

00:00:19 #402 [Verbose] > │     impl core::fmt::Display for Repl_main::US2 {                             │

00:00:19 #403 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #404 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #405 [Verbose] > │         }                                                                    │

00:00:19 #406 [Verbose] > │     }                                                                        │

00:00:19 #407 [Verbose] > │     #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]     │

00:00:19 #408 [Verbose] > │     pub enum US1 { US1_0(Repl_main::US2), }                                  │

00:00:19 #409 [Verbose] > │     impl core::fmt::Display for Repl_main::US1 {                             │

00:00:19 #410 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #411 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #412 [Verbose] > │         }                                                                    │

00:00:19 #413 [Verbose] > │     }                                                                        │

00:00:19 #414 [Verbose] > │     #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]           │

00:00:19 #415 [Verbose] > │     pub enum UH0 {                                                           │

00:00:19 #416 [Verbose] > │         UH0_0(i32, Repl_main::US0, i32, Repl_main::US1,                      │

00:00:19 #417 [Verbose] > │               LrcPtr<Repl_main::UH0>),                                       │

00:00:19 #418 [Verbose] > │         UH0_1,                                                               │

00:00:19 #419 [Verbose] > │     }                                                                        │

00:00:19 #420 [Verbose] > │     impl core::fmt::Display for Repl_main::UH0 {                             │

00:00:19 #421 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #422 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #423 [Verbose] > │         }                                                                    │

00:00:19 #424 [Verbose] > │     }                                                                        │

00:00:19 #425 [Verbose] > │     #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]     │

00:00:19 #426 [Verbose] > │     pub enum US3 { US3_0, US3_1, }                                           │

00:00:19 #427 [Verbose] > │     impl core::fmt::Display for Repl_main::US3 {                             │

00:00:19 #428 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #429 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #430 [Verbose] > │         }                                                                    │

00:00:19 #431 [Verbose] > │     }                                                                        │

00:00:19 #432 [Verbose] > │     #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]     │

00:00:19 #433 [Verbose] > │     pub enum US7 { US7_0, US7_1, US7_2, US7_3, US7_4, US7_5, US7_6, }        │

00:00:19 #434 [Verbose] > │     impl core::fmt::Display for Repl_main::US7 {                             │

00:00:19 #435 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #436 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #437 [Verbose] > │         }                                                                    │

00:00:19 #438 [Verbose] > │     }                                                                        │

00:00:19 #439 [Verbose] > │     #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]     │

00:00:19 #440 [Verbose] > │     pub enum US6 {                                                           │

00:00:19 #441 [Verbose] > │         US6_0(i32),                                                          │

00:00:19 #442 [Verbose] > │         US6_1(Repl_main::US7),                                               │

00:00:19 #443 [Verbose] > │         US6_2(i32, Repl_main::US0),                                          │

00:00:19 #444 [Verbose] > │     }                                                                        │

00:00:19 #445 [Verbose] > │     impl core::fmt::Display for Repl_main::US6 {                             │

00:00:19 #446 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #447 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #448 [Verbose] > │         }                                                                    │

00:00:19 #449 [Verbose] > │     }                                                                        │

00:00:19 #450 [Verbose] > │     #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]           │

00:00:19 #451 [Verbose] > │     pub enum UH1 { UH1_0(Repl_main::US6, LrcPtr<Repl_main::UH1>), UH1_1, }   │

00:00:19 #452 [Verbose] > │     impl core::fmt::Display for Repl_main::UH1 {                             │

00:00:19 #453 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #454 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #455 [Verbose] > │         }                                                                    │

00:00:19 #456 [Verbose] > │     }                                                                        │

00:00:19 #457 [Verbose] > │     #[derive(Clone, Copy, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]     │

00:00:19 #458 [Verbose] > │     pub enum US8 { US8_0(i32), US8_1(i32), US8_2(i32), }                     │

00:00:19 #459 [Verbose] > │     impl core::fmt::Display for Repl_main::US8 {                             │

00:00:19 #460 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #461 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #462 [Verbose] > │         }                                                                    │

00:00:19 #463 [Verbose] > │     }                                                                        │

00:00:19 #464 [Verbose] > │     #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]           │

00:00:19 #465 [Verbose] > │     pub enum US5 { US5_0(LrcPtr<Repl_main::UH1>), US5_1(Repl_main::US8), }   │

00:00:19 #466 [Verbose] > │     impl core::fmt::Display for Repl_main::US5 {                             │

00:00:19 #467 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #468 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #469 [Verbose] > │         }                                                                    │

00:00:19 #470 [Verbose] > │     }                                                                        │

00:00:19 #471 [Verbose] > │     #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]           │

00:00:19 #472 [Verbose] > │     pub enum US4 { US4_0(Repl_main::US3), US4_1(Repl_main::US5), }           │

00:00:19 #473 [Verbose] > │     impl core::fmt::Display for Repl_main::US4 {                             │

00:00:19 #474 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #475 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #476 [Verbose] > │         }                                                                    │

00:00:19 #477 [Verbose] > │     }                                                                        │

00:00:19 #478 [Verbose] > │     #[derive(Clone, Debug, PartialEq, PartialOrd, Hash, Eq, Ord,)]           │

00:00:19 #479 [Verbose] > │     pub enum UH2 {                                                           │

00:00:19 #480 [Verbose] > │         UH2_0(LrcPtr<Repl_main::UH0>, string, Repl_main::US4,                │

00:00:19 #481 [Verbose] > │               LrcPtr<Repl_main::UH2>),                                       │

00:00:19 #482 [Verbose] > │         UH2_1,                                                               │

00:00:19 #483 [Verbose] > │     }                                                                        │

00:00:19 #484 [Verbose] > │     impl core::fmt::Display for Repl_main::UH2 {                             │

00:00:19 #485 [Verbose] > │         fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {   │

00:00:19 #486 [Verbose] > │             write!(f, "{}", core::any::type_name::<Self>())                  │

00:00:19 #487 [Verbose] > │         }                                                                    │

00:00:19 #488 [Verbose] > │     }                                                                        │

00:00:19 #489 [Verbose] > │     pub fn method0() {                                                       │

00:00:19 #490 [Verbose] > │         let v17: std::string::String =                                       │

00:00:19 #491 [Verbose] > │             format!("{:#?}",                                                 │

00:00:19 #492 [Verbose] > │ &LrcPtr::new(Repl_main::UH2::UH2_0(LrcPtr::new(Repl_main::UH0::UH0_1),       │

00:00:19 #493 [Verbose] > │                                                                              │

00:00:19 #494 [Verbose] > │ string("01"),                                                                │

00:00:19 #495 [Verbose] > │                                                                              │

00:00:19 #496 [Verbose] > │ Repl_main::US4::US4_0(Repl_main::US3::US3_0),                                │

00:00:19 #497 [Verbose] > │                                                                              │

00:00:19 #498 [Verbose] > │ LrcPtr::new(Repl_main::UH2::UH2_0(LrcPtr::new(Repl_main::UH0::UH0_1),        │

00:00:19 #499 [Verbose] > │                                                                              │

00:00:19 #500 [Verbose] > │ string("02"),                                                                │

00:00:19 #501 [Verbose] > │                                                                              │

00:00:19 #502 [Verbose] > │ Repl_main::US4::US4_0(Repl_main::US3::US3_0),                                │

00:00:19 #503 [Verbose] > │                                                                              │

00:00:19 #504 [Verbose] > │ LrcPtr::new(Repl_main::UH2::UH2_0(LrcPtr::new(Repl_main::UH0::UH0_1),        │

00:00:19 #505 [Verbose] > │                                                                              │

00:00:19 #506 [Verbose] > │ string("03"),                                                                │

00:00:19 #507 [Verbose] > │                                                                              │

00:00:19 #508 [Verbose] > │ Repl_main::US4::US4_0(Repl_main::US3::US3_0),                                │

00:00:19 #509 [Verbose] > │                                                                              │

00:00:19 #510 [Verbose] > │ LrcPtr::new(Repl_main::UH2::UH2_1))))))));                                   │

00:00:19 #511 [Verbose] > │         println!("{0}", &v17,);                                              │

00:00:19 #512 [Verbose] > │         ()                                                                   │

00:00:19 #513 [Verbose] > │     }                                                                        │

00:00:19 #514 [Verbose] > │     on_startup!(Repl_main::method0());                                       │

00:00:19 #515 [Verbose] > │ }                                                                            │

00:00:19 #516 [Verbose] > │                                                                              │

00:00:19 #517 [Verbose] > │                                                                              │

00:00:19 #518 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #519 [Verbose] >

00:00:19 #520 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #521 [Verbose] > // // test

00:00:19 #522 [Verbose] > // // rust=

00:00:19 #523 [Verbose] >

00:00:19 #524 [Verbose] > get_tasks ()

00:00:19 #525 [Verbose] > |> listm'.try_item 0i32

00:00:19 #526 [Verbose] > |> fun (Some task) => task.task.name

00:00:19 #527 [Verbose] > |> _equal (task_name "01")

00:00:19 #528 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1258-4869-6970-606cd0058b91\main.spi

00:00:23 #529 [Verbose] >

00:00:23 #530 [Verbose] > ╭─[ 3.98s - return value ]─────────────────────────────────────────────────────╮

00:00:23 #531 [Verbose] > │ .rs output:                                                                  │

00:00:23 #532 [Verbose] > │                                                                              │

00:00:23 #533 [Verbose] > │                                                                              │

00:00:23 #534 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #535 [Verbose] >

00:00:23 #536 [Verbose] > ╭─[ 3.98s - stdout ]───────────────────────────────────────────────────────────╮

00:00:23 #537 [Verbose] > │                                                                              │

00:00:23 #538 [Verbose] > │ .fsx:                                                                        │

00:00:23 #539 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:23 #540 [Verbose] > │     let v3 : string = "01"                                                   │

00:00:23 #541 [Verbose] > │     let v4 : string = $"_equal / actual: %A{v3} / expected: %A{v3}"          │

00:00:23 #542 [Verbose] > │     ()                                                                       │

00:00:23 #543 [Verbose] > │ method0()                                                                    │

00:00:23 #544 [Verbose] > │                                                                              │

00:00:23 #545 [Verbose] > │ .rs:                                                                         │

00:00:23 #546 [Verbose] > │ #![allow(dead_code,)]                                                        │

00:00:23 #547 [Verbose] > │ #![allow(non_camel_case_types,)]                                             │

00:00:23 #548 [Verbose] > │ #![allow(non_snake_case,)]                                                   │

00:00:23 #549 [Verbose] > │ #![allow(non_upper_case_globals,)]                                           │

00:00:23 #550 [Verbose] > │ #![allow(unreachable_code,)]                                                 │

00:00:23 #551 [Verbose] > │ #![allow(unused_attributes,)]                                                │

00:00:23 #552 [Verbose] > │ #![allow(unused_imports,)]                                                   │

00:00:23 #553 [Verbose] > │ #![allow(unused_macros,)]                                                    │

00:00:23 #554 [Verbose] > │ #![allow(unused_parens,)]                                                    │

00:00:23 #555 [Verbose] > │ #![allow(unused_variables,)]                                                 │

00:00:23 #556 [Verbose] > │ pub mod Repl_main {                                                          │

00:00:23 #557 [Verbose] > │     use super::*;                                                            │

00:00:23 #558 [Verbose] > │     use fable_library_rust::Native_::Any;                                    │

00:00:23 #559 [Verbose] > │     use fable_library_rust::Native_::on_startup;                             │

00:00:23 #560 [Verbose] > │     use fable_library_rust::String_::sprintf;                                │

00:00:23 #561 [Verbose] > │     use fable_library_rust::String_::string;                                 │

00:00:23 #562 [Verbose] > │     pub fn method0() {                                                       │

00:00:23 #563 [Verbose] > │         let v4: string =                                                     │

00:00:23 #564 [Verbose] > │             sprintf!("_equal / actual: {:?} / expected: {:?}",               │

00:00:23 #565 [Verbose] > │ &string("01"),                                                               │

00:00:23 #566 [Verbose] > │                      &string("01"));                                         │

00:00:23 #567 [Verbose] > │         ()                                                                   │

00:00:23 #568 [Verbose] > │     }                                                                        │

00:00:23 #569 [Verbose] > │     on_startup!(Repl_main::method0());                                       │

00:00:23 #570 [Verbose] > │ }                                                                            │

00:00:23 #571 [Verbose] > │                                                                              │

00:00:23 #572 [Verbose] > │                                                                              │

00:00:23 #573 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #574 [Verbose] >

00:00:23 #575 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #576 [Verbose] > // // test

00:00:23 #577 [Verbose] >

00:00:23 #578 [Verbose] > ()

00:00:23 #579 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1258-5268-6887-642c4f630b54\main.spi

00:00:24 #580 [Verbose] >

00:00:24 #581 [Verbose] > ╭─[ 344.45ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #582 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:24 #583 [Verbose] > │     ()                                                                       │

00:00:24 #584 [Verbose] > │ method0()                                                                    │

00:00:24 #585 [Verbose] > │                                                                              │

00:00:24 #586 [Verbose] > │                                                                              │

00:00:24 #587 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #588 [Verbose] > [NbConvertApp] Converting notebook Tasks.dib.ipynb to html

00:00:25 #589 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:25 #590 [Verbose] >   validate(nb)

00:00:26 #591 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:26 #592 [Verbose] >   return _pygments_highlight(

00:00:26 #593 [Verbose] > [NbConvertApp] Writing 303117 bytes to Tasks.dib.html

00:00:26 #594 [Debug] executeAsync / exitCode: 0 / output.Length: 34919

00:00:26 #595 [Debug] main / executeCommand / exitCode: 0

In [ ]:
{ . "$ScriptDir/../apps/plot/build.ps1" } | Invoke-Block
    Finished release [optimized] target(s) in 0.43s

In [ ]:
{ . "$ScriptDir/../lib/spiral/build.ps1" } | Invoke-Block
00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 testing.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # testing                                                                    │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > inl _almost_equal b a =

00:00:03 #19 [Verbose] >     assert (abs (b - a) < 0.00000001) $"$\"_almost_equal / actual: %A{!a}

00:00:03 #20 [Verbose] > expected: %A{!b}\""

00:00:03 #21 [Verbose] >

00:00:03 #22 [Verbose] > inl _equal b a =

00:00:03 #23 [Verbose] >     assert (a = b) $"$\"_equal / actual: %A{!a} / expected: %A{!b}\""

00:00:03 #24 [Verbose] >

00:00:03 #25 [Verbose] > inl _is_less_than b a =

00:00:03 #26 [Verbose] >     assert (b < a) $"$\"_is_less_than / actual: %A{!a} / expected: %A{!b}\""

00:00:03 #27 [Verbose] >

00:00:03 #28 [Verbose] > inl _is_less_than_or_equal b a =

00:00:03 #29 [Verbose] >     assert (b <= a) $"$\"_is_less_than_or_equal / actual: %A{!a} / expected:

00:00:03 #30 [Verbose] > %A{!b}\""

00:00:03 #31 [Verbose] >

00:00:03 #32 [Verbose] > inl _throws (fn : () -> ()) : option string =

00:00:03 #33 [Verbose] >     inl none = None : option string

00:00:03 #34 [Verbose] >     inl some (s : string) = Some s

00:00:03 #35 [Verbose] >     $"try !fn (); !none with ex -> !some ex.Message"

00:00:06 #36 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-0357-5729-5040855e80fe\main.spi

00:00:08 #37 [Verbose] >

00:00:08 #38 [Verbose] > ╭─[ 4.80s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #39 [Verbose] > │ ()                                                                           │

00:00:08 #40 [Verbose] > │                                                                              │

00:00:08 #41 [Verbose] > │                                                                              │

00:00:08 #42 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #43 [Verbose] >

00:00:08 #44 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #45 [Verbose] > inl print_and_return x =

00:00:08 #46 [Verbose] >     $"printfn $\"print_and_return / x: {!x}\""

00:00:08 #47 [Verbose] >     x

00:00:08 #48 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-0635-3581-3d46f65d7967\main.spi

00:00:08 #49 [Verbose] >

00:00:08 #50 [Verbose] > ╭─[ 137.05ms - stdout ]────────────────────────────────────────────────────────╮

00:00:08 #51 [Verbose] > │ ()                                                                           │

00:00:08 #52 [Verbose] > │                                                                              │

00:00:08 #53 [Verbose] > │                                                                              │

00:00:08 #54 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #55 [Verbose] > [NbConvertApp] Converting notebook testing.dib.ipynb to html

00:00:10 #56 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:10 #57 [Verbose] >   validate(nb)

00:00:10 #58 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:10 #59 [Verbose] >   return _pygments_highlight(

00:00:11 #60 [Verbose] > [NbConvertApp] Writing 274807 bytes to testing.dib.html

00:00:11 #61 [Debug] executeAsync / exitCode: 0 / output.Length: 2726

00:00:11 #62 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 common.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # common                                                                     │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-1622-2257-25061938da43\main.spi

00:00:08 #22 [Verbose] >

00:00:08 #23 [Verbose] > ╭─[ 4.91s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #24 [Verbose] > │ ()                                                                           │

00:00:08 #25 [Verbose] > │                                                                              │

00:00:08 #26 [Verbose] > │                                                                              │

00:00:08 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #28 [Verbose] >

00:00:08 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:08 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:08 #31 [Verbose] > │ ## pair                                                                      │

00:00:08 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #33 [Verbose] >

00:00:08 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #35 [Verbose] > inl pair x y =

00:00:08 #36 [Verbose] >     x, y

00:00:08 #37 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-1901-0137-07e1a2504c3d\main.spi

00:00:08 #38 [Verbose] >

00:00:08 #39 [Verbose] > ╭─[ 195.40ms - stdout ]────────────────────────────────────────────────────────╮

00:00:08 #40 [Verbose] > │ ()                                                                           │

00:00:08 #41 [Verbose] > │                                                                              │

00:00:08 #42 [Verbose] > │                                                                              │

00:00:08 #43 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #44 [Verbose] >

00:00:08 #45 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #46 [Verbose] > // // test

00:00:08 #47 [Verbose] >

00:00:08 #48 [Verbose] > pair 1i32 2i32

00:00:08 #49 [Verbose] > |> _equal (1, 2)

00:00:08 #50 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-1920-2089-213a40eb02a8\main.spi

00:00:09 #51 [Verbose] >

00:00:09 #52 [Verbose] > ╭─[ 638.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #53 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:09 #54 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (1, 2)} / expected:       │

00:00:09 #55 [Verbose] > │ %A{struct (1, 2)}"                                                           │

00:00:09 #56 [Verbose] > │     ()                                                                       │

00:00:09 #57 [Verbose] > │ method0()                                                                    │

00:00:09 #58 [Verbose] > │                                                                              │

00:00:09 #59 [Verbose] > │                                                                              │

00:00:09 #60 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #61 [Verbose] >

00:00:09 #62 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #63 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #64 [Verbose] > │ ## ||>                                                                       │

00:00:09 #65 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #66 [Verbose] >

00:00:09 #67 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #68 [Verbose] > inl (||>) (arg1, arg2) fn = arg2 |> fn arg1

00:00:09 #69 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-1986-8680-8316abc11c59\main.spi

00:00:09 #70 [Verbose] >

00:00:09 #71 [Verbose] > ╭─[ 137.23ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #72 [Verbose] > │ ()                                                                           │

00:00:09 #73 [Verbose] > │                                                                              │

00:00:09 #74 [Verbose] > │                                                                              │

00:00:09 #75 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #76 [Verbose] >

00:00:09 #77 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #78 [Verbose] > // // test

00:00:09 #79 [Verbose] >

00:00:09 #80 [Verbose] > (3i32, 2i32)

00:00:09 #81 [Verbose] > ||> fun a b => a - b

00:00:09 #82 [Verbose] > |> _equal 1

00:00:09 #83 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2000-0067-044f48c7dbab\main.spi

00:00:09 #84 [Verbose] >

00:00:09 #85 [Verbose] > ╭─[ 144.57ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #86 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:09 #87 [Verbose] > │     let v0 : string = $"_equal / actual: %A{1} / expected: %A{1}"            │

00:00:09 #88 [Verbose] > │     ()                                                                       │

00:00:09 #89 [Verbose] > │ method0()                                                                    │

00:00:09 #90 [Verbose] > │                                                                              │

00:00:09 #91 [Verbose] > │                                                                              │

00:00:09 #92 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #93 [Verbose] >

00:00:09 #94 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #95 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #96 [Verbose] > │ ## flip                                                                      │

00:00:09 #97 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #98 [Verbose] >

00:00:09 #99 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #100 [Verbose] > inl flip fn a b =

00:00:09 #101 [Verbose] >     fn b a

00:00:09 #102 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2015-1577-1ab75b0dacf1\main.spi

00:00:09 #103 [Verbose] >

00:00:09 #104 [Verbose] > ╭─[ 191.60ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #105 [Verbose] > │ ()                                                                           │

00:00:09 #106 [Verbose] > │                                                                              │

00:00:09 #107 [Verbose] > │                                                                              │

00:00:09 #108 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #109 [Verbose] >

00:00:09 #110 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #111 [Verbose] > // // test

00:00:09 #112 [Verbose] >

00:00:09 #113 [Verbose] > (1i32, 2i32)

00:00:09 #114 [Verbose] > ||> flip pair

00:00:09 #115 [Verbose] > |> _equal (2, 1)

00:00:09 #116 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2035-3514-3978b5c2f7d6\main.spi

00:00:10 #117 [Verbose] >

00:00:10 #118 [Verbose] > ╭─[ 146.10ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #119 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #120 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (2, 1)} / expected:       │

00:00:10 #121 [Verbose] > │ %A{struct (2, 1)}"                                                           │

00:00:10 #122 [Verbose] > │     ()                                                                       │

00:00:10 #123 [Verbose] > │ method0()                                                                    │

00:00:10 #124 [Verbose] > │                                                                              │

00:00:10 #125 [Verbose] > │                                                                              │

00:00:10 #126 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #127 [Verbose] >

00:00:10 #128 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #129 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #130 [Verbose] > │ ## join_body                                                                 │

00:00:10 #131 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #132 [Verbose] >

00:00:10 #133 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #134 [Verbose] > inl join_body body acc x =

00:00:10 #135 [Verbose] >     if var_is x |> not

00:00:10 #136 [Verbose] >     then body acc x

00:00:10 #137 [Verbose] >     else

00:00:10 #138 [Verbose] >         inl acc = dyn acc

00:00:10 #139 [Verbose] >         join body acc x

00:00:10 #140 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2050-5045-5a4a376c426f\main.spi

00:00:10 #141 [Verbose] >

00:00:10 #142 [Verbose] > ╭─[ 158.45ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #143 [Verbose] > │ ()                                                                           │

00:00:10 #144 [Verbose] > │                                                                              │

00:00:10 #145 [Verbose] > │                                                                              │

00:00:10 #146 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #147 [Verbose] >

00:00:10 #148 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #149 [Verbose] > // // test

00:00:10 #150 [Verbose] >

00:00:10 #151 [Verbose] > inl rec fold_list f s = function

00:00:10 #152 [Verbose] >     | Cons (x, x') => fold_list f (f s x) x'

00:00:10 #153 [Verbose] >     | Nil => s

00:00:10 #154 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2066-6651-6a1a820632e1\main.spi

00:00:10 #155 [Verbose] >

00:00:10 #156 [Verbose] > ╭─[ 154.72ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #157 [Verbose] > │ ()                                                                           │

00:00:10 #158 [Verbose] > │                                                                              │

00:00:10 #159 [Verbose] > │                                                                              │

00:00:10 #160 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #161 [Verbose] >

00:00:10 #162 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #163 [Verbose] > // // test

00:00:10 #164 [Verbose] >

00:00:10 #165 [Verbose] > [[5i32; 4; join 3; 2; 1]]

00:00:10 #166 [Verbose] > |> fold_list (+) 0

00:00:10 #167 [Verbose] > |> _equal 15

00:00:10 #168 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2082-8219-804bf0d03167\main.spi

00:00:10 #169 [Verbose] >

00:00:10 #170 [Verbose] > ╭─[ 290.09ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #171 [Verbose] > │ let rec method1 () : int32 =                                                 │

00:00:10 #172 [Verbose] > │     3                                                                        │

00:00:10 #173 [Verbose] > │ and method0 () : unit =                                                      │

00:00:10 #174 [Verbose] > │     let v0 : int32 = method1()                                               │

00:00:10 #175 [Verbose] > │     let v1 : int32 = 9 + v0                                                  │

00:00:10 #176 [Verbose] > │     let v2 : int32 = v1 + 2                                                  │

00:00:10 #177 [Verbose] > │     let v3 : int32 = v2 + 1                                                  │

00:00:10 #178 [Verbose] > │     let v4 : bool = v3 = 15                                                  │

00:00:10 #179 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{15}"          │

00:00:10 #180 [Verbose] > │     let v6 : bool = v4 = false                                               │

00:00:10 #181 [Verbose] > │     if v6 then                                                               │

00:00:10 #182 [Verbose] > │         failwith<unit> v5                                                    │

00:00:10 #183 [Verbose] > │ method0()                                                                    │

00:00:10 #184 [Verbose] > │                                                                              │

00:00:10 #185 [Verbose] > │                                                                              │

00:00:10 #186 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #187 [Verbose] >

00:00:10 #188 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #189 [Verbose] > // // test

00:00:10 #190 [Verbose] >

00:00:10 #191 [Verbose] > [[5i32; 4; join 3; 2; 1]]

00:00:10 #192 [Verbose] > |> fold_list (join_body (+)) 0

00:00:10 #193 [Verbose] > |> _equal 15

00:00:10 #194 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2112-1223-19b87ca2e251\main.spi

00:00:10 #195 [Verbose] >

00:00:10 #196 [Verbose] > ╭─[ 216.34ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #197 [Verbose] > │ let rec method1 () : int32 =                                                 │

00:00:10 #198 [Verbose] > │     3                                                                        │

00:00:10 #199 [Verbose] > │ and method2 (v0 : int32, v1 : int32) : int32 =                               │

00:00:10 #200 [Verbose] > │     let v2 : int32 = v1 + v0                                                 │

00:00:10 #201 [Verbose] > │     v2                                                                       │

00:00:10 #202 [Verbose] > │ and method0 () : unit =                                                      │

00:00:10 #203 [Verbose] > │     let v0 : int32 = method1()                                               │

00:00:10 #204 [Verbose] > │     let v1 : int32 = 9                                                       │

00:00:10 #205 [Verbose] > │     let v2 : int32 = method2(v0, v1)                                         │

00:00:10 #206 [Verbose] > │     let v3 : int32 = v2 + 2                                                  │

00:00:10 #207 [Verbose] > │     let v4 : int32 = v3 + 1                                                  │

00:00:10 #208 [Verbose] > │     let v5 : bool = v4 = 15                                                  │

00:00:10 #209 [Verbose] > │     let v6 : string = $"_equal / actual: %A{v4} / expected: %A{15}"          │

00:00:10 #210 [Verbose] > │     let v7 : bool = v5 = false                                               │

00:00:10 #211 [Verbose] > │     if v7 then                                                               │

00:00:10 #212 [Verbose] > │         failwith<unit> v6                                                    │

00:00:10 #213 [Verbose] > │ method0()                                                                    │

00:00:10 #214 [Verbose] > │                                                                              │

00:00:10 #215 [Verbose] > │                                                                              │

00:00:10 #216 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #217 [Verbose] >

00:00:10 #218 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #219 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #220 [Verbose] > │ ## join_body_unit                                                            │

00:00:10 #221 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #222 [Verbose] >

00:00:10 #223 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #224 [Verbose] > inl join_body_unit body d x =

00:00:10 #225 [Verbose] >     if var_is d |> not

00:00:10 #226 [Verbose] >     then body x

00:00:10 #227 [Verbose] >     else

00:00:10 #228 [Verbose] >         inl x = dyn x

00:00:10 #229 [Verbose] >         join body x

00:00:10 #230 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2134-3488-3f9624d2a026\main.spi

00:00:11 #231 [Verbose] >

00:00:11 #232 [Verbose] > ╭─[ 192.81ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #233 [Verbose] > │ ()                                                                           │

00:00:11 #234 [Verbose] > │                                                                              │

00:00:11 #235 [Verbose] > │                                                                              │

00:00:11 #236 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #237 [Verbose] >

00:00:11 #238 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #239 [Verbose] > // // test

00:00:11 #240 [Verbose] >

00:00:11 #241 [Verbose] > [[5i32; 4; join 3; 2; 1]]

00:00:11 #242 [Verbose] > |> fold_list (fun acc n => join_body_unit ((+) acc) n n) 0

00:00:11 #243 [Verbose] > |> _equal 15

00:00:11 #244 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2154-5446-57f029b2ae09\main.spi

00:00:11 #245 [Verbose] >

00:00:11 #246 [Verbose] > ╭─[ 194.90ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #247 [Verbose] > │ let rec method1 () : int32 =                                                 │

00:00:11 #248 [Verbose] > │     3                                                                        │

00:00:11 #249 [Verbose] > │ and method2 (v0 : int32) : int32 =                                           │

00:00:11 #250 [Verbose] > │     let v1 : int32 = 9 + v0                                                  │

00:00:11 #251 [Verbose] > │     v1                                                                       │

00:00:11 #252 [Verbose] > │ and method0 () : unit =                                                      │

00:00:11 #253 [Verbose] > │     let v0 : int32 = method1()                                               │

00:00:11 #254 [Verbose] > │     let v1 : int32 = method2(v0)                                             │

00:00:11 #255 [Verbose] > │     let v2 : int32 = v1 + 2                                                  │

00:00:11 #256 [Verbose] > │     let v3 : int32 = v2 + 1                                                  │

00:00:11 #257 [Verbose] > │     let v4 : bool = v3 = 15                                                  │

00:00:11 #258 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{15}"          │

00:00:11 #259 [Verbose] > │     let v6 : bool = v4 = false                                               │

00:00:11 #260 [Verbose] > │     if v6 then                                                               │

00:00:11 #261 [Verbose] > │         failwith<unit> v5                                                    │

00:00:11 #262 [Verbose] > │ method0()                                                                    │

00:00:11 #263 [Verbose] > │                                                                              │

00:00:11 #264 [Verbose] > │                                                                              │

00:00:11 #265 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #266 [Verbose] >

00:00:11 #267 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #268 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #269 [Verbose] > │ ## run_target                                                                │

00:00:11 #270 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #271 [Verbose] >

00:00:11 #272 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #273 [Verbose] > union target =

00:00:11 #274 [Verbose] >     | Rust

00:00:11 #275 [Verbose] >     | Fsharp

00:00:11 #276 [Verbose] >

00:00:11 #277 [Verbose] > inl run_target (fn : target -> (() -> _)) =

00:00:11 #278 [Verbose] >     inl rust_fn = fn Rust

00:00:11 #279 [Verbose] >     inl fsharp_fn = fn Fsharp

00:00:11 #280 [Verbose] >

00:00:11 #281 [Verbose] >     $"#if FABLE_COMPILER_RUST"

00:00:11 #282 [Verbose] >     $"!rust_fn ()"

00:00:11 #283 [Verbose] >     $"#else"

00:00:11 #284 [Verbose] >     $"!fsharp_fn ()"

00:00:11 #285 [Verbose] >     $"#endif"

00:00:11 #286 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2175-7503-7f020b93ee1c\main.spi

00:00:11 #287 [Verbose] >

00:00:11 #288 [Verbose] > ╭─[ 153.05ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #289 [Verbose] > │ ()                                                                           │

00:00:11 #290 [Verbose] > │                                                                              │

00:00:11 #291 [Verbose] > │                                                                              │

00:00:11 #292 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #293 [Verbose] >

00:00:11 #294 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #295 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #296 [Verbose] > │ ## format_debug                                                              │

00:00:11 #297 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #298 [Verbose] >

00:00:11 #299 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #300 [Verbose] > inl format_debug x =

00:00:11 #301 [Verbose] >     $"$\"%A{!x}\"" : string

00:00:11 #302 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2190-9072-9e9eea83c293\main.spi

00:00:11 #303 [Verbose] >

00:00:11 #304 [Verbose] > ╭─[ 152.43ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #305 [Verbose] > │ ()                                                                           │

00:00:11 #306 [Verbose] > │                                                                              │

00:00:11 #307 [Verbose] > │                                                                              │

00:00:11 #308 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #309 [Verbose] >

00:00:11 #310 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #311 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #312 [Verbose] > │ ## nameof                                                                    │

00:00:11 #313 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #314 [Verbose] >

00:00:11 #315 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #316 [Verbose] > inl nameof x : string =

00:00:11 #317 [Verbose] >     $"nameof !x"

00:00:11 #318 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2206-0653-06743ff7cd61\main.spi

00:00:11 #319 [Verbose] >

00:00:11 #320 [Verbose] > ╭─[ 167.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #321 [Verbose] > │ ()                                                                           │

00:00:11 #322 [Verbose] > │                                                                              │

00:00:11 #323 [Verbose] > │                                                                              │

00:00:11 #324 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #325 [Verbose] >

00:00:11 #326 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #327 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #328 [Verbose] > │ ## obj_to_string                                                             │

00:00:11 #329 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #330 [Verbose] >

00:00:11 #331 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #332 [Verbose] > inl obj_to_string x : string =

00:00:11 #333 [Verbose] >     $"!x.ToString ()"

00:00:11 #334 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2223-2381-2bb300e0094a\main.spi

00:00:11 #335 [Verbose] >

00:00:11 #336 [Verbose] > ╭─[ 152.52ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #337 [Verbose] > │ ()                                                                           │

00:00:11 #338 [Verbose] > │                                                                              │

00:00:11 #339 [Verbose] > │                                                                              │

00:00:11 #340 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #341 [Verbose] >

00:00:11 #342 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #343 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #344 [Verbose] > │ ## get_environment_variable                                                  │

00:00:11 #345 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #346 [Verbose] >

00:00:11 #347 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #348 [Verbose] > inl get_environment_variable (var : string) : string =

00:00:11 #349 [Verbose] >     $"System.Environment.GetEnvironmentVariable !var"

00:00:12 #350 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-2239-3944-3286a9b9e73d\main.spi

00:00:12 #351 [Verbose] >

00:00:12 #352 [Verbose] > ╭─[ 183.51ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #353 [Verbose] > │ ()                                                                           │

00:00:12 #354 [Verbose] > │                                                                              │

00:00:12 #355 [Verbose] > │                                                                              │

00:00:12 #356 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #357 [Verbose] > [NbConvertApp] Converting notebook common.dib.ipynb to html

00:00:13 #358 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:13 #359 [Verbose] >   validate(nb)

00:00:14 #360 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:14 #361 [Verbose] >   return _pygments_highlight(

00:00:14 #362 [Verbose] > [NbConvertApp] Writing 301673 bytes to common.dib.html

00:00:15 #363 [Debug] executeAsync / exitCode: 0 / output.Length: 18861

00:00:15 #364 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 console.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # console                                                                    │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-3188-8862-813b3f878876\main.spi

00:00:08 #22 [Verbose] >

00:00:08 #23 [Verbose] > ╭─[ 4.89s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #24 [Verbose] > │ ()                                                                           │

00:00:08 #25 [Verbose] > │                                                                              │

00:00:08 #26 [Verbose] > │                                                                              │

00:00:08 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #28 [Verbose] >

00:00:08 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:08 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:08 #31 [Verbose] > │ ## write_line                                                                │

00:00:08 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #33 [Verbose] >

00:00:08 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #35 [Verbose] > inl write_line obj : () =

00:00:08 #36 [Verbose] >     $"System.Console.WriteLine !obj"

00:00:08 #37 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-3461-6139-6340a00cbc00\main.spi

00:00:08 #38 [Verbose] >

00:00:08 #39 [Verbose] > ╭─[ 178.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:08 #40 [Verbose] > │ ()                                                                           │

00:00:08 #41 [Verbose] > │                                                                              │

00:00:08 #42 [Verbose] > │                                                                              │

00:00:08 #43 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #44 [Verbose] >

00:00:08 #45 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #46 [Verbose] > inl write_line_ ~obj : () =

00:00:08 #47 [Verbose] >     $"System.Console.WriteLine !obj"

00:00:08 #48 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-3479-7902-7f16bce05736\main.spi

00:00:08 #49 [Verbose] >

00:00:08 #50 [Verbose] > ╭─[ 186.56ms - stdout ]────────────────────────────────────────────────────────╮

00:00:08 #51 [Verbose] > │ ()                                                                           │

00:00:08 #52 [Verbose] > │                                                                              │

00:00:08 #53 [Verbose] > │                                                                              │

00:00:08 #54 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #55 [Verbose] > [NbConvertApp] Converting notebook console.dib.ipynb to html

00:00:10 #56 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:10 #57 [Verbose] >   validate(nb)

00:00:11 #58 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:11 #59 [Verbose] >   return _pygments_highlight(

00:00:11 #60 [Verbose] > [NbConvertApp] Writing 273326 bytes to console.dib.html

00:00:11 #61 [Debug] executeAsync / exitCode: 0 / output.Length: 3010

00:00:11 #62 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 math.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # math                                                                       │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4437-3718-35a5b362d195\main.spi

00:00:08 #22 [Verbose] >

00:00:08 #23 [Verbose] > ╭─[ 5.16s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #24 [Verbose] > │ ()                                                                           │

00:00:08 #25 [Verbose] > │                                                                              │

00:00:08 #26 [Verbose] > │                                                                              │

00:00:08 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #28 [Verbose] >

00:00:08 #29 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #30 [Verbose] > // // test

00:00:08 #31 [Verbose] >

00:00:08 #32 [Verbose] > 2 * 2 / 0.4f64 |> sqrt

00:00:08 #33 [Verbose] > |> _almost_equal 3.1622776601683795

00:00:08 #34 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4723-2344-2402e823188a\main.spi

00:00:09 #35 [Verbose] >

00:00:09 #36 [Verbose] > ╭─[ 757.63ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #37 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:09 #38 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{3.1622776601683795} /     │

00:00:09 #39 [Verbose] > │ expected: %A{3.1622776601683795}"                                            │

00:00:09 #40 [Verbose] > │     ()                                                                       │

00:00:09 #41 [Verbose] > │ method0()                                                                    │

00:00:09 #42 [Verbose] > │                                                                              │

00:00:09 #43 [Verbose] > │                                                                              │

00:00:09 #44 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #45 [Verbose] >

00:00:09 #46 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #47 [Verbose] > // // test

00:00:09 #48 [Verbose] >

00:00:09 #49 [Verbose] > 2f64 / 3

00:00:09 #50 [Verbose] > |> _almost_equal 0.6666666666666666

00:00:09 #51 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4798-9821-96ab12f452f3\main.spi

00:00:09 #52 [Verbose] >

00:00:09 #53 [Verbose] > ╭─[ 183.28ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #54 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:09 #55 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.6666666666666666} /     │

00:00:09 #56 [Verbose] > │ expected: %A{0.6666666666666666}"                                            │

00:00:09 #57 [Verbose] > │     ()                                                                       │

00:00:09 #58 [Verbose] > │ method0()                                                                    │

00:00:09 #59 [Verbose] > │                                                                              │

00:00:09 #60 [Verbose] > │                                                                              │

00:00:09 #61 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #62 [Verbose] >

00:00:09 #63 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #64 [Verbose] > // // test

00:00:09 #65 [Verbose] >

00:00:09 #66 [Verbose] > 2f64 |> log

00:00:09 #67 [Verbose] > |> _almost_equal 0.6931471805599453

00:00:09 #68 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4817-1701-1cc18f297d96\main.spi

00:00:09 #69 [Verbose] >

00:00:09 #70 [Verbose] > ╭─[ 159.10ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #71 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:09 #72 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.6931471805599453} /     │

00:00:09 #73 [Verbose] > │ expected: %A{0.6931471805599453}"                                            │

00:00:09 #74 [Verbose] > │     ()                                                                       │

00:00:09 #75 [Verbose] > │ method0()                                                                    │

00:00:09 #76 [Verbose] > │                                                                              │

00:00:09 #77 [Verbose] > │                                                                              │

00:00:09 #78 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #79 [Verbose] >

00:00:09 #80 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #81 [Verbose] > // // test

00:00:09 #82 [Verbose] >

00:00:09 #83 [Verbose] > pi

00:00:09 #84 [Verbose] > |> _almost_equal 3.141592653589793f64

00:00:09 #85 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4833-3326-373b5611a9fd\main.spi

00:00:10 #86 [Verbose] >

00:00:10 #87 [Verbose] > ╭─[ 190.18ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #88 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #89 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{3.141592653589793} /      │

00:00:10 #90 [Verbose] > │ expected: %A{3.141592653589793}"                                             │

00:00:10 #91 [Verbose] > │     ()                                                                       │

00:00:10 #92 [Verbose] > │ method0()                                                                    │

00:00:10 #93 [Verbose] > │                                                                              │

00:00:10 #94 [Verbose] > │                                                                              │

00:00:10 #95 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #96 [Verbose] >

00:00:10 #97 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #98 [Verbose] > // // test

00:00:10 #99 [Verbose] >

00:00:10 #100 [Verbose] > pi |> cos

00:00:10 #101 [Verbose] > |> _equal -1f64

00:00:10 #102 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4852-5269-539f05ca699e\main.spi

00:00:10 #103 [Verbose] >

00:00:10 #104 [Verbose] > ╭─[ 185.33ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #105 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #106 [Verbose] > │     let v0 : string = $"_equal / actual: %A{-1.0} / expected: %A{-1.0}"      │

00:00:10 #107 [Verbose] > │     ()                                                                       │

00:00:10 #108 [Verbose] > │ method0()                                                                    │

00:00:10 #109 [Verbose] > │                                                                              │

00:00:10 #110 [Verbose] > │                                                                              │

00:00:10 #111 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #112 [Verbose] >

00:00:10 #113 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #114 [Verbose] > // // test

00:00:10 #115 [Verbose] >

00:00:10 #116 [Verbose] > pi

00:00:10 #117 [Verbose] > |> cos

00:00:10 #118 [Verbose] > |> fun n => n / 2f64

00:00:10 #119 [Verbose] > |> _almost_equal -0.5

00:00:10 #120 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4871-7158-7e92bf9f337d\main.spi

00:00:10 #121 [Verbose] >

00:00:10 #122 [Verbose] > ╭─[ 164.29ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #123 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #124 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{-0.5} / expected:         │

00:00:10 #125 [Verbose] > │ %A{-0.5}"                                                                    │

00:00:10 #126 [Verbose] > │     ()                                                                       │

00:00:10 #127 [Verbose] > │ method0()                                                                    │

00:00:10 #128 [Verbose] > │                                                                              │

00:00:10 #129 [Verbose] > │                                                                              │

00:00:10 #130 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #131 [Verbose] >

00:00:10 #132 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #133 [Verbose] > // // test

00:00:10 #134 [Verbose] >

00:00:10 #135 [Verbose] > pi / 2 |> cos

00:00:10 #136 [Verbose] > |> _almost_equal 0.00000000000000006123233995736766f64

00:00:10 #137 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4888-8868-8b01cdf70d47\main.spi

00:00:10 #138 [Verbose] >

00:00:10 #139 [Verbose] > ╭─[ 157.06ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #140 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #141 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{6.123233995736766E-17} /  │

00:00:10 #142 [Verbose] > │ expected: %A{6.123233995736766E-17}"                                         │

00:00:10 #143 [Verbose] > │     ()                                                                       │

00:00:10 #144 [Verbose] > │ method0()                                                                    │

00:00:10 #145 [Verbose] > │                                                                              │

00:00:10 #146 [Verbose] > │                                                                              │

00:00:10 #147 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #148 [Verbose] >

00:00:10 #149 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #150 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #151 [Verbose] > │ ## atan2                                                                     │

00:00:10 #152 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #153 [Verbose] >

00:00:10 #154 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #155 [Verbose] > inl atan2 (y : f64) (x : f64) =

00:00:10 #156 [Verbose] >     $"System.Math.Atan2 (!y, !x)" : f64

00:00:10 #157 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4904-0491-03d95db06815\main.spi

00:00:10 #158 [Verbose] >

00:00:10 #159 [Verbose] > ╭─[ 162.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #160 [Verbose] > │ ()                                                                           │

00:00:10 #161 [Verbose] > │                                                                              │

00:00:10 #162 [Verbose] > │                                                                              │

00:00:10 #163 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #164 [Verbose] >

00:00:10 #165 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #166 [Verbose] > // // test

00:00:10 #167 [Verbose] >

00:00:10 #168 [Verbose] > 0 |> atan2 1

00:00:10 #169 [Verbose] > |> _equal 1.5707963267948966

00:00:10 #170 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4921-2128-2fc887ec2667\main.spi

00:00:11 #171 [Verbose] >

00:00:11 #172 [Verbose] > ╭─[ 413.63ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #173 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #174 [Verbose] > │     let v0 : float = System.Math.Atan2 (1.0, 0.0)                            │

00:00:11 #175 [Verbose] > │     let v1 : bool = v0 = 1.5707963267948966                                  │

00:00:11 #176 [Verbose] > │     let v2 : string = $"_equal / actual: %A{v0} / expected:                  │

00:00:11 #177 [Verbose] > │ %A{1.5707963267948966}"                                                      │

00:00:11 #178 [Verbose] > │     let v3 : bool = v1 = false                                               │

00:00:11 #179 [Verbose] > │     if v3 then                                                               │

00:00:11 #180 [Verbose] > │         failwith<unit> v2                                                    │

00:00:11 #181 [Verbose] > │ method0()                                                                    │

00:00:11 #182 [Verbose] > │                                                                              │

00:00:11 #183 [Verbose] > │                                                                              │

00:00:11 #184 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #185 [Verbose] >

00:00:11 #186 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #187 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #188 [Verbose] > │ ## e                                                                         │

00:00:11 #189 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #190 [Verbose] >

00:00:11 #191 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #192 [Verbose] > inl e () =

00:00:11 #193 [Verbose] >     exp 1f64

00:00:11 #194 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4963-6371-6ec1d3017243\main.spi

00:00:11 #195 [Verbose] >

00:00:11 #196 [Verbose] > ╭─[ 126.49ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #197 [Verbose] > │ ()                                                                           │

00:00:11 #198 [Verbose] > │                                                                              │

00:00:11 #199 [Verbose] > │                                                                              │

00:00:11 #200 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #201 [Verbose] >

00:00:11 #202 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #203 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #204 [Verbose] > │ ## floor                                                                     │

00:00:11 #205 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #206 [Verbose] >

00:00:11 #207 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #208 [Verbose] > inl floor forall t {float}. (x : t) : t =

00:00:11 #209 [Verbose] >     $"floor !x"

00:00:11 #210 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4976-7672-78b0ede4a3b4\main.spi

00:00:11 #211 [Verbose] >

00:00:11 #212 [Verbose] > ╭─[ 135.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #213 [Verbose] > │ ()                                                                           │

00:00:11 #214 [Verbose] > │                                                                              │

00:00:11 #215 [Verbose] > │                                                                              │

00:00:11 #216 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #217 [Verbose] >

00:00:11 #218 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #219 [Verbose] > // // test

00:00:11 #220 [Verbose] >

00:00:11 #221 [Verbose] > 0.6 |> floor

00:00:11 #222 [Verbose] > |> _equal 0f64

00:00:11 #223 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-4990-9055-99d2a2e37453\main.spi

00:00:11 #224 [Verbose] >

00:00:11 #225 [Verbose] > ╭─[ 195.82ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #226 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #227 [Verbose] > │     let v0 : float = floor 0.6                                               │

00:00:11 #228 [Verbose] > │     let v1 : bool = v0 = 0.0                                                 │

00:00:11 #229 [Verbose] > │     let v2 : string = $"_equal / actual: %A{v0} / expected: %A{0.0}"         │

00:00:11 #230 [Verbose] > │     let v3 : bool = v1 = false                                               │

00:00:11 #231 [Verbose] > │     if v3 then                                                               │

00:00:11 #232 [Verbose] > │         failwith<unit> v2                                                    │

00:00:11 #233 [Verbose] > │ method0()                                                                    │

00:00:11 #234 [Verbose] > │                                                                              │

00:00:11 #235 [Verbose] > │                                                                              │

00:00:11 #236 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #237 [Verbose] >

00:00:11 #238 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #239 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #240 [Verbose] > │ ## log_base                                                                  │

00:00:11 #241 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #242 [Verbose] >

00:00:11 #243 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #244 [Verbose] > inl log_base (new_base : f64) (a : f64) =

00:00:11 #245 [Verbose] >     $"System.Math.Log (!a, !new_base)" : f64

00:00:11 #246 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5010-1093-1734e7bfc604\main.spi

00:00:11 #247 [Verbose] >

00:00:11 #248 [Verbose] > ╭─[ 152.53ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #249 [Verbose] > │ ()                                                                           │

00:00:11 #250 [Verbose] > │                                                                              │

00:00:11 #251 [Verbose] > │                                                                              │

00:00:11 #252 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #253 [Verbose] >

00:00:11 #254 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #255 [Verbose] > // // test

00:00:11 #256 [Verbose] >

00:00:11 #257 [Verbose] > 100 |> log_base 10

00:00:11 #258 [Verbose] > |> _equal 2

00:00:11 #259 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5026-2633-2412b67774ce\main.spi

00:00:11 #260 [Verbose] >

00:00:11 #261 [Verbose] > ╭─[ 179.55ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #262 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #263 [Verbose] > │     let v0 : float = System.Math.Log (100.0, 10.0)                           │

00:00:11 #264 [Verbose] > │     let v1 : bool = v0 = 2.0                                                 │

00:00:11 #265 [Verbose] > │     let v2 : string = $"_equal / actual: %A{v0} / expected: %A{2.0}"         │

00:00:11 #266 [Verbose] > │     let v3 : bool = v1 = false                                               │

00:00:11 #267 [Verbose] > │     if v3 then                                                               │

00:00:11 #268 [Verbose] > │         failwith<unit> v2                                                    │

00:00:11 #269 [Verbose] > │ method0()                                                                    │

00:00:11 #270 [Verbose] > │                                                                              │

00:00:11 #271 [Verbose] > │                                                                              │

00:00:11 #272 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #273 [Verbose] >

00:00:11 #274 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #275 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #276 [Verbose] > │ ## round                                                                     │

00:00:11 #277 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #278 [Verbose] >

00:00:11 #279 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #280 [Verbose] > inl round forall t {float}. (x : t) : t =

00:00:11 #281 [Verbose] >     $"round !x"

00:00:12 #282 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5045-4534-4090cfd8fe50\main.spi

00:00:12 #283 [Verbose] >

00:00:12 #284 [Verbose] > ╭─[ 139.34ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #285 [Verbose] > │ ()                                                                           │

00:00:12 #286 [Verbose] > │                                                                              │

00:00:12 #287 [Verbose] > │                                                                              │

00:00:12 #288 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #289 [Verbose] >

00:00:12 #290 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #291 [Verbose] > // // test

00:00:12 #292 [Verbose] >

00:00:12 #293 [Verbose] > 0.5 |> round

00:00:12 #294 [Verbose] > |> _equal 0f64

00:00:12 #295 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5059-5931-5a69e3f14178\main.spi

00:00:12 #296 [Verbose] >

00:00:12 #297 [Verbose] > ╭─[ 146.33ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #298 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #299 [Verbose] > │     let v0 : float = round 0.5                                               │

00:00:12 #300 [Verbose] > │     let v1 : bool = v0 = 0.0                                                 │

00:00:12 #301 [Verbose] > │     let v2 : string = $"_equal / actual: %A{v0} / expected: %A{0.0}"         │

00:00:12 #302 [Verbose] > │     let v3 : bool = v1 = false                                               │

00:00:12 #303 [Verbose] > │     if v3 then                                                               │

00:00:12 #304 [Verbose] > │         failwith<unit> v2                                                    │

00:00:12 #305 [Verbose] > │ method0()                                                                    │

00:00:12 #306 [Verbose] > │                                                                              │

00:00:12 #307 [Verbose] > │                                                                              │

00:00:12 #308 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #309 [Verbose] >

00:00:12 #310 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #311 [Verbose] > // // test

00:00:12 #312 [Verbose] >

00:00:12 #313 [Verbose] > 0.6 |> round

00:00:12 #314 [Verbose] > |> _equal 1f64

00:00:12 #315 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5074-7455-7a27fbc6f456\main.spi

00:00:12 #316 [Verbose] >

00:00:12 #317 [Verbose] > ╭─[ 140.87ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #318 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #319 [Verbose] > │     let v0 : float = round 0.6                                               │

00:00:12 #320 [Verbose] > │     let v1 : bool = v0 = 1.0                                                 │

00:00:12 #321 [Verbose] > │     let v2 : string = $"_equal / actual: %A{v0} / expected: %A{1.0}"         │

00:00:12 #322 [Verbose] > │     let v3 : bool = v1 = false                                               │

00:00:12 #323 [Verbose] > │     if v3 then                                                               │

00:00:12 #324 [Verbose] > │         failwith<unit> v2                                                    │

00:00:12 #325 [Verbose] > │ method0()                                                                    │

00:00:12 #326 [Verbose] > │                                                                              │

00:00:12 #327 [Verbose] > │                                                                              │

00:00:12 #328 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #329 [Verbose] >

00:00:12 #330 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #331 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #332 [Verbose] > │ ## square                                                                    │

00:00:12 #333 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #334 [Verbose] >

00:00:12 #335 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #336 [Verbose] > inl square x =

00:00:12 #337 [Verbose] >     x ** 2

00:00:12 #338 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5089-8942-8b09be535afc\main.spi

00:00:12 #339 [Verbose] >

00:00:12 #340 [Verbose] > ╭─[ 184.97ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #341 [Verbose] > │ ()                                                                           │

00:00:12 #342 [Verbose] > │                                                                              │

00:00:12 #343 [Verbose] > │                                                                              │

00:00:12 #344 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #345 [Verbose] >

00:00:12 #346 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #347 [Verbose] > // // test

00:00:12 #348 [Verbose] >

00:00:12 #349 [Verbose] > 5f64

00:00:12 #350 [Verbose] > |> sqrt

00:00:12 #351 [Verbose] > |> square

00:00:12 #352 [Verbose] > |> _almost_equal 5

00:00:12 #353 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5108-0813-02077c2f0675\main.spi

00:00:12 #354 [Verbose] >

00:00:12 #355 [Verbose] > ╭─[ 126.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #356 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #357 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{5.000000000000001} /      │

00:00:12 #358 [Verbose] > │ expected: %A{5.0}"                                                           │

00:00:12 #359 [Verbose] > │     ()                                                                       │

00:00:12 #360 [Verbose] > │ method0()                                                                    │

00:00:12 #361 [Verbose] > │                                                                              │

00:00:12 #362 [Verbose] > │                                                                              │

00:00:12 #363 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #364 [Verbose] >

00:00:12 #365 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #366 [Verbose] > // // test

00:00:12 #367 [Verbose] >

00:00:12 #368 [Verbose] > e () |> square

00:00:12 #369 [Verbose] > |> _almost_equal 7.3890560989306495

00:00:12 #370 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1259-5121-2109-27997df8231b\main.spi

00:00:12 #371 [Verbose] >

00:00:12 #372 [Verbose] > ╭─[ 170.68ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #373 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #374 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{7.3890560989306495} /     │

00:00:12 #375 [Verbose] > │ expected: %A{7.3890560989306495}"                                            │

00:00:12 #376 [Verbose] > │     ()                                                                       │

00:00:12 #377 [Verbose] > │ method0()                                                                    │

00:00:12 #378 [Verbose] > │                                                                              │

00:00:12 #379 [Verbose] > │                                                                              │

00:00:12 #380 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #381 [Verbose] > [NbConvertApp] Converting notebook math.dib.ipynb to html

00:00:14 #382 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:14 #383 [Verbose] >   validate(nb)

00:00:15 #384 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:15 #385 [Verbose] >   return _pygments_highlight(

00:00:15 #386 [Verbose] > [NbConvertApp] Writing 300934 bytes to math.dib.html

00:00:16 #387 [Debug] executeAsync / exitCode: 0 / output.Length: 20120

00:00:16 #388 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 \"optionm'.dib\"""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # optionm                                                                    │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0072-7234-7fd2a3ac6c65\main.spi

00:00:08 #22 [Verbose] >

00:00:08 #23 [Verbose] > ╭─[ 4.92s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #24 [Verbose] > │ ()                                                                           │

00:00:08 #25 [Verbose] > │                                                                              │

00:00:08 #26 [Verbose] > │                                                                              │

00:00:08 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #28 [Verbose] >

00:00:08 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:08 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:08 #31 [Verbose] > │ ## default_value                                                             │

00:00:08 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #33 [Verbose] >

00:00:08 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #35 [Verbose] > inl default_value d = optionm.defaultWith d

00:00:08 #36 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0347-4754-458f83f0b56f\main.spi

00:00:08 #37 [Verbose] >

00:00:08 #38 [Verbose] > ╭─[ 195.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:08 #39 [Verbose] > │ ()                                                                           │

00:00:08 #40 [Verbose] > │                                                                              │

00:00:08 #41 [Verbose] > │                                                                              │

00:00:08 #42 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #43 [Verbose] >

00:00:08 #44 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #45 [Verbose] > // // test

00:00:08 #46 [Verbose] >

00:00:08 #47 [Verbose] > None

00:00:08 #48 [Verbose] > |> default_value 3i32

00:00:08 #49 [Verbose] > |> _equal 3i32

00:00:08 #50 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0367-6718-64eb8d80b103\main.spi

00:00:09 #51 [Verbose] >

00:00:09 #52 [Verbose] > ╭─[ 651.39ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #53 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:09 #54 [Verbose] > │     let v0 : string = $"_equal / actual: %A{3} / expected: %A{3}"            │

00:00:09 #55 [Verbose] > │     ()                                                                       │

00:00:09 #56 [Verbose] > │ method0()                                                                    │

00:00:09 #57 [Verbose] > │                                                                              │

00:00:09 #58 [Verbose] > │                                                                              │

00:00:09 #59 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #60 [Verbose] >

00:00:09 #61 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #62 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #63 [Verbose] > │ ## default_with                                                              │

00:00:09 #64 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #65 [Verbose] >

00:00:09 #66 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #67 [Verbose] > inl default_with fn = function Some x => x | None => fn ()

00:00:09 #68 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0432-3289-3f10c26ecb76\main.spi

00:00:09 #69 [Verbose] >

00:00:09 #70 [Verbose] > ╭─[ 158.83ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #71 [Verbose] > │ ()                                                                           │

00:00:09 #72 [Verbose] > │                                                                              │

00:00:09 #73 [Verbose] > │                                                                              │

00:00:09 #74 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #75 [Verbose] >

00:00:09 #76 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #77 [Verbose] > // // test

00:00:09 #78 [Verbose] >

00:00:09 #79 [Verbose] > None

00:00:09 #80 [Verbose] > |> default_with (fun () => 3i32)

00:00:09 #81 [Verbose] > |> _equal 3i32

00:00:09 #82 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0448-4895-4dabcce91f79\main.spi

00:00:09 #83 [Verbose] >

00:00:09 #84 [Verbose] > ╭─[ 180.36ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #85 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:09 #86 [Verbose] > │     let v0 : string = $"_equal / actual: %A{3} / expected: %A{3}"            │

00:00:09 #87 [Verbose] > │     ()                                                                       │

00:00:09 #88 [Verbose] > │ method0()                                                                    │

00:00:09 #89 [Verbose] > │                                                                              │

00:00:09 #90 [Verbose] > │                                                                              │

00:00:09 #91 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #92 [Verbose] >

00:00:09 #93 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #94 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #95 [Verbose] > │ ## choose                                                                    │

00:00:09 #96 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #97 [Verbose] >

00:00:09 #98 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #99 [Verbose] > inl choose fn a b =

00:00:09 #100 [Verbose] >     match a, b with

00:00:09 #101 [Verbose] >     | Some x, Some y => fn x y |> Some

00:00:09 #102 [Verbose] >     | _ => None

00:00:09 #103 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0467-6767-610efc0c08a1\main.spi

00:00:09 #104 [Verbose] >

00:00:09 #105 [Verbose] > ╭─[ 181.87ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #106 [Verbose] > │ ()                                                                           │

00:00:09 #107 [Verbose] > │                                                                              │

00:00:09 #108 [Verbose] > │                                                                              │

00:00:09 #109 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #110 [Verbose] >

00:00:09 #111 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #112 [Verbose] > // // test

00:00:09 #113 [Verbose] >

00:00:09 #114 [Verbose] > (Some 2i32, Some 3)

00:00:09 #115 [Verbose] > ||> choose (+)

00:00:09 #116 [Verbose] > |> _equal (Some 5)

00:00:09 #117 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0486-8609-8d1a7de9bb1b\main.spi

00:00:10 #118 [Verbose] >

00:00:10 #119 [Verbose] > ╭─[ 697.59ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #120 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:10 #121 [Verbose] > │     | US0_0                                                                  │

00:00:10 #122 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:10 #123 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #124 [Verbose] > │     let v3 : US0 = US0_1(5)                                                  │

00:00:10 #125 [Verbose] > │     let v4 : US0 = US0_1(5)                                                  │

00:00:10 #126 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:10 #127 [Verbose] > │     ()                                                                       │

00:00:10 #128 [Verbose] > │ method0()                                                                    │

00:00:10 #129 [Verbose] > │                                                                              │

00:00:10 #130 [Verbose] > │                                                                              │

00:00:10 #131 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #132 [Verbose] >

00:00:10 #133 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #134 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #135 [Verbose] > │ ## iter                                                                      │

00:00:10 #136 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #137 [Verbose] >

00:00:10 #138 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #139 [Verbose] > inl iter fn = function

00:00:10 #140 [Verbose] >     | Some x => fn x

00:00:10 #141 [Verbose] >     | None => ()

00:00:10 #142 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0556-5647-5dbd1f0a6b20\main.spi

00:00:10 #143 [Verbose] >

00:00:10 #144 [Verbose] > ╭─[ 136.54ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #145 [Verbose] > │ ()                                                                           │

00:00:10 #146 [Verbose] > │                                                                              │

00:00:10 #147 [Verbose] > │                                                                              │

00:00:10 #148 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #149 [Verbose] >

00:00:10 #150 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #151 [Verbose] > // // test

00:00:10 #152 [Verbose] >

00:00:10 #153 [Verbose] > inl n = mut 1i32

00:00:10 #154 [Verbose] > inl fn =

00:00:10 #155 [Verbose] >     fun n' =>

00:00:10 #156 [Verbose] >         n <- *n + n'

00:00:10 #157 [Verbose] > Some 1i32 |> iter fn

00:00:10 #158 [Verbose] > None |> iter fn

00:00:10 #159 [Verbose] > *n

00:00:10 #160 [Verbose] > |> _equal 2i32

00:00:10 #161 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0570-7037-7311963b6f6d\main.spi

00:00:11 #162 [Verbose] >

00:00:11 #163 [Verbose] > ╭─[ 364.43ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #164 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:11 #165 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #166 [Verbose] > │     let v0 : Mut0 = {l0 = 1} : Mut0                                          │

00:00:11 #167 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:11 #168 [Verbose] > │     let v2 : int32 = v1 + 1                                                  │

00:00:11 #169 [Verbose] > │     v0.l0 <- v2                                                              │

00:00:11 #170 [Verbose] > │     let v3 : int32 = v0.l0                                                   │

00:00:11 #171 [Verbose] > │     let v4 : bool = v3 = 2                                                   │

00:00:11 #172 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{2}"           │

00:00:11 #173 [Verbose] > │     let v6 : bool = v4 = false                                               │

00:00:11 #174 [Verbose] > │     if v6 then                                                               │

00:00:11 #175 [Verbose] > │         failwith<unit> v5                                                    │

00:00:11 #176 [Verbose] > │ method0()                                                                    │

00:00:11 #177 [Verbose] > │                                                                              │

00:00:11 #178 [Verbose] > │                                                                              │

00:00:11 #179 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #180 [Verbose] >

00:00:11 #181 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #182 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #183 [Verbose] > │ ## option_fsharp                                                             │

00:00:11 #184 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #185 [Verbose] >

00:00:11 #186 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #187 [Verbose] > nominal option_fsharp t = $"`t option"

00:00:11 #188 [Verbose] >

00:00:11 #189 [Verbose] > inl from_fsharp forall t. (x : option_fsharp t) : option t =

00:00:11 #190 [Verbose] >     inl some x : option t = Some x

00:00:11 #191 [Verbose] >     inl none : option t = None

00:00:11 #192 [Verbose] >     $"!x |> Option.map !some |> Option.defaultValue !none"

00:00:11 #193 [Verbose] >

00:00:11 #194 [Verbose] > inl to_fsharp forall t. (x : option t) : option_fsharp t =

00:00:11 #195 [Verbose] >     match x with

00:00:11 #196 [Verbose] >     | Some x => $"Some !x"

00:00:11 #197 [Verbose] >     | None => $"None"

00:00:11 #198 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0608-0800-025b740a07c7\main.spi

00:00:11 #199 [Verbose] >

00:00:11 #200 [Verbose] > ╭─[ 124.67ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #201 [Verbose] > │ ()                                                                           │

00:00:11 #202 [Verbose] > │                                                                              │

00:00:11 #203 [Verbose] > │                                                                              │

00:00:11 #204 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #205 [Verbose] >

00:00:11 #206 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #207 [Verbose] > // // test

00:00:11 #208 [Verbose] >

00:00:11 #209 [Verbose] > inl x = Some 3i32

00:00:11 #210 [Verbose] > inl y : option i32 = None

00:00:11 #211 [Verbose] > inl x' = x |> to_fsharp |> from_fsharp

00:00:11 #212 [Verbose] > inl y' = y |> to_fsharp |> from_fsharp

00:00:11 #213 [Verbose] > (x', y') |> _equal (x, y)

00:00:11 #214 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-0620-2062-2a2ad78973d7\main.spi

00:00:11 #215 [Verbose] >

00:00:11 #216 [Verbose] > ╭─[ 251.83ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #217 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:11 #218 [Verbose] > │     | US0_0                                                                  │

00:00:11 #219 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:11 #220 [Verbose] > │ let rec closure0 () (v0 : int32) : US0 =                                     │

00:00:11 #221 [Verbose] > │     US0_1(v0)                                                                │

00:00:11 #222 [Verbose] > │ and method0 () : unit =                                                      │

00:00:11 #223 [Verbose] > │     let v0 : int32 option = Some 3                                           │

00:00:11 #224 [Verbose] > │     let v1 : (int32 -> US0) = closure0()                                     │

00:00:11 #225 [Verbose] > │     let v2 : US0 = US0_0                                                     │

00:00:11 #226 [Verbose] > │     let v3 : US0 = v0 |> Option.map v1 |> Option.defaultValue v2             │

00:00:11 #227 [Verbose] > │     let v4 : int32 option = None                                             │

00:00:11 #228 [Verbose] > │     let v5 : US0 = US0_0                                                     │

00:00:11 #229 [Verbose] > │     let v6 : US0 = v4 |> Option.map v1 |> Option.defaultValue v5             │

00:00:11 #230 [Verbose] > │     let v11 : bool =                                                         │

00:00:11 #231 [Verbose] > │         match v3 with                                                        │

00:00:11 #232 [Verbose] > │         | US0_1(v9) -> (* Some *)                                            │

00:00:11 #233 [Verbose] > │             let v10 : bool = v9 = 3                                          │

00:00:11 #234 [Verbose] > │             v10                                                              │

00:00:11 #235 [Verbose] > │         | _ ->                                                               │

00:00:11 #236 [Verbose] > │             false                                                            │

00:00:11 #237 [Verbose] > │     let v13 : bool =                                                         │

00:00:11 #238 [Verbose] > │         if v11 then                                                          │

00:00:11 #239 [Verbose] > │             match v6 with                                                    │

00:00:11 #240 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:11 #241 [Verbose] > │                 true                                                         │

00:00:11 #242 [Verbose] > │             | _ ->                                                           │

00:00:11 #243 [Verbose] > │                 false                                                        │

00:00:11 #244 [Verbose] > │         else                                                                 │

00:00:11 #245 [Verbose] > │             false                                                            │

00:00:11 #246 [Verbose] > │     let v14 : US0 = US0_1(3)                                                 │

00:00:11 #247 [Verbose] > │     let v15 : US0 = US0_0                                                    │

00:00:11 #248 [Verbose] > │     let v16 : string = $"_equal / actual: %A{struct (v3, v6)} / expected:    │

00:00:11 #249 [Verbose] > │ %A{struct (v14, v15)}"                                                       │

00:00:11 #250 [Verbose] > │     let v17 : bool = v13 = false                                             │

00:00:11 #251 [Verbose] > │     if v17 then                                                              │

00:00:11 #252 [Verbose] > │         failwith<unit> v16                                                   │

00:00:11 #253 [Verbose] > │ method0()                                                                    │

00:00:11 #254 [Verbose] > │                                                                              │

00:00:11 #255 [Verbose] > │                                                                              │

00:00:11 #256 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #257 [Verbose] > [NbConvertApp] Converting notebook optionm'.dib.ipynb to html

00:00:13 #258 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:13 #259 [Verbose] >   validate(nb)

00:00:13 #260 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:13 #261 [Verbose] >   return _pygments_highlight(

00:00:14 #262 [Verbose] > [NbConvertApp] Writing 291081 bytes to optionm'.dib.html

00:00:14 #263 [Debug] executeAsync / exitCode: 0 / output.Length: 14194

00:00:14 #264 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 \"am'.dib\"""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # am                                                                         │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:07 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-1644-4468-4cc73bc9df3b\main.spi

00:00:10 #22 [Verbose] >

00:00:10 #23 [Verbose] > ╭─[ 6.40s - stdout ]───────────────────────────────────────────────────────────╮

00:00:10 #24 [Verbose] > │ ()                                                                           │

00:00:10 #25 [Verbose] > │                                                                              │

00:00:10 #26 [Verbose] > │                                                                              │

00:00:10 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #28 [Verbose] >

00:00:10 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #31 [Verbose] > │ ## sum                                                                       │

00:00:10 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #33 [Verbose] >

00:00:10 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #35 [Verbose] > inl sum (a' : a _ _) =

00:00:10 #36 [Verbose] >     a' |> am.fold (+) 0

00:00:10 #37 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2039-3993-3ad567f3820d\main.spi

00:00:10 #38 [Verbose] >

00:00:10 #39 [Verbose] > ╭─[ 209.99ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #40 [Verbose] > │ ()                                                                           │

00:00:10 #41 [Verbose] > │                                                                              │

00:00:10 #42 [Verbose] > │                                                                              │

00:00:10 #43 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #44 [Verbose] >

00:00:10 #45 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #46 [Verbose] > // // test

00:00:10 #47 [Verbose] >

00:00:10 #48 [Verbose] > am.init 10i32 id

00:00:10 #49 [Verbose] > |> sum

00:00:10 #50 [Verbose] > |> _equal 45

00:00:10 #51 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2060-6088-6b0ddca011bf\main.spi

00:00:12 #52 [Verbose] >

00:00:12 #53 [Verbose] > ╭─[ 2.51s - stdout ]───────────────────────────────────────────────────────────╮

00:00:12 #54 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:12 #55 [Verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : int32}                          │

00:00:12 #56 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:12 #57 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:12 #58 [Verbose] > │     let v2 : bool = v1 < 10                                                  │

00:00:12 #59 [Verbose] > │     v2                                                                       │

00:00:12 #60 [Verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool =                                 │

00:00:12 #61 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:12 #62 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:12 #63 [Verbose] > │     v3                                                                       │

00:00:12 #64 [Verbose] > │ and method0 () : unit =                                                      │

00:00:12 #65 [Verbose] > │     let v0 : (int32 []) = Array.zeroCreate<int32> (10)                       │

00:00:12 #66 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:12 #67 [Verbose] > │     while method1(v1) do                                                     │

00:00:12 #68 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:12 #69 [Verbose] > │         v0.[int v3] <- v3                                                    │

00:00:12 #70 [Verbose] > │         let v4 : int32 = v3 + 1                                              │

00:00:12 #71 [Verbose] > │         v1.l0 <- v4                                                          │

00:00:12 #72 [Verbose] > │         ()                                                                   │

00:00:12 #73 [Verbose] > │     let v5 : int32 = v0.Length                                               │

00:00:12 #74 [Verbose] > │     let v6 : Mut1 = {l0 = 0; l1 = 0} : Mut1                                  │

00:00:12 #75 [Verbose] > │     while method2(v5, v6) do                                                 │

00:00:12 #76 [Verbose] > │         let v8 : int32 = v6.l0                                               │

00:00:12 #77 [Verbose] > │         let v9 : int32 = v6.l1                                               │

00:00:12 #78 [Verbose] > │         let v10 : int32 = v0.[int v8]                                        │

00:00:12 #79 [Verbose] > │         let v11 : int32 = v9 + v10                                           │

00:00:12 #80 [Verbose] > │         let v12 : int32 = v8 + 1                                             │

00:00:12 #81 [Verbose] > │         v6.l0 <- v12                                                         │

00:00:12 #82 [Verbose] > │         v6.l1 <- v11                                                         │

00:00:12 #83 [Verbose] > │         ()                                                                   │

00:00:12 #84 [Verbose] > │     let v13 : int32 = v6.l1                                                  │

00:00:12 #85 [Verbose] > │     let v14 : bool = v13 = 45                                                │

00:00:12 #86 [Verbose] > │     let v15 : string = $"_equal / actual: %A{v13} / expected: %A{45}"        │

00:00:12 #87 [Verbose] > │     let v16 : bool = v14 = false                                             │

00:00:12 #88 [Verbose] > │     if v16 then                                                              │

00:00:12 #89 [Verbose] > │         failwith<unit> v15                                                   │

00:00:12 #90 [Verbose] > │ method0()                                                                    │

00:00:12 #91 [Verbose] > │                                                                              │

00:00:12 #92 [Verbose] > │                                                                              │

00:00:12 #93 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #94 [Verbose] >

00:00:12 #95 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #96 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #97 [Verbose] > │ ## init_series                                                               │

00:00:12 #98 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #99 [Verbose] >

00:00:12 #100 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #101 [Verbose] > inl init_series start end inc =

00:00:12 #102 [Verbose] >     inl total = conv ((end - start) / inc) + 1

00:00:12 #103 [Verbose] >     am.init total (conv >> (*) inc >> (+) start) : a i32 _

00:00:12 #104 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2314-1438-15811d3015a7\main.spi

00:00:12 #105 [Verbose] >

00:00:12 #106 [Verbose] > ╭─[ 162.01ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #107 [Verbose] > │ ()                                                                           │

00:00:12 #108 [Verbose] > │                                                                              │

00:00:12 #109 [Verbose] > │                                                                              │

00:00:12 #110 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #111 [Verbose] >

00:00:12 #112 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #113 [Verbose] > // // test

00:00:12 #114 [Verbose] >

00:00:12 #115 [Verbose] > init_series 0 1 0.5

00:00:12 #116 [Verbose] > |> _equal (a ;[[0f64; 0.5; 1]])

00:00:13 #117 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2330-3048-327fe2928968\main.spi

00:00:13 #118 [Verbose] >

00:00:13 #119 [Verbose] > ╭─[ 315.82ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #120 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:13 #121 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:13 #122 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:13 #123 [Verbose] > │     let v2 : bool = v1 < 3                                                   │

00:00:13 #124 [Verbose] > │     v2                                                                       │

00:00:13 #125 [Verbose] > │ and method2 (v0 : (float []), v1 : (float []), v2 : int32) : bool =          │

00:00:13 #126 [Verbose] > │     let v3 : int32 = v0.Length                                               │

00:00:13 #127 [Verbose] > │     let v4 : bool = v2 < v3                                                  │

00:00:13 #128 [Verbose] > │     if v4 then                                                               │

00:00:13 #129 [Verbose] > │         let v5 : float = v0.[int v2]                                         │

00:00:13 #130 [Verbose] > │         let v6 : float = v1.[int v2]                                         │

00:00:13 #131 [Verbose] > │         let v7 : bool = v5 = v6                                              │

00:00:13 #132 [Verbose] > │         if v7 then                                                           │

00:00:13 #133 [Verbose] > │             let v8 : int32 = v2 + 1                                          │

00:00:13 #134 [Verbose] > │             method2(v0, v1, v8)                                              │

00:00:13 #135 [Verbose] > │         else                                                                 │

00:00:13 #136 [Verbose] > │             false                                                            │

00:00:13 #137 [Verbose] > │     else                                                                     │

00:00:13 #138 [Verbose] > │         true                                                                 │

00:00:13 #139 [Verbose] > │ and method0 () : unit =                                                      │

00:00:13 #140 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (3)                        │

00:00:13 #141 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:13 #142 [Verbose] > │     while method1(v1) do                                                     │

00:00:13 #143 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:13 #144 [Verbose] > │         let v4 : float = float v3                                            │

00:00:13 #145 [Verbose] > │         let v5 : float = 0.5 * v4                                            │

00:00:13 #146 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:13 #147 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:13 #148 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:13 #149 [Verbose] > │         ()                                                                   │

00:00:13 #150 [Verbose] > │     let v7 : (float []) = [|0.0; 0.5; 1.0|]                                  │

00:00:13 #151 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:13 #152 [Verbose] > │     let v9 : int32 = v7.Length                                               │

00:00:13 #153 [Verbose] > │     let v10 : bool = v8 = v9                                                 │

00:00:13 #154 [Verbose] > │     let v11 : bool = v10 <> true                                             │

00:00:13 #155 [Verbose] > │     let v14 : bool =                                                         │

00:00:13 #156 [Verbose] > │         if v11 then                                                          │

00:00:13 #157 [Verbose] > │             false                                                            │

00:00:13 #158 [Verbose] > │         else                                                                 │

00:00:13 #159 [Verbose] > │             let v12 : int32 = 0                                              │

00:00:13 #160 [Verbose] > │             method2(v0, v7, v12)                                             │

00:00:13 #161 [Verbose] > │     let v15 : string = $"_equal / actual: %A{v0} / expected: %A{v7}"         │

00:00:13 #162 [Verbose] > │     let v16 : bool = v14 = false                                             │

00:00:13 #163 [Verbose] > │     if v16 then                                                              │

00:00:13 #164 [Verbose] > │         failwith<unit> v15                                                   │

00:00:13 #165 [Verbose] > │ method0()                                                                    │

00:00:13 #166 [Verbose] > │                                                                              │

00:00:13 #167 [Verbose] > │                                                                              │

00:00:13 #168 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #169 [Verbose] >

00:00:13 #170 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #171 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #172 [Verbose] > │ ## last                                                                      │

00:00:13 #173 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #174 [Verbose] >

00:00:13 #175 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #176 [Verbose] > inl last (array : a _ _) =

00:00:13 #177 [Verbose] >     index array (length array - 1)

00:00:13 #178 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2366-6609-61a7cbcf6a98\main.spi

00:00:13 #179 [Verbose] >

00:00:13 #180 [Verbose] > ╭─[ 196.30ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #181 [Verbose] > │ ()                                                                           │

00:00:13 #182 [Verbose] > │                                                                              │

00:00:13 #183 [Verbose] > │                                                                              │

00:00:13 #184 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #185 [Verbose] >

00:00:13 #186 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #187 [Verbose] > // // test

00:00:13 #188 [Verbose] >

00:00:13 #189 [Verbose] > am.init 10i32 id

00:00:13 #190 [Verbose] > |> last

00:00:13 #191 [Verbose] > |> _equal 9

00:00:13 #192 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2386-8602-8da73940e2b1\main.spi

00:00:13 #193 [Verbose] >

00:00:13 #194 [Verbose] > ╭─[ 227.59ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #195 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:13 #196 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:13 #197 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:13 #198 [Verbose] > │     let v2 : bool = v1 < 10                                                  │

00:00:13 #199 [Verbose] > │     v2                                                                       │

00:00:13 #200 [Verbose] > │ and method0 () : unit =                                                      │

00:00:13 #201 [Verbose] > │     let v0 : (int32 []) = Array.zeroCreate<int32> (10)                       │

00:00:13 #202 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:13 #203 [Verbose] > │     while method1(v1) do                                                     │

00:00:13 #204 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:13 #205 [Verbose] > │         v0.[int v3] <- v3                                                    │

00:00:13 #206 [Verbose] > │         let v4 : int32 = v3 + 1                                              │

00:00:13 #207 [Verbose] > │         v1.l0 <- v4                                                          │

00:00:13 #208 [Verbose] > │         ()                                                                   │

00:00:13 #209 [Verbose] > │     let v5 : int32 = v0.Length                                               │

00:00:13 #210 [Verbose] > │     let v6 : int32 = v5 - 1                                                  │

00:00:13 #211 [Verbose] > │     let v7 : int32 = v0.[int v6]                                             │

00:00:13 #212 [Verbose] > │     let v8 : bool = v7 = 9                                                   │

00:00:13 #213 [Verbose] > │     let v9 : string = $"_equal / actual: %A{v7} / expected: %A{9}"           │

00:00:13 #214 [Verbose] > │     let v10 : bool = v8 = false                                              │

00:00:13 #215 [Verbose] > │     if v10 then                                                              │

00:00:13 #216 [Verbose] > │         failwith<unit> v9                                                    │

00:00:13 #217 [Verbose] > │ method0()                                                                    │

00:00:13 #218 [Verbose] > │                                                                              │

00:00:13 #219 [Verbose] > │                                                                              │

00:00:13 #220 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #221 [Verbose] >

00:00:13 #222 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #223 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #224 [Verbose] > │ ## indexed                                                                   │

00:00:13 #225 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #226 [Verbose] >

00:00:13 #227 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #228 [Verbose] > inl indexed (array : a _ _) =

00:00:13 #229 [Verbose] >     (([[]], 0), array)

00:00:13 #230 [Verbose] >     ||> am.fold fun (acc, i) x =>

00:00:13 #231 [Verbose] >         (i, x) :: acc, i + 1

00:00:13 #232 [Verbose] >     |> fst

00:00:13 #233 [Verbose] >     |> listm.rev

00:00:13 #234 [Verbose] >     |> listm.toArray

00:00:13 #235 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2410-1035-184738812b8d\main.spi

00:00:13 #236 [Verbose] >

00:00:13 #237 [Verbose] > ╭─[ 142.78ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #238 [Verbose] > │ ()                                                                           │

00:00:13 #239 [Verbose] > │                                                                              │

00:00:13 #240 [Verbose] > │                                                                              │

00:00:13 #241 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #242 [Verbose] >

00:00:13 #243 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #244 [Verbose] > // // test

00:00:13 #245 [Verbose] >

00:00:13 #246 [Verbose] > am.init 3i32 ((*) 2)

00:00:13 #247 [Verbose] > |> indexed

00:00:13 #248 [Verbose] > |> _equal (a ;[[0i32, 0; 1, 2; 2, 4]] : a i32 _)

00:00:14 #249 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-2424-2487-24a2b93b76c0\main.spi

00:00:14 #250 [Verbose] >

00:00:14 #251 [Verbose] > ╭─[ 621.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #252 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:14 #253 [Verbose] > │ and UH0 =                                                                    │

00:00:14 #254 [Verbose] > │     | UH0_0 of int32 * int32 * UH0                                           │

00:00:14 #255 [Verbose] > │     | UH0_1                                                                  │

00:00:14 #256 [Verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : UH0; mutable l2 : int32}        │

00:00:14 #257 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:14 #258 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:14 #259 [Verbose] > │     let v2 : bool = v1 < 3                                                   │

00:00:14 #260 [Verbose] > │     v2                                                                       │

00:00:14 #261 [Verbose] > │ and method2 (v0 : int32, v1 : Mut1) : bool =                                 │

00:00:14 #262 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:14 #263 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:14 #264 [Verbose] > │     v3                                                                       │

00:00:14 #265 [Verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:14 #266 [Verbose] > │     match v0 with                                                            │

00:00:14 #267 [Verbose] > │     | UH0_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:14 #268 [Verbose] > │         let v5 : UH0 = UH0_0(v2, v3, v1)                                     │

00:00:14 #269 [Verbose] > │         method3(v4, v5)                                                      │

00:00:14 #270 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:14 #271 [Verbose] > │         v1                                                                   │

00:00:14 #272 [Verbose] > │ and method5 (v0 : UH0, v1 : int32) : int32 =                                 │

00:00:14 #273 [Verbose] > │     match v0 with                                                            │

00:00:14 #274 [Verbose] > │     | UH0_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:14 #275 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:14 #276 [Verbose] > │         method5(v4, v5)                                                      │

00:00:14 #277 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:14 #278 [Verbose] > │         v1                                                                   │

00:00:14 #279 [Verbose] > │ and method6 (v0 : (struct (int32 * int32) []), v1 : UH0, v2 : int32) : int32 │

00:00:14 #280 [Verbose] > │ =                                                                            │

00:00:14 #281 [Verbose] > │     match v1 with                                                            │

00:00:14 #282 [Verbose] > │     | UH0_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:14 #283 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:14 #284 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:14 #285 [Verbose] > │         method6(v0, v5, v6)                                                  │

00:00:14 #286 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:14 #287 [Verbose] > │         v2                                                                   │

00:00:14 #288 [Verbose] > │ and method4 (v0 : UH0) : (struct (int32 * int32) []) =                       │

00:00:14 #289 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:14 #290 [Verbose] > │     let v2 : int32 = method5(v0, v1)                                         │

00:00:14 #291 [Verbose] > │     let v3 : (struct (int32 * int32) []) = Array.zeroCreate<struct (int32 *  │

00:00:14 #292 [Verbose] > │ int32)> (v2)                                                                 │

00:00:14 #293 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:14 #294 [Verbose] > │     let v5 : int32 = method6(v3, v0, v4)                                     │

00:00:14 #295 [Verbose] > │     v3                                                                       │

00:00:14 #296 [Verbose] > │ and method7 (v0 : (struct (int32 * int32) []), v1 : (struct (int32 * int32)  │

00:00:14 #297 [Verbose] > │ []), v2 : int32) : bool =                                                    │

00:00:14 #298 [Verbose] > │     let v3 : int32 = v0.Length                                               │

00:00:14 #299 [Verbose] > │     let v4 : bool = v2 < v3                                                  │

00:00:14 #300 [Verbose] > │     if v4 then                                                               │

00:00:14 #301 [Verbose] > │         let struct (v5 : int32, v6 : int32) = v0.[int v2]                    │

00:00:14 #302 [Verbose] > │         let struct (v7 : int32, v8 : int32) = v1.[int v2]                    │

00:00:14 #303 [Verbose] > │         let v9 : bool = v5 = v7                                              │

00:00:14 #304 [Verbose] > │         let v11 : bool =                                                     │

00:00:14 #305 [Verbose] > │             if v9 then                                                       │

00:00:14 #306 [Verbose] > │                 let v10 : bool = v6 = v8                                     │

00:00:14 #307 [Verbose] > │                 v10                                                          │

00:00:14 #308 [Verbose] > │             else                                                             │

00:00:14 #309 [Verbose] > │                 false                                                        │

00:00:14 #310 [Verbose] > │         if v11 then                                                          │

00:00:14 #311 [Verbose] > │             let v12 : int32 = v2 + 1                                         │

00:00:14 #312 [Verbose] > │             method7(v0, v1, v12)                                             │

00:00:14 #313 [Verbose] > │         else                                                                 │

00:00:14 #314 [Verbose] > │             false                                                            │

00:00:14 #315 [Verbose] > │     else                                                                     │

00:00:14 #316 [Verbose] > │         true                                                                 │

00:00:14 #317 [Verbose] > │ and method0 () : unit =                                                      │

00:00:14 #318 [Verbose] > │     let v0 : (int32 []) = Array.zeroCreate<int32> (3)                        │

00:00:14 #319 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:14 #320 [Verbose] > │     while method1(v1) do                                                     │

00:00:14 #321 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:14 #322 [Verbose] > │         let v4 : int32 = 2 * v3                                              │

00:00:14 #323 [Verbose] > │         v0.[int v3] <- v4                                                    │

00:00:14 #324 [Verbose] > │         let v5 : int32 = v3 + 1                                              │

00:00:14 #325 [Verbose] > │         v1.l0 <- v5                                                          │

00:00:14 #326 [Verbose] > │         ()                                                                   │

00:00:14 #327 [Verbose] > │     let v6 : int32 = v0.Length                                               │

00:00:14 #328 [Verbose] > │     let v7 : UH0 = UH0_1                                                     │

00:00:14 #329 [Verbose] > │     let v8 : Mut1 = {l0 = 0; l1 = v7; l2 = 0} : Mut1                         │

00:00:14 #330 [Verbose] > │     while method2(v6, v8) do                                                 │

00:00:14 #331 [Verbose] > │         let v10 : int32 = v8.l0                                              │

00:00:14 #332 [Verbose] > │         let struct (v11 : UH0, v12 : int32) = v8.l1, v8.l2                   │

00:00:14 #333 [Verbose] > │         let v13 : int32 = v0.[int v10]                                       │

00:00:14 #334 [Verbose] > │         let v14 : int32 = v12 + 1                                            │

00:00:14 #335 [Verbose] > │         let v15 : int32 = v10 + 1                                            │

00:00:14 #336 [Verbose] > │         let v16 : UH0 = UH0_0(v12, v13, v11)                                 │

00:00:14 #337 [Verbose] > │         v8.l0 <- v15                                                         │

00:00:14 #338 [Verbose] > │         v8.l1 <- v16                                                         │

00:00:14 #339 [Verbose] > │         v8.l2 <- v14                                                         │

00:00:14 #340 [Verbose] > │         ()                                                                   │

00:00:14 #341 [Verbose] > │     let struct (v17 : UH0, v18 : int32) = v8.l1, v8.l2                       │

00:00:14 #342 [Verbose] > │     let v19 : UH0 = UH0_1                                                    │

00:00:14 #343 [Verbose] > │     let v20 : UH0 = method3(v17, v19)                                        │

00:00:14 #344 [Verbose] > │     let v21 : (struct (int32 * int32) []) = method4(v20)                     │

00:00:14 #345 [Verbose] > │     let v22 : (struct (int32 * int32) []) = [|struct (0, 0); struct (1, 2);  │

00:00:14 #346 [Verbose] > │ struct (2, 4)|]                                                              │

00:00:14 #347 [Verbose] > │     let v23 : int32 = v21.Length                                             │

00:00:14 #348 [Verbose] > │     let v24 : int32 = v22.Length                                             │

00:00:14 #349 [Verbose] > │     let v25 : bool = v23 = v24                                               │

00:00:14 #350 [Verbose] > │     let v26 : bool = v25 <> true                                             │

00:00:14 #351 [Verbose] > │     let v29 : bool =                                                         │

00:00:14 #352 [Verbose] > │         if v26 then                                                          │

00:00:14 #353 [Verbose] > │             false                                                            │

00:00:14 #354 [Verbose] > │         else                                                                 │

00:00:14 #355 [Verbose] > │             let v27 : int32 = 0                                              │

00:00:14 #356 [Verbose] > │             method7(v21, v22, v27)                                           │

00:00:14 #357 [Verbose] > │     let v30 : string = $"_equal / actual: %A{v21} / expected: %A{v22}"       │

00:00:14 #358 [Verbose] > │     let v31 : bool = v29 = false                                             │

00:00:14 #359 [Verbose] > │     if v31 then                                                              │

00:00:14 #360 [Verbose] > │         failwith<unit> v30                                                   │

00:00:14 #361 [Verbose] > │ method0()                                                                    │

00:00:14 #362 [Verbose] > │                                                                              │

00:00:14 #363 [Verbose] > │                                                                              │

00:00:14 #364 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #365 [Verbose] > [NbConvertApp] Converting notebook am'.dib.ipynb to html

00:00:16 #366 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:16 #367 [Verbose] >   validate(nb)

00:00:17 #368 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:17 #369 [Verbose] >   return _pygments_highlight(

00:00:17 #370 [Verbose] > [NbConvertApp] Writing 291617 bytes to am'.dib.html

00:00:18 #371 [Debug] executeAsync / exitCode: 0 / output.Length: 24616

00:00:18 #372 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 \"listm'.dib\"""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # listm                                                                      │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:07 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-3551-5149-50b8ca920163\main.spi

00:00:09 #22 [Verbose] >

00:00:09 #23 [Verbose] > ╭─[ 5.39s - stdout ]───────────────────────────────────────────────────────────╮

00:00:09 #24 [Verbose] > │ ()                                                                           │

00:00:09 #25 [Verbose] > │                                                                              │

00:00:09 #26 [Verbose] > │                                                                              │

00:00:09 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #28 [Verbose] >

00:00:09 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #31 [Verbose] > │ ## /@                                                                        │

00:00:09 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #33 [Verbose] >

00:00:09 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #35 [Verbose] > inl (/@) a b =

00:00:09 #36 [Verbose] >     b |> listm.append a

00:00:09 #37 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-3861-6149-6d0d32fa74d6\main.spi

00:00:09 #38 [Verbose] >

00:00:09 #39 [Verbose] > ╭─[ 268.92ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #40 [Verbose] > │ ()                                                                           │

00:00:09 #41 [Verbose] > │                                                                              │

00:00:09 #42 [Verbose] > │                                                                              │

00:00:09 #43 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #44 [Verbose] >

00:00:09 #45 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #46 [Verbose] > // // test

00:00:09 #47 [Verbose] >

00:00:09 #48 [Verbose] > [[ "a"; "b" ]] /@ [[ "c"; "d" ]]

00:00:09 #49 [Verbose] > |> _equal [[ "a"; "b"; "c"; "d" ]]

00:00:09 #50 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-3888-8813-85654996388c\main.spi

00:00:10 #51 [Verbose] >

00:00:10 #52 [Verbose] > ╭─[ 1.25s - stdout ]───────────────────────────────────────────────────────────╮

00:00:10 #53 [Verbose] > │ type UH0 =                                                                   │

00:00:10 #54 [Verbose] > │     | UH0_0 of string * UH0                                                  │

00:00:10 #55 [Verbose] > │     | UH0_1                                                                  │

00:00:10 #56 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #57 [Verbose] > │     let v43 : string = "a"                                                   │

00:00:10 #58 [Verbose] > │     let v44 : string = "b"                                                   │

00:00:10 #59 [Verbose] > │     let v45 : string = "c"                                                   │

00:00:10 #60 [Verbose] > │     let v46 : string = "d"                                                   │

00:00:10 #61 [Verbose] > │     let v47 : UH0 = UH0_1                                                    │

00:00:10 #62 [Verbose] > │     let v48 : UH0 = UH0_0(v46, v47)                                          │

00:00:10 #63 [Verbose] > │     let v49 : UH0 = UH0_0(v45, v48)                                          │

00:00:10 #64 [Verbose] > │     let v50 : UH0 = UH0_0(v44, v49)                                          │

00:00:10 #65 [Verbose] > │     let v51 : UH0 = UH0_0(v43, v50)                                          │

00:00:10 #66 [Verbose] > │     let v52 : UH0 = UH0_1                                                    │

00:00:10 #67 [Verbose] > │     let v53 : UH0 = UH0_0(v46, v52)                                          │

00:00:10 #68 [Verbose] > │     let v54 : UH0 = UH0_0(v45, v53)                                          │

00:00:10 #69 [Verbose] > │     let v55 : UH0 = UH0_0(v44, v54)                                          │

00:00:10 #70 [Verbose] > │     let v56 : UH0 = UH0_0(v43, v55)                                          │

00:00:10 #71 [Verbose] > │     let v57 : string = $"_equal / actual: %A{v51} / expected: %A{v56}"       │

00:00:10 #72 [Verbose] > │     ()                                                                       │

00:00:10 #73 [Verbose] > │ method0()                                                                    │

00:00:10 #74 [Verbose] > │                                                                              │

00:00:10 #75 [Verbose] > │                                                                              │

00:00:10 #76 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #77 [Verbose] >

00:00:10 #78 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #79 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #80 [Verbose] > │ ## init_series                                                               │

00:00:10 #81 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #82 [Verbose] >

00:00:10 #83 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #84 [Verbose] > inl init_series start end inc =

00:00:10 #85 [Verbose] >     inl total : f64 = conv ((end - start) / inc) + 1

00:00:10 #86 [Verbose] >     listm.init total (conv >> (*) inc >> (+) start)

00:00:10 #87 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4015-1543-12c5fe0130f3\main.spi

00:00:11 #88 [Verbose] >

00:00:11 #89 [Verbose] > ╭─[ 157.77ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #90 [Verbose] > │ ()                                                                           │

00:00:11 #91 [Verbose] > │                                                                              │

00:00:11 #92 [Verbose] > │                                                                              │

00:00:11 #93 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #94 [Verbose] >

00:00:11 #95 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #96 [Verbose] > // // test

00:00:11 #97 [Verbose] >

00:00:11 #98 [Verbose] > init_series 0 1 0.5

00:00:11 #99 [Verbose] > |> _equal [[ 0f64; 0.5; 1 ]]

00:00:11 #100 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4031-3111-30f871cd4dc2\main.spi

00:00:11 #101 [Verbose] >

00:00:11 #102 [Verbose] > ╭─[ 252.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #103 [Verbose] > │ type UH0 =                                                                   │

00:00:11 #104 [Verbose] > │     | UH0_0 of float * UH0                                                   │

00:00:11 #105 [Verbose] > │     | UH0_1                                                                  │

00:00:11 #106 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #107 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:11 #108 [Verbose] > │     let v19 : UH0 = UH0_0(1.0, v18)                                          │

00:00:11 #109 [Verbose] > │     let v20 : UH0 = UH0_0(0.5, v19)                                          │

00:00:11 #110 [Verbose] > │     let v21 : UH0 = UH0_0(0.0, v20)                                          │

00:00:11 #111 [Verbose] > │     let v22 : UH0 = UH0_1                                                    │

00:00:11 #112 [Verbose] > │     let v23 : UH0 = UH0_0(1.0, v22)                                          │

00:00:11 #113 [Verbose] > │     let v24 : UH0 = UH0_0(0.5, v23)                                          │

00:00:11 #114 [Verbose] > │     let v25 : UH0 = UH0_0(0.0, v24)                                          │

00:00:11 #115 [Verbose] > │     let v26 : string = $"_equal / actual: %A{v21} / expected: %A{v25}"       │

00:00:11 #116 [Verbose] > │     ()                                                                       │

00:00:11 #117 [Verbose] > │ method0()                                                                    │

00:00:11 #118 [Verbose] > │                                                                              │

00:00:11 #119 [Verbose] > │                                                                              │

00:00:11 #120 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #121 [Verbose] >

00:00:11 #122 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #123 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #124 [Verbose] > │ ## try_item                                                                  │

00:00:11 #125 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #126 [Verbose] >

00:00:11 #127 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #128 [Verbose] > inl rec try_item i = function

00:00:11 #129 [Verbose] >     | Cons (x, _) when i = 0 => Some x

00:00:11 #130 [Verbose] >     | Cons (_, xs) => try_item (i - 1) xs

00:00:11 #131 [Verbose] >     | Nil => None

00:00:11 #132 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4057-5752-5dfc15c5e77d\main.spi

00:00:11 #133 [Verbose] >

00:00:11 #134 [Verbose] > ╭─[ 201.34ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #135 [Verbose] > │ ()                                                                           │

00:00:11 #136 [Verbose] > │                                                                              │

00:00:11 #137 [Verbose] > │                                                                              │

00:00:11 #138 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #139 [Verbose] >

00:00:11 #140 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #141 [Verbose] > // // test

00:00:11 #142 [Verbose] >

00:00:11 #143 [Verbose] > listm.init 10i32 id

00:00:11 #144 [Verbose] > |> try_item 9i32

00:00:11 #145 [Verbose] > |> _equal (Some 9)

00:00:11 #146 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4077-7786-7cb2b096c1dc\main.spi

00:00:11 #147 [Verbose] >

00:00:11 #148 [Verbose] > ╭─[ 302.03ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #149 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:11 #150 [Verbose] > │     | US0_0                                                                  │

00:00:11 #151 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:11 #152 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #153 [Verbose] > │     let v3 : US0 = US0_1(9)                                                  │

00:00:11 #154 [Verbose] > │     let v4 : US0 = US0_1(9)                                                  │

00:00:11 #155 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:11 #156 [Verbose] > │     ()                                                                       │

00:00:11 #157 [Verbose] > │ method0()                                                                    │

00:00:11 #158 [Verbose] > │                                                                              │

00:00:11 #159 [Verbose] > │                                                                              │

00:00:11 #160 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #161 [Verbose] >

00:00:11 #162 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #163 [Verbose] > // // test

00:00:11 #164 [Verbose] >

00:00:11 #165 [Verbose] > listm.init 10i32 id

00:00:11 #166 [Verbose] > |> try_item 10i32

00:00:11 #167 [Verbose] > |> _equal None

00:00:11 #168 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4108-0867-07957761fc3d\main.spi

00:00:11 #169 [Verbose] >

00:00:11 #170 [Verbose] > ╭─[ 206.40ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #171 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:11 #172 [Verbose] > │     | US0_0                                                                  │

00:00:11 #173 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:11 #174 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #175 [Verbose] > │     let v3 : US0 = US0_0                                                     │

00:00:11 #176 [Verbose] > │     let v4 : US0 = US0_0                                                     │

00:00:11 #177 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:11 #178 [Verbose] > │     ()                                                                       │

00:00:11 #179 [Verbose] > │ method0()                                                                    │

00:00:11 #180 [Verbose] > │                                                                              │

00:00:11 #181 [Verbose] > │                                                                              │

00:00:11 #182 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #183 [Verbose] >

00:00:11 #184 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #185 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #186 [Verbose] > │ ## list_item                                                                 │

00:00:11 #187 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #188 [Verbose] >

00:00:11 #189 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #190 [Verbose] > inl item i =

00:00:11 #191 [Verbose] >     try_item i >> optionm.value

00:00:12 #192 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4129-2999-29b24f364c25\main.spi

00:00:12 #193 [Verbose] >

00:00:12 #194 [Verbose] > ╭─[ 172.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #195 [Verbose] > │ ()                                                                           │

00:00:12 #196 [Verbose] > │                                                                              │

00:00:12 #197 [Verbose] > │                                                                              │

00:00:12 #198 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #199 [Verbose] >

00:00:12 #200 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #201 [Verbose] > // // test

00:00:12 #202 [Verbose] >

00:00:12 #203 [Verbose] > listm.init 10i32 id

00:00:12 #204 [Verbose] > |> item 9i32

00:00:12 #205 [Verbose] > |> _equal 9

00:00:12 #206 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4147-4754-46c99191c7a6\main.spi

00:00:12 #207 [Verbose] >

00:00:12 #208 [Verbose] > ╭─[ 171.09ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #209 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #210 [Verbose] > │     let v0 : string = $"_equal / actual: %A{9} / expected: %A{9}"            │

00:00:12 #211 [Verbose] > │     ()                                                                       │

00:00:12 #212 [Verbose] > │ method0()                                                                    │

00:00:12 #213 [Verbose] > │                                                                              │

00:00:12 #214 [Verbose] > │                                                                              │

00:00:12 #215 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #216 [Verbose] >

00:00:12 #217 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #218 [Verbose] > // // test

00:00:12 #219 [Verbose] >

00:00:12 #220 [Verbose] > fun () =>

00:00:12 #221 [Verbose] >     listm.init 10i32 id

00:00:12 #222 [Verbose] >     |> item 10i32

00:00:12 #223 [Verbose] >     |> ignore

00:00:12 #224 [Verbose] > |> _throws

00:00:12 #225 [Verbose] > |> _equal (Some "Option does not have a value.")

00:00:12 #226 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4165-6503-6dfa8e962566\main.spi

00:00:12 #227 [Verbose] >

00:00:12 #228 [Verbose] > ╭─[ 347.18ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #229 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:12 #230 [Verbose] > │     | US0_0                                                                  │

00:00:12 #231 [Verbose] > │     | US0_1 of f1_0 : string                                                 │

00:00:12 #232 [Verbose] > │ let rec closure0 () () : unit =                                              │

00:00:12 #233 [Verbose] > │     let v0 : int32 = failwith<int32> "Option does not have a value."         │

00:00:12 #234 [Verbose] > │     ()                                                                       │

00:00:12 #235 [Verbose] > │ and closure1 () (v0 : string) : US0 =                                        │

00:00:12 #236 [Verbose] > │     US0_1(v0)                                                                │

00:00:12 #237 [Verbose] > │ and method0 () : unit =                                                      │

00:00:12 #238 [Verbose] > │     let v0 : (unit -> unit) = closure0()                                     │

00:00:12 #239 [Verbose] > │     let v1 : US0 = US0_0                                                     │

00:00:12 #240 [Verbose] > │     let v2 : (string -> US0) = closure1()                                    │

00:00:12 #241 [Verbose] > │     let v3 : US0 = try v0 (); v1 with ex -> v2 ex.Message                    │

00:00:12 #242 [Verbose] > │     let v8 : bool =                                                          │

00:00:12 #243 [Verbose] > │         match v3 with                                                        │

00:00:12 #244 [Verbose] > │         | US0_1(v6) -> (* Some *)                                            │

00:00:12 #245 [Verbose] > │             let v7 : bool = v6 = "Option does not have a value."             │

00:00:12 #246 [Verbose] > │             v7                                                               │

00:00:12 #247 [Verbose] > │         | _ ->                                                               │

00:00:12 #248 [Verbose] > │             false                                                            │

00:00:12 #249 [Verbose] > │     let v9 : string = "Option does not have a value."                        │

00:00:12 #250 [Verbose] > │     let v10 : US0 = US0_1(v9)                                                │

00:00:12 #251 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v3} / expected: %A{v10}"        │

00:00:12 #252 [Verbose] > │     let v12 : bool = v8 = false                                              │

00:00:12 #253 [Verbose] > │     if v12 then                                                              │

00:00:12 #254 [Verbose] > │         failwith<unit> v11                                                   │

00:00:12 #255 [Verbose] > │ method0()                                                                    │

00:00:12 #256 [Verbose] > │                                                                              │

00:00:12 #257 [Verbose] > │                                                                              │

00:00:12 #258 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #259 [Verbose] >

00:00:12 #260 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #261 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #262 [Verbose] > │ ## try_item_                                                                 │

00:00:12 #263 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #264 [Verbose] >

00:00:12 #265 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #266 [Verbose] > let rec try_item_ i = function

00:00:12 #267 [Verbose] >     | Cons (x, _) when i = 0 => Some x

00:00:12 #268 [Verbose] >     | Cons (_, xs) => try_item_ (i - 1) xs

00:00:12 #269 [Verbose] >     | Nil => None

00:00:12 #270 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4201-0132-04423a0c6e1c\main.spi

00:00:12 #271 [Verbose] >

00:00:12 #272 [Verbose] > ╭─[ 157.24ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #273 [Verbose] > │ ()                                                                           │

00:00:12 #274 [Verbose] > │                                                                              │

00:00:12 #275 [Verbose] > │                                                                              │

00:00:12 #276 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #277 [Verbose] >

00:00:12 #278 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #279 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #280 [Verbose] > │ ## item_                                                                     │

00:00:12 #281 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #282 [Verbose] >

00:00:12 #283 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #284 [Verbose] > inl item_ i =

00:00:12 #285 [Verbose] >     try_item_ i >> optionm.value

00:00:12 #286 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4217-1777-13469b99242b\main.spi

00:00:13 #287 [Verbose] >

00:00:13 #288 [Verbose] > ╭─[ 158.19ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #289 [Verbose] > │ ()                                                                           │

00:00:13 #290 [Verbose] > │                                                                              │

00:00:13 #291 [Verbose] > │                                                                              │

00:00:13 #292 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #293 [Verbose] >

00:00:13 #294 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #295 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #296 [Verbose] > │ ## sum                                                                       │

00:00:13 #297 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #298 [Verbose] >

00:00:13 #299 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #300 [Verbose] > inl sum list =

00:00:13 #301 [Verbose] >     list |> listm.fold (+) 0

00:00:13 #302 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4234-3404-3e936e1e6a56\main.spi

00:00:13 #303 [Verbose] >

00:00:13 #304 [Verbose] > ╭─[ 161.44ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #305 [Verbose] > │ ()                                                                           │

00:00:13 #306 [Verbose] > │                                                                              │

00:00:13 #307 [Verbose] > │                                                                              │

00:00:13 #308 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #309 [Verbose] >

00:00:13 #310 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #311 [Verbose] > // // test

00:00:13 #312 [Verbose] >

00:00:13 #313 [Verbose] > listm.init 10i32 id

00:00:13 #314 [Verbose] > |> sum

00:00:13 #315 [Verbose] > |> _equal 45

00:00:13 #316 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4250-5046-53abfc870b49\main.spi

00:00:13 #317 [Verbose] >

00:00:13 #318 [Verbose] > ╭─[ 201.13ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #319 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:13 #320 [Verbose] > │     let v0 : string = $"_equal / actual: %A{45} / expected: %A{45}"          │

00:00:13 #321 [Verbose] > │     ()                                                                       │

00:00:13 #322 [Verbose] > │ method0()                                                                    │

00:00:13 #323 [Verbose] > │                                                                              │

00:00:13 #324 [Verbose] > │                                                                              │

00:00:13 #325 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #326 [Verbose] >

00:00:13 #327 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #328 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #329 [Verbose] > │ ## unzip                                                                     │

00:00:13 #330 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #331 [Verbose] >

00:00:13 #332 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #333 [Verbose] > inl unzip list =

00:00:13 #334 [Verbose] >     (([[]], [[]]), list)

00:00:13 #335 [Verbose] >     ||> listm.fold fun (acc_x, acc_y) (x, y) =>

00:00:13 #336 [Verbose] >         x :: acc_x, y :: acc_y

00:00:13 #337 [Verbose] >     |> fun x, y =>

00:00:13 #338 [Verbose] >         x |> listm.rev, y |> listm.rev

00:00:13 #339 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4271-7112-758ec5fc276b\main.spi

00:00:13 #340 [Verbose] >

00:00:13 #341 [Verbose] > ╭─[ 187.66ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #342 [Verbose] > │ ()                                                                           │

00:00:13 #343 [Verbose] > │                                                                              │

00:00:13 #344 [Verbose] > │                                                                              │

00:00:13 #345 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #346 [Verbose] >

00:00:13 #347 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #348 [Verbose] > // // test

00:00:13 #349 [Verbose] >

00:00:13 #350 [Verbose] > listm.init 10i32 id

00:00:13 #351 [Verbose] > |> listm.map (fun x => x, x)

00:00:13 #352 [Verbose] > |> unzip

00:00:13 #353 [Verbose] > |> fun x, y =>

00:00:13 #354 [Verbose] >     x |> sum

00:00:13 #355 [Verbose] >     |> _equal 45

00:00:13 #356 [Verbose] >

00:00:13 #357 [Verbose] >     y |> sum

00:00:13 #358 [Verbose] >     |> _equal 45

00:00:13 #359 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4290-9026-9ac8710d47e0\main.spi

00:00:13 #360 [Verbose] >

00:00:13 #361 [Verbose] > ╭─[ 186.61ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #362 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:13 #363 [Verbose] > │     let v0 : string = $"_equal / actual: %A{45} / expected: %A{45}"          │

00:00:13 #364 [Verbose] > │     let v1 : string = $"_equal / actual: %A{45} / expected: %A{45}"          │

00:00:13 #365 [Verbose] > │     ()                                                                       │

00:00:13 #366 [Verbose] > │ method0()                                                                    │

00:00:13 #367 [Verbose] > │                                                                              │

00:00:13 #368 [Verbose] > │                                                                              │

00:00:13 #369 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #370 [Verbose] >

00:00:13 #371 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #372 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #373 [Verbose] > │ ## try_index_of                                                              │

00:00:13 #374 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #375 [Verbose] >

00:00:13 #376 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #377 [Verbose] > inl try_index_of item list =

00:00:13 #378 [Verbose] >     inl rec loop i = function

00:00:13 #379 [Verbose] >         | [[]] => None

00:00:13 #380 [Verbose] >         | x :: xs =>

00:00:13 #381 [Verbose] >             if x = item

00:00:13 #382 [Verbose] >             then Some i

00:00:13 #383 [Verbose] >             else loop (i + 1) xs

00:00:13 #384 [Verbose] >     loop 0 list

00:00:13 #385 [Verbose] >

00:00:13 #386 [Verbose] > inl index_of item =

00:00:13 #387 [Verbose] >     try_index_of item >> optionm.value

00:00:13 #388 [Verbose] >

00:00:13 #389 [Verbose] > inl try_index_of_ item list =

00:00:13 #390 [Verbose] >     let rec loop i = function

00:00:13 #391 [Verbose] >         | [[]] => None

00:00:13 #392 [Verbose] >         | x :: xs =>

00:00:13 #393 [Verbose] >             if x = item

00:00:13 #394 [Verbose] >             then Some i

00:00:13 #395 [Verbose] >             else loop (i + 1) xs

00:00:13 #396 [Verbose] >     loop 0 list

00:00:13 #397 [Verbose] >

00:00:13 #398 [Verbose] > inl index_of_ item =

00:00:13 #399 [Verbose] >     try_index_of_ item >> optionm.value

00:00:13 #400 [Verbose] >

00:00:13 #401 [Verbose] > inl try_index_of__ item list =

00:00:13 #402 [Verbose] >     inl i = mut 0

00:00:13 #403 [Verbose] >     inl list = mut list

00:00:13 #404 [Verbose] >     inl result = mut None

00:00:13 #405 [Verbose] >     let rec loop () =

00:00:13 #406 [Verbose] >         match *list with

00:00:13 #407 [Verbose] >         | [[]] => result <- None

00:00:13 #408 [Verbose] >         | x :: xs =>

00:00:13 #409 [Verbose] >             if x = item

00:00:13 #410 [Verbose] >             then result <- Some *i

00:00:13 #411 [Verbose] >             else

00:00:13 #412 [Verbose] >                 i <- *i + 1

00:00:13 #413 [Verbose] >                 list <- xs

00:00:13 #414 [Verbose] >                 loop ()

00:00:13 #415 [Verbose] >     loop ()

00:00:13 #416 [Verbose] >     *result

00:00:13 #417 [Verbose] >

00:00:13 #418 [Verbose] > inl index_of__ item =

00:00:13 #419 [Verbose] >     try_index_of__ item >> optionm.value

00:00:13 #420 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4309-0981-0b2540ab3bf8\main.spi

00:00:13 #421 [Verbose] >

00:00:13 #422 [Verbose] > ╭─[ 205.87ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #423 [Verbose] > │ ()                                                                           │

00:00:13 #424 [Verbose] > │                                                                              │

00:00:13 #425 [Verbose] > │                                                                              │

00:00:13 #426 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #427 [Verbose] >

00:00:14 #428 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #429 [Verbose] > // // test

00:00:14 #430 [Verbose] >

00:00:14 #431 [Verbose] > listm.init 10i32 id

00:00:14 #432 [Verbose] > |> index_of 5i32

00:00:14 #433 [Verbose] > |> _equal 5i32

00:00:14 #434 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4330-3035-3d7b7961d255\main.spi

00:00:14 #435 [Verbose] >

00:00:14 #436 [Verbose] > ╭─[ 184.88ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #437 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #438 [Verbose] > │     let v0 : string = $"_equal / actual: %A{5} / expected: %A{5}"            │

00:00:14 #439 [Verbose] > │     ()                                                                       │

00:00:14 #440 [Verbose] > │ method0()                                                                    │

00:00:14 #441 [Verbose] > │                                                                              │

00:00:14 #442 [Verbose] > │                                                                              │

00:00:14 #443 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #444 [Verbose] >

00:00:14 #445 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #446 [Verbose] > // // test

00:00:14 #447 [Verbose] >

00:00:14 #448 [Verbose] > listm.init 10i32 id

00:00:14 #449 [Verbose] > |> try_index_of 10i32

00:00:14 #450 [Verbose] > |> _equal (None : option i32)

00:00:14 #451 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4349-4934-414600079ff5\main.spi

00:00:14 #452 [Verbose] >

00:00:14 #453 [Verbose] > ╭─[ 265.53ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #454 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:14 #455 [Verbose] > │     | US0_0                                                                  │

00:00:14 #456 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:14 #457 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #458 [Verbose] > │     let v3 : US0 = US0_0                                                     │

00:00:14 #459 [Verbose] > │     let v4 : US0 = US0_0                                                     │

00:00:14 #460 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:14 #461 [Verbose] > │     ()                                                                       │

00:00:14 #462 [Verbose] > │ method0()                                                                    │

00:00:14 #463 [Verbose] > │                                                                              │

00:00:14 #464 [Verbose] > │                                                                              │

00:00:14 #465 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #466 [Verbose] >

00:00:14 #467 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:14 #468 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:14 #469 [Verbose] > │ ## try_find                                                                  │

00:00:14 #470 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #471 [Verbose] >

00:00:14 #472 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #473 [Verbose] > inl try_find fn list =

00:00:14 #474 [Verbose] >     inl rec loop = function

00:00:14 #475 [Verbose] >         | [[]] => None

00:00:14 #476 [Verbose] >         | x :: xs =>

00:00:14 #477 [Verbose] >             if fn x

00:00:14 #478 [Verbose] >             then Some x

00:00:14 #479 [Verbose] >             else loop xs

00:00:14 #480 [Verbose] >     loop list

00:00:14 #481 [Verbose] >

00:00:14 #482 [Verbose] > inl try_find_ fn list =

00:00:14 #483 [Verbose] >     let rec loop = function

00:00:14 #484 [Verbose] >         | [[]] => None

00:00:14 #485 [Verbose] >         | x :: xs =>

00:00:14 #486 [Verbose] >             if fn x

00:00:14 #487 [Verbose] >             then Some x

00:00:14 #488 [Verbose] >             else loop xs

00:00:14 #489 [Verbose] >     loop list

00:00:14 #490 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4376-7678-73f3437e2d6b\main.spi

00:00:14 #491 [Verbose] >

00:00:14 #492 [Verbose] > ╭─[ 163.95ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #493 [Verbose] > │ ()                                                                           │

00:00:14 #494 [Verbose] > │                                                                              │

00:00:14 #495 [Verbose] > │                                                                              │

00:00:14 #496 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #497 [Verbose] >

00:00:14 #498 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #499 [Verbose] > // // test

00:00:14 #500 [Verbose] >

00:00:14 #501 [Verbose] > listm.init 10i32 id

00:00:14 #502 [Verbose] > |> try_find ((=) 5i32)

00:00:14 #503 [Verbose] > |> _equal (Some 5i32)

00:00:14 #504 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4393-9333-9853e504eac2\main.spi

00:00:14 #505 [Verbose] >

00:00:14 #506 [Verbose] > ╭─[ 224.32ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #507 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:14 #508 [Verbose] > │     | US0_0                                                                  │

00:00:14 #509 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:14 #510 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #511 [Verbose] > │     let v3 : US0 = US0_1(5)                                                  │

00:00:14 #512 [Verbose] > │     let v4 : US0 = US0_1(5)                                                  │

00:00:14 #513 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:14 #514 [Verbose] > │     ()                                                                       │

00:00:14 #515 [Verbose] > │ method0()                                                                    │

00:00:14 #516 [Verbose] > │                                                                              │

00:00:14 #517 [Verbose] > │                                                                              │

00:00:14 #518 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #519 [Verbose] >

00:00:14 #520 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #521 [Verbose] > inl find x =

00:00:14 #522 [Verbose] >     try_find x >> optionm.value

00:00:14 #523 [Verbose] >

00:00:14 #524 [Verbose] > inl find_ x =

00:00:14 #525 [Verbose] >     try_find_ x >> optionm.value

00:00:14 #526 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4416-1635-19287a7ee9d6\main.spi

00:00:15 #527 [Verbose] >

00:00:15 #528 [Verbose] > ╭─[ 202.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #529 [Verbose] > │ ()                                                                           │

00:00:15 #530 [Verbose] > │                                                                              │

00:00:15 #531 [Verbose] > │                                                                              │

00:00:15 #532 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #533 [Verbose] >

00:00:15 #534 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #535 [Verbose] > // // test

00:00:15 #536 [Verbose] >

00:00:15 #537 [Verbose] > listm.init 10i32 id

00:00:15 #538 [Verbose] > |> find ((=) 5i32)

00:00:15 #539 [Verbose] > |> _equal 5i32

00:00:15 #540 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4436-3682-334de1503d4c\main.spi

00:00:15 #541 [Verbose] >

00:00:15 #542 [Verbose] > ╭─[ 163.23ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #543 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:15 #544 [Verbose] > │     let v0 : string = $"_equal / actual: %A{5} / expected: %A{5}"            │

00:00:15 #545 [Verbose] > │     ()                                                                       │

00:00:15 #546 [Verbose] > │ method0()                                                                    │

00:00:15 #547 [Verbose] > │                                                                              │

00:00:15 #548 [Verbose] > │                                                                              │

00:00:15 #549 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #550 [Verbose] >

00:00:15 #551 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #552 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #553 [Verbose] > │ ## choose                                                                    │

00:00:15 #554 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #555 [Verbose] >

00:00:15 #556 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #557 [Verbose] > inl choose f l =

00:00:15 #558 [Verbose] >     (l, [[]])

00:00:15 #559 [Verbose] >     ||> listm.foldBack fun x acc =>

00:00:15 #560 [Verbose] >         match f x with

00:00:15 #561 [Verbose] >         | Some y => y :: acc

00:00:15 #562 [Verbose] >         | None => acc

00:00:15 #563 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4453-5379-5056c1d32daf\main.spi

00:00:15 #564 [Verbose] >

00:00:15 #565 [Verbose] > ╭─[ 196.15ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #566 [Verbose] > │ ()                                                                           │

00:00:15 #567 [Verbose] > │                                                                              │

00:00:15 #568 [Verbose] > │                                                                              │

00:00:15 #569 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #570 [Verbose] >

00:00:15 #571 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #572 [Verbose] > // // test

00:00:15 #573 [Verbose] >

00:00:15 #574 [Verbose] > listm.init 10i32 id

00:00:15 #575 [Verbose] > |> choose (fun x => if x % 2 = 0 then Some x else None)

00:00:15 #576 [Verbose] > |> _equal [[ 0; 2; 4; 6; 8 ]]

00:00:15 #577 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4473-7377-70dbb907ed89\main.spi

00:00:15 #578 [Verbose] >

00:00:15 #579 [Verbose] > ╭─[ 191.96ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #580 [Verbose] > │ type UH0 =                                                                   │

00:00:15 #581 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:15 #582 [Verbose] > │     | UH0_1                                                                  │

00:00:15 #583 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:15 #584 [Verbose] > │     let v33 : UH0 = UH0_1                                                    │

00:00:15 #585 [Verbose] > │     let v34 : UH0 = UH0_0(8, v33)                                            │

00:00:15 #586 [Verbose] > │     let v35 : UH0 = UH0_0(6, v34)                                            │

00:00:15 #587 [Verbose] > │     let v36 : UH0 = UH0_0(4, v35)                                            │

00:00:15 #588 [Verbose] > │     let v37 : UH0 = UH0_0(2, v36)                                            │

00:00:15 #589 [Verbose] > │     let v38 : UH0 = UH0_0(0, v37)                                            │

00:00:15 #590 [Verbose] > │     let v39 : UH0 = UH0_1                                                    │

00:00:15 #591 [Verbose] > │     let v40 : UH0 = UH0_0(8, v39)                                            │

00:00:15 #592 [Verbose] > │     let v41 : UH0 = UH0_0(6, v40)                                            │

00:00:15 #593 [Verbose] > │     let v42 : UH0 = UH0_0(4, v41)                                            │

00:00:15 #594 [Verbose] > │     let v43 : UH0 = UH0_0(2, v42)                                            │

00:00:15 #595 [Verbose] > │     let v44 : UH0 = UH0_0(0, v43)                                            │

00:00:15 #596 [Verbose] > │     let v45 : string = $"_equal / actual: %A{v38} / expected: %A{v44}"       │

00:00:15 #597 [Verbose] > │     ()                                                                       │

00:00:15 #598 [Verbose] > │ method0()                                                                    │

00:00:15 #599 [Verbose] > │                                                                              │

00:00:15 #600 [Verbose] > │                                                                              │

00:00:15 #601 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #602 [Verbose] >

00:00:15 #603 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #604 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #605 [Verbose] > │ ## zip_with                                                                  │

00:00:15 #606 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #607 [Verbose] >

00:00:15 #608 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #609 [Verbose] > inl zip_with fn xs ys =

00:00:15 #610 [Verbose] >     inl rec loop acc xs ys =

00:00:15 #611 [Verbose] >         match xs, ys with

00:00:15 #612 [Verbose] >         | Cons (x, xs), Cons (y, ys) =>

00:00:15 #613 [Verbose] >             loop (fn x y :: acc) xs ys

00:00:15 #614 [Verbose] >         | _ => listm.rev acc

00:00:15 #615 [Verbose] >     loop [[]] xs ys

00:00:15 #616 [Verbose] >

00:00:15 #617 [Verbose] > inl zip_with_ fn xs ys =

00:00:15 #618 [Verbose] >     let rec loop acc xs ys =

00:00:15 #619 [Verbose] >         match xs, ys with

00:00:15 #620 [Verbose] >         | Cons (x, xs), Cons (y, ys) =>

00:00:15 #621 [Verbose] >             loop (fn x y :: acc) xs ys

00:00:15 #622 [Verbose] >         | _ => listm.rev acc

00:00:15 #623 [Verbose] >     loop [[]] xs ys

00:00:15 #624 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4494-9406-9621761e7b8d\main.spi

00:00:15 #625 [Verbose] >

00:00:15 #626 [Verbose] > ╭─[ 173.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #627 [Verbose] > │ ()                                                                           │

00:00:15 #628 [Verbose] > │                                                                              │

00:00:15 #629 [Verbose] > │                                                                              │

00:00:15 #630 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #631 [Verbose] >

00:00:15 #632 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #633 [Verbose] > // // test

00:00:15 #634 [Verbose] >

00:00:15 #635 [Verbose] > ([[ 1i32; 2; 3 ]], [[ 4; 5; 6 ]])

00:00:15 #636 [Verbose] > ||> zip_with (+)

00:00:15 #637 [Verbose] > |> _equal [[ 5; 7; 9 ]]

00:00:15 #638 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4511-1158-119446709583\main.spi

00:00:16 #639 [Verbose] >

00:00:16 #640 [Verbose] > ╭─[ 239.42ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #641 [Verbose] > │ type UH0 =                                                                   │

00:00:16 #642 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:16 #643 [Verbose] > │     | UH0_1                                                                  │

00:00:16 #644 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:16 #645 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:16 #646 [Verbose] > │     let v19 : UH0 = UH0_0(9, v18)                                            │

00:00:16 #647 [Verbose] > │     let v20 : UH0 = UH0_0(7, v19)                                            │

00:00:16 #648 [Verbose] > │     let v21 : UH0 = UH0_0(5, v20)                                            │

00:00:16 #649 [Verbose] > │     let v22 : UH0 = UH0_1                                                    │

00:00:16 #650 [Verbose] > │     let v23 : UH0 = UH0_0(9, v22)                                            │

00:00:16 #651 [Verbose] > │     let v24 : UH0 = UH0_0(7, v23)                                            │

00:00:16 #652 [Verbose] > │     let v25 : UH0 = UH0_0(5, v24)                                            │

00:00:16 #653 [Verbose] > │     let v26 : string = $"_equal / actual: %A{v21} / expected: %A{v25}"       │

00:00:16 #654 [Verbose] > │     ()                                                                       │

00:00:16 #655 [Verbose] > │ method0()                                                                    │

00:00:16 #656 [Verbose] > │                                                                              │

00:00:16 #657 [Verbose] > │                                                                              │

00:00:16 #658 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #659 [Verbose] >

00:00:16 #660 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:16 #661 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:16 #662 [Verbose] > │ ## zip                                                                       │

00:00:16 #663 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #664 [Verbose] >

00:00:16 #665 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #666 [Verbose] > inl zip xs ys =

00:00:16 #667 [Verbose] >     zip_with pair xs ys

00:00:16 #668 [Verbose] >

00:00:16 #669 [Verbose] > inl zip_ xs ys =

00:00:16 #670 [Verbose] >     zip_with_ pair xs ys

00:00:16 #671 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4536-3658-3572e9d1528f\main.spi

00:00:16 #672 [Verbose] >

00:00:16 #673 [Verbose] > ╭─[ 180.53ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #674 [Verbose] > │ ()                                                                           │

00:00:16 #675 [Verbose] > │                                                                              │

00:00:16 #676 [Verbose] > │                                                                              │

00:00:16 #677 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #678 [Verbose] >

00:00:16 #679 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #680 [Verbose] > // // test

00:00:16 #681 [Verbose] >

00:00:16 #682 [Verbose] > ([[ 1i32; 2; 3 ]], [[ 4i32; 5; 6 ]])

00:00:16 #683 [Verbose] > ||> zip

00:00:16 #684 [Verbose] > |> _equal [[ 1, 4; 2, 5; 3, 6 ]]

00:00:16 #685 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4554-5492-5a88bce439c5\main.spi

00:00:16 #686 [Verbose] >

00:00:16 #687 [Verbose] > ╭─[ 268.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #688 [Verbose] > │ type UH0 =                                                                   │

00:00:16 #689 [Verbose] > │     | UH0_0 of int32 * int32 * UH0                                           │

00:00:16 #690 [Verbose] > │     | UH0_1                                                                  │

00:00:16 #691 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:16 #692 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:16 #693 [Verbose] > │     let v19 : UH0 = UH0_0(3, 6, v18)                                         │

00:00:16 #694 [Verbose] > │     let v20 : UH0 = UH0_0(2, 5, v19)                                         │

00:00:16 #695 [Verbose] > │     let v21 : UH0 = UH0_0(1, 4, v20)                                         │

00:00:16 #696 [Verbose] > │     let v22 : UH0 = UH0_1                                                    │

00:00:16 #697 [Verbose] > │     let v23 : UH0 = UH0_0(3, 6, v22)                                         │

00:00:16 #698 [Verbose] > │     let v24 : UH0 = UH0_0(2, 5, v23)                                         │

00:00:16 #699 [Verbose] > │     let v25 : UH0 = UH0_0(1, 4, v24)                                         │

00:00:16 #700 [Verbose] > │     let v26 : string = $"_equal / actual: %A{v21} / expected: %A{v25}"       │

00:00:16 #701 [Verbose] > │     ()                                                                       │

00:00:16 #702 [Verbose] > │ method0()                                                                    │

00:00:16 #703 [Verbose] > │                                                                              │

00:00:16 #704 [Verbose] > │                                                                              │

00:00:16 #705 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #706 [Verbose] >

00:00:16 #707 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:16 #708 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:16 #709 [Verbose] > │ ## indexed                                                                   │

00:00:16 #710 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #711 [Verbose] >

00:00:16 #712 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #713 [Verbose] > inl indexed list =

00:00:16 #714 [Verbose] >     (([[]], 0), list)

00:00:16 #715 [Verbose] >     ||> listm.fold fun (acc, i) x =>

00:00:16 #716 [Verbose] >         (i, x) :: acc, i + 1

00:00:16 #717 [Verbose] >     |> fst

00:00:16 #718 [Verbose] >     |> listm.rev

00:00:16 #719 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4582-8270-8ac67601725b\main.spi

00:00:16 #720 [Verbose] >

00:00:16 #721 [Verbose] > ╭─[ 185.07ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #722 [Verbose] > │ ()                                                                           │

00:00:16 #723 [Verbose] > │                                                                              │

00:00:16 #724 [Verbose] > │                                                                              │

00:00:16 #725 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #726 [Verbose] >

00:00:16 #727 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #728 [Verbose] > // // test

00:00:16 #729 [Verbose] >

00:00:16 #730 [Verbose] > listm.init 5i32 ((*) 2)

00:00:16 #731 [Verbose] > |> indexed

00:00:16 #732 [Verbose] > |> _equal [[ 0i32, 0; 1, 2; 2, 4; 3, 6; 4, 8 ]]

00:00:16 #733 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4601-0142-06ab9bff2270\main.spi

00:00:16 #734 [Verbose] >

00:00:16 #735 [Verbose] > ╭─[ 227.12ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #736 [Verbose] > │ type UH0 =                                                                   │

00:00:16 #737 [Verbose] > │     | UH0_0 of int32 * int32 * UH0                                           │

00:00:16 #738 [Verbose] > │     | UH0_1                                                                  │

00:00:16 #739 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:16 #740 [Verbose] > │     let v33 : UH0 = UH0_1                                                    │

00:00:16 #741 [Verbose] > │     let v34 : UH0 = UH0_0(4, 8, v33)                                         │

00:00:16 #742 [Verbose] > │     let v35 : UH0 = UH0_0(3, 6, v34)                                         │

00:00:16 #743 [Verbose] > │     let v36 : UH0 = UH0_0(2, 4, v35)                                         │

00:00:16 #744 [Verbose] > │     let v37 : UH0 = UH0_0(1, 2, v36)                                         │

00:00:16 #745 [Verbose] > │     let v38 : UH0 = UH0_0(0, 0, v37)                                         │

00:00:16 #746 [Verbose] > │     let v39 : UH0 = UH0_1                                                    │

00:00:16 #747 [Verbose] > │     let v40 : UH0 = UH0_0(4, 8, v39)                                         │

00:00:16 #748 [Verbose] > │     let v41 : UH0 = UH0_0(3, 6, v40)                                         │

00:00:16 #749 [Verbose] > │     let v42 : UH0 = UH0_0(2, 4, v41)                                         │

00:00:16 #750 [Verbose] > │     let v43 : UH0 = UH0_0(1, 2, v42)                                         │

00:00:16 #751 [Verbose] > │     let v44 : UH0 = UH0_0(0, 0, v43)                                         │

00:00:16 #752 [Verbose] > │     let v45 : string = $"_equal / actual: %A{v38} / expected: %A{v44}"       │

00:00:16 #753 [Verbose] > │     ()                                                                       │

00:00:16 #754 [Verbose] > │ method0()                                                                    │

00:00:16 #755 [Verbose] > │                                                                              │

00:00:16 #756 [Verbose] > │                                                                              │

00:00:16 #757 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #758 [Verbose] >

00:00:16 #759 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:16 #760 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:16 #761 [Verbose] > │ ## group_by                                                                  │

00:00:16 #762 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #763 [Verbose] >

00:00:16 #764 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #765 [Verbose] > inl group_by fn list =

00:00:16 #766 [Verbose] >     (list, [[]])

00:00:16 #767 [Verbose] >     ||> listm.foldBack fun x acc =>

00:00:16 #768 [Verbose] >         inl xk = fn x

00:00:16 #769 [Verbose] >         inl found, new_acc =

00:00:16 #770 [Verbose] >             ((false, [[]]), acc)

00:00:16 #771 [Verbose] >             ||> listm.fold fun (found, acc') (k, xs) =>

00:00:16 #772 [Verbose] >                 if k = xk

00:00:16 #773 [Verbose] >                 then true, (k, x :: xs) :: acc'

00:00:16 #774 [Verbose] >                 else found, (k, xs) :: acc'

00:00:16 #775 [Verbose] >         if found

00:00:16 #776 [Verbose] >         then new_acc

00:00:16 #777 [Verbose] >         else (xk, [[ x ]]) :: new_acc

00:00:17 #778 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4625-2531-2b0eb2d42a5f\main.spi

00:00:17 #779 [Verbose] >

00:00:17 #780 [Verbose] > ╭─[ 160.99ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #781 [Verbose] > │ ()                                                                           │

00:00:17 #782 [Verbose] > │                                                                              │

00:00:17 #783 [Verbose] > │                                                                              │

00:00:17 #784 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #785 [Verbose] >

00:00:17 #786 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #787 [Verbose] > // // test

00:00:17 #788 [Verbose] >

00:00:17 #789 [Verbose] > listm.init 10i32 id

00:00:17 #790 [Verbose] > |> group_by (fun x => x % 2 = 0)

00:00:17 #791 [Verbose] > |> _equal [[ true, [[ 0; 2; 4; 6; 8 ]]; false, [[ 1; 3; 5; 7; 9 ]] ]]

00:00:17 #792 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4642-4218-496f4571860f\main.spi

00:00:17 #793 [Verbose] >

00:00:17 #794 [Verbose] > ╭─[ 297.28ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #795 [Verbose] > │ type UH0 =                                                                   │

00:00:17 #796 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:17 #797 [Verbose] > │     | UH0_1                                                                  │

00:00:17 #798 [Verbose] > │ and UH1 =                                                                    │

00:00:17 #799 [Verbose] > │     | UH1_0 of bool * UH0 * UH1                                              │

00:00:17 #800 [Verbose] > │     | UH1_1                                                                  │

00:00:17 #801 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:17 #802 [Verbose] > │     let v96 : UH0 = UH0_1                                                    │

00:00:17 #803 [Verbose] > │     let v97 : UH0 = UH0_0(8, v96)                                            │

00:00:17 #804 [Verbose] > │     let v98 : UH0 = UH0_0(6, v97)                                            │

00:00:17 #805 [Verbose] > │     let v99 : UH0 = UH0_0(4, v98)                                            │

00:00:17 #806 [Verbose] > │     let v100 : UH0 = UH0_0(2, v99)                                           │

00:00:17 #807 [Verbose] > │     let v101 : UH0 = UH0_0(0, v100)                                          │

00:00:17 #808 [Verbose] > │     let v102 : UH0 = UH0_1                                                   │

00:00:17 #809 [Verbose] > │     let v103 : UH0 = UH0_0(9, v102)                                          │

00:00:17 #810 [Verbose] > │     let v104 : UH0 = UH0_0(7, v103)                                          │

00:00:17 #811 [Verbose] > │     let v105 : UH0 = UH0_0(5, v104)                                          │

00:00:17 #812 [Verbose] > │     let v106 : UH0 = UH0_0(3, v105)                                          │

00:00:17 #813 [Verbose] > │     let v107 : UH0 = UH0_0(1, v106)                                          │

00:00:17 #814 [Verbose] > │     let v108 : UH1 = UH1_1                                                   │

00:00:17 #815 [Verbose] > │     let v109 : UH1 = UH1_0(false, v107, v108)                                │

00:00:17 #816 [Verbose] > │     let v110 : UH1 = UH1_0(true, v101, v109)                                 │

00:00:17 #817 [Verbose] > │     let v111 : UH0 = UH0_1                                                   │

00:00:17 #818 [Verbose] > │     let v112 : UH0 = UH0_0(8, v111)                                          │

00:00:17 #819 [Verbose] > │     let v113 : UH0 = UH0_0(6, v112)                                          │

00:00:17 #820 [Verbose] > │     let v114 : UH0 = UH0_0(4, v113)                                          │

00:00:17 #821 [Verbose] > │     let v115 : UH0 = UH0_0(2, v114)                                          │

00:00:17 #822 [Verbose] > │     let v116 : UH0 = UH0_0(0, v115)                                          │

00:00:17 #823 [Verbose] > │     let v117 : UH0 = UH0_1                                                   │

00:00:17 #824 [Verbose] > │     let v118 : UH0 = UH0_0(9, v117)                                          │

00:00:17 #825 [Verbose] > │     let v119 : UH0 = UH0_0(7, v118)                                          │

00:00:17 #826 [Verbose] > │     let v120 : UH0 = UH0_0(5, v119)                                          │

00:00:17 #827 [Verbose] > │     let v121 : UH0 = UH0_0(3, v120)                                          │

00:00:17 #828 [Verbose] > │     let v122 : UH0 = UH0_0(1, v121)                                          │

00:00:17 #829 [Verbose] > │     let v123 : UH1 = UH1_1                                                   │

00:00:17 #830 [Verbose] > │     let v124 : UH1 = UH1_0(false, v122, v123)                                │

00:00:17 #831 [Verbose] > │     let v125 : UH1 = UH1_0(true, v116, v124)                                 │

00:00:17 #832 [Verbose] > │     let v126 : string = $"_equal / actual: %A{v110} / expected: %A{v125}"    │

00:00:17 #833 [Verbose] > │     ()                                                                       │

00:00:17 #834 [Verbose] > │ method0()                                                                    │

00:00:17 #835 [Verbose] > │                                                                              │

00:00:17 #836 [Verbose] > │                                                                              │

00:00:17 #837 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #838 [Verbose] >

00:00:17 #839 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:17 #840 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:17 #841 [Verbose] > │ ## forall'                                                                   │

00:00:17 #842 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #843 [Verbose] >

00:00:17 #844 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #845 [Verbose] > inl forall' fn (head :: tail) =

00:00:17 #846 [Verbose] >     (true, tail)

00:00:17 #847 [Verbose] >     ||> listm.fold fun acc x =>

00:00:17 #848 [Verbose] >         acc && x = head

00:00:17 #849 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4673-7374-7e2375097ed3\main.spi

00:00:17 #850 [Verbose] >

00:00:17 #851 [Verbose] > ╭─[ 186.26ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #852 [Verbose] > │ ()                                                                           │

00:00:17 #853 [Verbose] > │                                                                              │

00:00:17 #854 [Verbose] > │                                                                              │

00:00:17 #855 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #856 [Verbose] >

00:00:17 #857 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #858 [Verbose] > // // test

00:00:17 #859 [Verbose] >

00:00:17 #860 [Verbose] > [[ 1i32; 1; 1; 1; 1 ]]

00:00:17 #861 [Verbose] > |> forall' ((=) 1i32)

00:00:17 #862 [Verbose] > |> _equal true

00:00:17 #863 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4692-9252-9be3e1ac38ac\main.spi

00:00:17 #864 [Verbose] >

00:00:17 #865 [Verbose] > ╭─[ 189.42ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #866 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:17 #867 [Verbose] > │     let v0 : string = $"_equal / actual: %A{true} / expected: %A{true}"      │

00:00:17 #868 [Verbose] > │     ()                                                                       │

00:00:17 #869 [Verbose] > │ method0()                                                                    │

00:00:17 #870 [Verbose] > │                                                                              │

00:00:17 #871 [Verbose] > │                                                                              │

00:00:17 #872 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #873 [Verbose] >

00:00:17 #874 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:17 #875 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:17 #876 [Verbose] > │ ## last                                                                      │

00:00:17 #877 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #878 [Verbose] >

00:00:17 #879 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #880 [Verbose] > inl last list =

00:00:17 #881 [Verbose] >     list

00:00:17 #882 [Verbose] >     |> listm.rev

00:00:17 #883 [Verbose] >     |> item 0i32

00:00:17 #884 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4712-1230-19a4b2abff76\main.spi

00:00:18 #885 [Verbose] >

00:00:18 #886 [Verbose] > ╭─[ 254.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #887 [Verbose] > │ ()                                                                           │

00:00:18 #888 [Verbose] > │                                                                              │

00:00:18 #889 [Verbose] > │                                                                              │

00:00:18 #890 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #891 [Verbose] >

00:00:18 #892 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #893 [Verbose] > // // test

00:00:18 #894 [Verbose] >

00:00:18 #895 [Verbose] > listm.init 10i32 id

00:00:18 #896 [Verbose] > |> last

00:00:18 #897 [Verbose] > |> _equal 9

00:00:18 #898 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-4737-3786-3594254db9ce\main.spi

00:00:18 #899 [Verbose] >

00:00:18 #900 [Verbose] > ╭─[ 198.08ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #901 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:18 #902 [Verbose] > │     let v0 : string = $"_equal / actual: %A{9} / expected: %A{9}"            │

00:00:18 #903 [Verbose] > │     ()                                                                       │

00:00:18 #904 [Verbose] > │ method0()                                                                    │

00:00:18 #905 [Verbose] > │                                                                              │

00:00:18 #906 [Verbose] > │                                                                              │

00:00:18 #907 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #908 [Verbose] > [NbConvertApp] Converting notebook listm'.dib.ipynb to html

00:00:19 #909 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:19 #910 [Verbose] >   validate(nb)

00:00:20 #911 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:20 #912 [Verbose] >   return _pygments_highlight(

00:00:20 #913 [Verbose] > [NbConvertApp] Writing 354401 bytes to listm'.dib.html

00:00:21 #914 [Debug] executeAsync / exitCode: 0 / output.Length: 47863

00:00:21 #915 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 benchmark.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ ## benchmark (Polyglot)                                                      │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:04 #16 [Verbose] >

00:00:04 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:04 #18 [Verbose] > // // test

00:00:04 #19 [Verbose] >

00:00:04 #20 [Verbose] > open testing

00:00:07 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1300-5778-7888-739efaa5f9b5\main.spi

00:00:09 #22 [Verbose] >

00:00:09 #23 [Verbose] > ╭─[ 5.43s - stdout ]───────────────────────────────────────────────────────────╮

00:00:09 #24 [Verbose] > │ ()                                                                           │

00:00:09 #25 [Verbose] > │                                                                              │

00:00:09 #26 [Verbose] > │                                                                              │

00:00:09 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #28 [Verbose] >

00:00:09 #29 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #30 [Verbose] > inl (/@) x = listm'.(/@) x

00:00:09 #31 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0096-9642-90b888932a81\main.spi

00:00:09 #32 [Verbose] >

00:00:09 #33 [Verbose] > ╭─[ 195.27ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #34 [Verbose] > │ ()                                                                           │

00:00:09 #35 [Verbose] > │                                                                              │

00:00:09 #36 [Verbose] > │                                                                              │

00:00:09 #37 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #38 [Verbose] >

00:00:09 #39 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #40 [Verbose] > inl am'_average forall el {number}. (array : a _ el) : el =

00:00:09 #41 [Verbose] >     $"!array |> Array.average"

00:00:09 #42 [Verbose] >

00:00:09 #43 [Verbose] > inl am'_parallel_map forall dim el el'. (fn : el -> el') (array : a dim el) : a

00:00:09 #44 [Verbose] > dim el' =

00:00:09 #45 [Verbose] >     $"!array |> Array.Parallel.map !fn"

00:00:09 #46 [Verbose] >

00:00:09 #47 [Verbose] > inl am'_sort_by forall dim el. (fn : el -> _) (array : a dim el) : a dim el =

00:00:09 #48 [Verbose] >     $"!array |> Array.sortBy !fn"

00:00:09 #49 [Verbose] >

00:00:09 #50 [Verbose] > inl am'_sort_descending forall dim el. (array : a dim el) : a dim el =

00:00:09 #51 [Verbose] >     $"!array |> Array.sortDescending"

00:00:09 #52 [Verbose] >

00:00:09 #53 [Verbose] > inl am'_transpose forall dim el. (array : a dim (a dim el)) : a dim (a dim el) =

00:00:09 #54 [Verbose] >     $"!array |> Array.transpose"

00:00:09 #55 [Verbose] >

00:00:09 #56 [Verbose] > inl am'_try_item forall dim el. (i : i32) (array : a dim el) : option el =

00:00:09 #57 [Verbose] >     $"!array |> Array.tryItem !i" |> optionm'.from_fsharp

00:00:09 #58 [Verbose] >

00:00:09 #59 [Verbose] > nominal console_color = $"System.ConsoleColor"

00:00:09 #60 [Verbose] >

00:00:09 #61 [Verbose] > inl console_reset_color () : () =

00:00:09 #62 [Verbose] >     run_target function

00:00:09 #63 [Verbose] >         | Fsharp => fun () => $"System.Console.ResetColor ()"

00:00:09 #64 [Verbose] >         | _ => fun () => ()

00:00:09 #65 [Verbose] >

00:00:09 #66 [Verbose] > inl console_set_foreground_color (color : console_color) : () =

00:00:09 #67 [Verbose] >     run_target function

00:00:09 #68 [Verbose] >         | Fsharp => fun () => $"System.Console.ForegroundColor <- !color"

00:00:09 #69 [Verbose] >         | _ => fun () => ()

00:00:09 #70 [Verbose] >

00:00:09 #71 [Verbose] > inl gc_collect () =

00:00:09 #72 [Verbose] >     run_target function

00:00:09 #73 [Verbose] >         | Fsharp => fun () => $"System.GC.Collect ()"

00:00:09 #74 [Verbose] >         | _ => fun () => ()

00:00:09 #75 [Verbose] >

00:00:09 #76 [Verbose] > nominal map k v = $"Map<`k, `v>"

00:00:09 #77 [Verbose] >

00:00:09 #78 [Verbose] > inl map_item forall k v. (k : k) (map : map k v) : v =

00:00:09 #79 [Verbose] >     $"!map.[[!k]]"

00:00:09 #80 [Verbose] >

00:00:09 #81 [Verbose] > inl map_of_array forall k v. (array : a _ (k * v)) : map k v =

00:00:09 #82 [Verbose] >     $"!array |> Array.map (fun (struct (a, b)) -> a, b) |> Map.ofArray"

00:00:09 #83 [Verbose] >

00:00:09 #84 [Verbose] > inl printfn x =

00:00:09 #85 [Verbose] >     console.write_line x

00:00:09 #86 [Verbose] >

00:00:09 #87 [Verbose] > nominal stopwatch = $"System.Diagnostics.Stopwatch"

00:00:09 #88 [Verbose] >

00:00:09 #89 [Verbose] > inl stopwatch () : stopwatch =

00:00:09 #90 [Verbose] >     $"`stopwatch" ()

00:00:09 #91 [Verbose] >

00:00:09 #92 [Verbose] > inl stopwatch_elapsed_milliseconds (stopwatch : stopwatch) : i64 =

00:00:09 #93 [Verbose] >     $"!stopwatch.ElapsedMilliseconds"

00:00:09 #94 [Verbose] >

00:00:09 #95 [Verbose] > inl stopwatch_start (stopwatch : stopwatch) : () =

00:00:09 #96 [Verbose] >     $"!stopwatch.Start ()"

00:00:09 #97 [Verbose] >

00:00:09 #98 [Verbose] > inl string_concat (a : string) (b : a _ _) : string =

00:00:09 #99 [Verbose] >     $"!b |> String.concat !a"

00:00:09 #100 [Verbose] >

00:00:09 #101 [Verbose] > inl string_join (concat : string) (s : a _ string) : string =

00:00:09 #102 [Verbose] >     $"System.String.Join (!concat, !s)"

00:00:09 #103 [Verbose] >

00:00:09 #104 [Verbose] >

00:00:09 #105 [Verbose] > inl string_pad_right (pad : i32) (s : string) : string =

00:00:09 #106 [Verbose] >     $"!s.PadRight !pad"

00:00:09 #107 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0115-1597-19210c3bcb11\main.spi

00:00:09 #108 [Verbose] >

00:00:09 #109 [Verbose] > ╭─[ 170.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #110 [Verbose] > │ ()                                                                           │

00:00:09 #111 [Verbose] > │                                                                              │

00:00:09 #112 [Verbose] > │                                                                              │

00:00:09 #113 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #114 [Verbose] >

00:00:09 #115 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #116 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #117 [Verbose] > │ ## test_case_result                                                          │

00:00:09 #118 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #119 [Verbose] >

00:00:09 #120 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #121 [Verbose] > type test_case_result =

00:00:09 #122 [Verbose] >     {

00:00:09 #123 [Verbose] >         Input : string

00:00:09 #124 [Verbose] >         Expected : string

00:00:09 #125 [Verbose] >         Result : string

00:00:09 #126 [Verbose] >         TimeList : a u64 i64

00:00:09 #127 [Verbose] >     }

00:00:09 #128 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0133-3355-37156f744b13\main.spi

00:00:09 #129 [Verbose] >

00:00:09 #130 [Verbose] > ╭─[ 166.39ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #131 [Verbose] > │ ()                                                                           │

00:00:09 #132 [Verbose] > │                                                                              │

00:00:09 #133 [Verbose] > │                                                                              │

00:00:09 #134 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #135 [Verbose] >

00:00:09 #136 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #137 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #138 [Verbose] > │ ## run                                                                       │

00:00:09 #139 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #140 [Verbose] >

00:00:09 #141 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #142 [Verbose] > inl run forall input expected.

00:00:09 #143 [Verbose] >     count

00:00:09 #144 [Verbose] >     (solutions : list (string * (input -> expected)))

00:00:09 #145 [Verbose] >     ((input, expected) : (input * expected))

00:00:09 #146 [Verbose] >     : test_case_result

00:00:09 #147 [Verbose] >     =

00:00:09 #148 [Verbose] >     inl input_str = input |> format_debug

00:00:09 #149 [Verbose] >

00:00:09 #150 [Verbose] >     printfn ""

00:00:09 #151 [Verbose] >     printfn ($"$\"Solution: {!input_str}  \"" : string)

00:00:09 #152 [Verbose] >

00:00:09 #153 [Verbose] >     inl performance_invoke (fn : () -> expected) =

00:00:09 #154 [Verbose] >         gc_collect ()

00:00:09 #155 [Verbose] >         inl stopwatch = stopwatch ()

00:00:09 #156 [Verbose] >         stopwatch |> stopwatch_start

00:00:09 #157 [Verbose] >         inl time1 = stopwatch |> stopwatch_elapsed_milliseconds

00:00:09 #158 [Verbose] >         inl result : expected =

00:00:09 #159 [Verbose] >             am'.init_series 0 count 1i32

00:00:09 #160 [Verbose] >             |> am'_parallel_map fun _n => fn ()

00:00:09 #161 [Verbose] >             |> am'.last

00:00:09 #162 [Verbose] >         inl time2 = (stopwatch |> stopwatch_elapsed_milliseconds) - time1

00:00:09 #163 [Verbose] >         result, time2

00:00:09 #164 [Verbose] >

00:00:09 #165 [Verbose] >     inl results_with_time : a u64 _ =

00:00:09 #166 [Verbose] >         solutions

00:00:09 #167 [Verbose] >         |> listm'.indexed

00:00:09 #168 [Verbose] >         |> listm.toArray

00:00:09 #169 [Verbose] >         |> am.map fun ((i : i32), (test_name, solution)) =>

00:00:09 #170 [Verbose] >             inl result, time = performance_invoke fun () => solution input

00:00:09 #171 [Verbose] >             printfn ($"$\"Test case {!i + 1}. {!test_name}. Time: {!time}  \"" :

00:00:09 #172 [Verbose] > string)

00:00:09 #173 [Verbose] >             result, time

00:00:09 #174 [Verbose] >

00:00:09 #175 [Verbose] >     match results_with_time |> am.map fst with

00:00:09 #176 [Verbose] >     | array when length array <= 1 => ()

00:00:09 #177 [Verbose] >     | array when array |> am.forall' ((=) (index array 0)) => ()

00:00:09 #178 [Verbose] >     | results => failwith ($"$\"Challenge error: {!results}\"" : string)

00:00:09 #179 [Verbose] >

00:00:09 #180 [Verbose] >     {

00:00:09 #181 [Verbose] >         Input = input_str

00:00:09 #182 [Verbose] >         Expected = expected |> format_debug

00:00:09 #183 [Verbose] >         Result = results_with_time |> am.map fst |> fun array => index array 0

00:00:09 #184 [Verbose] > |> format_debug

00:00:09 #185 [Verbose] >         TimeList = results_with_time |> am.map snd

00:00:09 #186 [Verbose] >     }

00:00:10 #187 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0150-5083-5361ef2d138e\main.spi

00:00:10 #188 [Verbose] >

00:00:10 #189 [Verbose] > ╭─[ 164.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #190 [Verbose] > │ ()                                                                           │

00:00:10 #191 [Verbose] > │                                                                              │

00:00:10 #192 [Verbose] > │                                                                              │

00:00:10 #193 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #194 [Verbose] >

00:00:10 #195 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #196 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #197 [Verbose] > │ ## run_all                                                                   │

00:00:10 #198 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #199 [Verbose] >

00:00:10 #200 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #201 [Verbose] > inl run_all forall input expected.

00:00:10 #202 [Verbose] >     test_name

00:00:10 #203 [Verbose] >     count

00:00:10 #204 [Verbose] >     (solutions : list (string * (input -> expected)))

00:00:10 #205 [Verbose] >     test_cases

00:00:10 #206 [Verbose] >     =

00:00:10 #207 [Verbose] >     printfn ""

00:00:10 #208 [Verbose] >     printfn ""

00:00:10 #209 [Verbose] >     printfn ($"$\"Test: {!test_name}\"" : string)

00:00:10 #210 [Verbose] >     test_cases

00:00:10 #211 [Verbose] >     |> listm.toArray

00:00:10 #212 [Verbose] >     |> am.map (run count solutions)

00:00:10 #213 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0167-6757-600f6a3fc3e9\main.spi

00:00:10 #214 [Verbose] >

00:00:10 #215 [Verbose] > ╭─[ 175.66ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #216 [Verbose] > │ ()                                                                           │

00:00:10 #217 [Verbose] > │                                                                              │

00:00:10 #218 [Verbose] > │                                                                              │

00:00:10 #219 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #220 [Verbose] >

00:00:10 #221 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #222 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #223 [Verbose] > │ ## sort_result_list                                                          │

00:00:10 #224 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #225 [Verbose] >

00:00:10 #226 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #227 [Verbose] > inl sort_result_list results =

00:00:10 #228 [Verbose] >     inl table =

00:00:10 #229 [Verbose] >         inl rows =

00:00:10 #230 [Verbose] >             results

00:00:10 #231 [Verbose] >             |> am.map fun (result : test_case_result) =>

00:00:10 #232 [Verbose] >                 inl best =

00:00:10 #233 [Verbose] >                     result.TimeList

00:00:10 #234 [Verbose] >                     |> am'.indexed

00:00:10 #235 [Verbose] >                     |> am.map fun (i, time) =>

00:00:10 #236 [Verbose] >                         i + 1i64, time

00:00:10 #237 [Verbose] >                     |> am'_sort_by snd

00:00:10 #238 [Verbose] >                     |> fun array => index array 0i32

00:00:10 #239 [Verbose] >                     |> format_debug

00:00:10 #240 [Verbose] >                 inl row =

00:00:10 #241 [Verbose] >                     [[

00:00:10 #242 [Verbose] >                         result.Input

00:00:10 #243 [Verbose] >                         result.Expected

00:00:10 #244 [Verbose] >                         result.Result

00:00:10 #245 [Verbose] >                         best

00:00:10 #246 [Verbose] >                     ]]

00:00:10 #247 [Verbose] >                 inl color : option console_color =

00:00:10 #248 [Verbose] >                     match result.Expected = result.Result with

00:00:10 #249 [Verbose] >                     | true => Some $"`console_color.DarkGreen"

00:00:10 #250 [Verbose] >                     | false => Some $"`console_color.DarkRed"

00:00:10 #251 [Verbose] >                 row, color

00:00:10 #252 [Verbose] >

00:00:10 #253 [Verbose] >         inl header =

00:00:10 #254 [Verbose] >             [[

00:00:10 #255 [Verbose] >                 [[

00:00:10 #256 [Verbose] >                     "Input"

00:00:10 #257 [Verbose] >                     "Expected"

00:00:10 #258 [Verbose] >                     "Result"

00:00:10 #259 [Verbose] >                     "Best"

00:00:10 #260 [Verbose] >                 ]]

00:00:10 #261 [Verbose] >                 [[

00:00:10 #262 [Verbose] >                     "---"

00:00:10 #263 [Verbose] >                     "---"

00:00:10 #264 [Verbose] >                     "---"

00:00:10 #265 [Verbose] >                     "---"

00:00:10 #266 [Verbose] >                 ]]

00:00:10 #267 [Verbose] >             ]]

00:00:10 #268 [Verbose] >             |> listm.map fun row => row, None

00:00:10 #269 [Verbose] >             |> listm.toArray

00:00:10 #270 [Verbose] >         rows |> am.append header

00:00:10 #271 [Verbose] >

00:00:10 #272 [Verbose] >     inl formattedTable =

00:00:10 #273 [Verbose] >         inl lengthMap : map i32 i64 =

00:00:10 #274 [Verbose] >             table

00:00:10 #275 [Verbose] >             |> am.map (fst >> listm.toArray)

00:00:10 #276 [Verbose] >             |> am'_transpose

00:00:10 #277 [Verbose] >             |> am.map fun column =>

00:00:10 #278 [Verbose] >                 column

00:00:10 #279 [Verbose] >                 |> am.map sm.length

00:00:10 #280 [Verbose] >                 |> am'_sort_descending

00:00:10 #281 [Verbose] >                 |> am'_try_item 0i32

00:00:10 #282 [Verbose] >                 |> optionm'.default_value 0i64

00:00:10 #283 [Verbose] >             |> am'.indexed

00:00:10 #284 [Verbose] >             |> fun (x : a i32 _) => x

00:00:10 #285 [Verbose] >             |> map_of_array

00:00:10 #286 [Verbose] >         table

00:00:10 #287 [Verbose] >         |> am.map fun (row, color) =>

00:00:10 #288 [Verbose] >             inl newRow =

00:00:10 #289 [Verbose] >                 row

00:00:10 #290 [Verbose] >                 |> listm'.indexed

00:00:10 #291 [Verbose] >                 |> listm.map fun (i, cell) =>

00:00:10 #292 [Verbose] >                     cell |> string_pad_right (lengthMap |> map_item i |> conv)

00:00:10 #293 [Verbose] >                 |> listm.toArray

00:00:10 #294 [Verbose] >             newRow, color

00:00:10 #295 [Verbose] >

00:00:10 #296 [Verbose] >     printfn ""

00:00:10 #297 [Verbose] >     formattedTable

00:00:10 #298 [Verbose] >     |> am.iter fun ((row : a i32 string), color) =>

00:00:10 #299 [Verbose] >         match color with

00:00:10 #300 [Verbose] >         | Some color => color |> console_set_foreground_color

00:00:10 #301 [Verbose] >         | None => console_reset_color ()

00:00:10 #302 [Verbose] >

00:00:10 #303 [Verbose] >         printfn (row |> string_join "\t| ")

00:00:10 #304 [Verbose] >

00:00:10 #305 [Verbose] >         console_reset_color ()

00:00:10 #306 [Verbose] >

00:00:10 #307 [Verbose] >     inl averages : a u64 _ =

00:00:10 #308 [Verbose] >         results

00:00:10 #309 [Verbose] >         |> am.map fun result =>

00:00:10 #310 [Verbose] >             result.TimeList

00:00:10 #311 [Verbose] >             |> am.map ($"float" : i64 -> f64)

00:00:10 #312 [Verbose] >         |> am'_transpose

00:00:10 #313 [Verbose] >         |> am.map am'_average

00:00:10 #314 [Verbose] >         |> am.map ($"int64" : f64 -> i64)

00:00:10 #315 [Verbose] >         |> am'.indexed

00:00:10 #316 [Verbose] >

00:00:10 #317 [Verbose] >     printfn ""

00:00:10 #318 [Verbose] >     printfn "Average Ranking  "

00:00:10 #319 [Verbose] >     averages

00:00:10 #320 [Verbose] >     |> am'_sort_by snd

00:00:10 #321 [Verbose] >     |> am.iter fun ((i : i32), avg) =>

00:00:10 #322 [Verbose] >         printfn ($"$\"Test case %d{!i + 1}. Average Time: %A{!avg}  \"" :

00:00:10 #323 [Verbose] > string)

00:00:10 #324 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0185-8581-83769c8c659e\main.spi

00:00:10 #325 [Verbose] >

00:00:10 #326 [Verbose] > ╭─[ 200.17ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #327 [Verbose] > │ ()                                                                           │

00:00:10 #328 [Verbose] > │                                                                              │

00:00:10 #329 [Verbose] > │                                                                              │

00:00:10 #330 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #331 [Verbose] >

00:00:10 #332 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #333 [Verbose] > // // test

00:00:10 #334 [Verbose] >

00:00:10 #335 [Verbose] > inl is_fast () =

00:00:10 #336 [Verbose] >     false

00:00:10 #337 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0206-0604-020bddf4c963\main.spi

00:00:10 #338 [Verbose] >

00:00:10 #339 [Verbose] > ╭─[ 172.69ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #340 [Verbose] > │ ()                                                                           │

00:00:10 #341 [Verbose] > │                                                                              │

00:00:10 #342 [Verbose] > │                                                                              │

00:00:10 #343 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #344 [Verbose] >

00:00:10 #345 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #346 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #347 [Verbose] > │ ## empty2Tests                                                               │

00:00:10 #348 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #349 [Verbose] >

00:00:10 #350 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #351 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #352 [Verbose] > │ Test: Empty2                                                                 │

00:00:10 #353 [Verbose] > │                                                                              │

00:00:10 #354 [Verbose] > │ Solution: (a, a)                                                             │

00:00:10 #355 [Verbose] > │ Test case 1. A. Time: 59L                                                    │

00:00:10 #356 [Verbose] > │                                                                              │

00:00:10 #357 [Verbose] > │ Solution: (a, a)                                                             │

00:00:10 #358 [Verbose] > │ Test case 1. A. Time: 53L                                                    │

00:00:10 #359 [Verbose] > │                                                                              │

00:00:10 #360 [Verbose] > │ Input   | Expected        | Result  | Best                                   │

00:00:10 #361 [Verbose] > │ ---     | ---             | ---     | ---                                    │

00:00:10 #362 [Verbose] > │ (a, a)  | a               | a       | (1, 59)                                │

00:00:10 #363 [Verbose] > │ (a, a)  | a               | a       | (1, 53)                                │

00:00:10 #364 [Verbose] > │                                                                              │

00:00:10 #365 [Verbose] > │ Averages                                                                     │

00:00:10 #366 [Verbose] > │ Test case 1. Average Time: 56L                                               │

00:00:10 #367 [Verbose] > │                                                                              │

00:00:10 #368 [Verbose] > │ Ranking                                                                      │

00:00:10 #369 [Verbose] > │ Test case 1. Average Time: 56L                                               │

00:00:10 #370 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #371 [Verbose] >

00:00:10 #372 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #373 [Verbose] > // // test

00:00:10 #374 [Verbose] >

00:00:10 #375 [Verbose] > inl get_solutions () =

00:00:10 #376 [Verbose] >     [[

00:00:10 #377 [Verbose] >         "A",

00:00:10 #378 [Verbose] >         fun (a, _b) =>

00:00:10 #379 [Verbose] >             a

00:00:10 #380 [Verbose] >

00:00:10 #381 [Verbose] >         "B",

00:00:10 #382 [Verbose] >         fun (_a, b) =>

00:00:10 #383 [Verbose] >             b

00:00:10 #384 [Verbose] >     ]]

00:00:10 #385 [Verbose] >

00:00:10 #386 [Verbose] > inl rec empty_2_tests () =

00:00:10 #387 [Verbose] >     inl test_cases = [[

00:00:10 #388 [Verbose] >         ("a", "a"), "a"

00:00:10 #389 [Verbose] >         ("b", "b"), "b"

00:00:10 #390 [Verbose] >     ]]

00:00:10 #391 [Verbose] >

00:00:10 #392 [Verbose] >     inl solutions = get_solutions ()

00:00:10 #393 [Verbose] >

00:00:10 #394 [Verbose] >     // inl is_fast () = true

00:00:10 #395 [Verbose] >

00:00:10 #396 [Verbose] >     inl count =

00:00:10 #397 [Verbose] >         if is_fast ()

00:00:10 #398 [Verbose] >         then 1000i32

00:00:10 #399 [Verbose] >         else 2000000i32

00:00:10 #400 [Verbose] >

00:00:10 #401 [Verbose] >     run_all (nameof empty_2_tests) count solutions test_cases

00:00:10 #402 [Verbose] >     |> sort_result_list

00:00:10 #403 [Verbose] >

00:00:10 #404 [Verbose] > empty_2_tests ()

00:00:10 #405 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-0224-2467-2cc3c652c7d3\main.spi

00:00:21 #406 [Verbose] >

00:00:21 #407 [Verbose] > ╭─[ 10.48s - stdout ]──────────────────────────────────────────────────────────╮

00:00:21 #408 [Verbose] > │ type UH0 =                                                                   │

00:00:21 #409 [Verbose] > │     | UH0_0 of string * string * string * UH0                                │

00:00:21 #410 [Verbose] > │     | UH0_1                                                                  │

00:00:21 #411 [Verbose] > │ and Mut0 = {mutable l0 : uint64}                                             │

00:00:21 #412 [Verbose] > │ and UH1 =                                                                    │

00:00:21 #413 [Verbose] > │     | UH1_0 of int32 * string * (struct (string * string) -> string) * UH1   │

00:00:21 #414 [Verbose] > │     | UH1_1                                                                  │

00:00:21 #415 [Verbose] > │ and Mut1 = {mutable l0 : int32}                                              │

00:00:21 #416 [Verbose] > │ and UH2 =                                                                    │

00:00:21 #417 [Verbose] > │     | UH2_0 of string * UH2                                                  │

00:00:21 #418 [Verbose] > │     | UH2_1                                                                  │

00:00:21 #419 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:21 #420 [Verbose] > │     | US0_0                                                                  │

00:00:21 #421 [Verbose] > │     | US0_1 of f1_0 : System.ConsoleColor                                    │

00:00:21 #422 [Verbose] > │ and UH3 =                                                                    │

00:00:21 #423 [Verbose] > │     | UH3_0 of int64 * int64 * UH3                                           │

00:00:21 #424 [Verbose] > │     | UH3_1                                                                  │

00:00:21 #425 [Verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH3; mutable l2 : int64}       │

00:00:21 #426 [Verbose] > │ and UH4 =                                                                    │

00:00:21 #427 [Verbose] > │     | UH4_0 of UH2 * US0 * UH4                                               │

00:00:21 #428 [Verbose] > │     | UH4_1                                                                  │

00:00:21 #429 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:21 #430 [Verbose] > │     | US1_0                                                                  │

00:00:21 #431 [Verbose] > │     | US1_1 of f1_0 : int64                                                  │

00:00:21 #432 [Verbose] > │ and UH5 =                                                                    │

00:00:21 #433 [Verbose] > │     | UH5_0 of int32 * int64 * UH5                                           │

00:00:21 #434 [Verbose] > │     | UH5_1                                                                  │

00:00:21 #435 [Verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH5; mutable l2 : int32}       │

00:00:21 #436 [Verbose] > │ and UH6 =                                                                    │

00:00:21 #437 [Verbose] > │     | UH6_0 of int32 * string * UH6                                          │

00:00:21 #438 [Verbose] > │     | UH6_1                                                                  │

00:00:21 #439 [Verbose] > │ let rec method2 (v0 : UH0, v1 : uint64) : uint64 =                           │

00:00:21 #440 [Verbose] > │     match v0 with                                                            │

00:00:21 #441 [Verbose] > │     | UH0_0(v2, v3, v4, v5) -> (* Cons *)                                    │

00:00:21 #442 [Verbose] > │         let v6 : uint64 = v1 + 1UL                                           │

00:00:21 #443 [Verbose] > │         method2(v5, v6)                                                      │

00:00:21 #444 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:21 #445 [Verbose] > │         v1                                                                   │

00:00:21 #446 [Verbose] > │ and method3 (v0 : (struct (string * string * string) []), v1 : UH0, v2 :     │

00:00:21 #447 [Verbose] > │ uint64) : uint64 =                                                           │

00:00:21 #448 [Verbose] > │     match v1 with                                                            │

00:00:21 #449 [Verbose] > │     | UH0_0(v3, v4, v5, v6) -> (* Cons *)                                    │

00:00:21 #450 [Verbose] > │         v0.[int v2] <- struct (v3, v4, v5)                                   │

00:00:21 #451 [Verbose] > │         let v7 : uint64 = v2 + 1UL                                           │

00:00:21 #452 [Verbose] > │         method3(v0, v6, v7)                                                  │

00:00:21 #453 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:21 #454 [Verbose] > │         v2                                                                   │

00:00:21 #455 [Verbose] > │ and method1 (v0 : UH0) : (struct (string * string * string) []) =            │

00:00:21 #456 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:21 #457 [Verbose] > │     let v2 : uint64 = method2(v0, v1)                                        │

00:00:21 #458 [Verbose] > │     let v3 : (struct (string * string * string) []) =                        │

00:00:21 #459 [Verbose] > │ Array.zeroCreate<struct (string * string * string)>                          │

00:00:21 #460 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:21 #461 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:21 #462 [Verbose] > │     let v5 : uint64 = method3(v3, v0, v4)                                    │

00:00:21 #463 [Verbose] > │     v3                                                                       │

00:00:21 #464 [Verbose] > │ and method4 (v0 : uint64, v1 : Mut0) : bool =                                │

00:00:21 #465 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:21 #466 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #467 [Verbose] > │     v3                                                                       │

00:00:21 #468 [Verbose] > │ and closure1 () struct (v0 : string, v1 : string) : string =                 │

00:00:21 #469 [Verbose] > │     v0                                                                       │

00:00:21 #470 [Verbose] > │ and closure2 () struct (v0 : string, v1 : string) : string =                 │

00:00:21 #471 [Verbose] > │     v1                                                                       │

00:00:21 #472 [Verbose] > │ and method6 (v0 : UH1, v1 : uint64) : uint64 =                               │

00:00:21 #473 [Verbose] > │     match v0 with                                                            │

00:00:21 #474 [Verbose] > │     | UH1_0(v2, v3, v4, v5) -> (* Cons *)                                    │

00:00:21 #475 [Verbose] > │         let v6 : uint64 = v1 + 1UL                                           │

00:00:21 #476 [Verbose] > │         method6(v5, v6)                                                      │

00:00:21 #477 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:21 #478 [Verbose] > │         v1                                                                   │

00:00:21 #479 [Verbose] > │ and method7 (v0 : (struct (int32 * string * (struct (string * string) ->     │

00:00:21 #480 [Verbose] > │ string)) []), v1 : UH1, v2 : uint64) : uint64 =                              │

00:00:21 #481 [Verbose] > │     match v1 with                                                            │

00:00:21 #482 [Verbose] > │     | UH1_0(v3, v4, v5, v6) -> (* Cons *)                                    │

00:00:21 #483 [Verbose] > │         v0.[int v2] <- struct (v3, v4, v5)                                   │

00:00:21 #484 [Verbose] > │         let v7 : uint64 = v2 + 1UL                                           │

00:00:21 #485 [Verbose] > │         method7(v0, v6, v7)                                                  │

00:00:21 #486 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:21 #487 [Verbose] > │         v2                                                                   │

00:00:21 #488 [Verbose] > │ and method5 (v0 : UH1) : (struct (int32 * string * (struct (string * string) │

00:00:21 #489 [Verbose] > │ -> string)) []) =                                                            │

00:00:21 #490 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:21 #491 [Verbose] > │     let v2 : uint64 = method6(v0, v1)                                        │

00:00:21 #492 [Verbose] > │     let v3 : (struct (int32 * string * (struct (string * string) -> string)) │

00:00:21 #493 [Verbose] > │ []) = Array.zeroCreate<struct (int32 * string * (struct (string * string) -> │

00:00:21 #494 [Verbose] > │ string))> (System.Convert.ToInt32(v2))                                       │

00:00:21 #495 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:21 #496 [Verbose] > │     let v5 : uint64 = method7(v3, v0, v4)                                    │

00:00:21 #497 [Verbose] > │     v3                                                                       │

00:00:21 #498 [Verbose] > │ and closure3 () () : unit =                                                  │

00:00:21 #499 [Verbose] > │     ()                                                                       │

00:00:21 #500 [Verbose] > │ and closure4 () () : unit =                                                  │

00:00:21 #501 [Verbose] > │     System.GC.Collect ()                                                     │

00:00:21 #502 [Verbose] > │     ()                                                                       │

00:00:21 #503 [Verbose] > │ and method8 (v0 : Mut1) : bool =                                             │

00:00:21 #504 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:21 #505 [Verbose] > │     let v2 : bool = v1 < 2000001                                             │

00:00:21 #506 [Verbose] > │     v2                                                                       │

00:00:21 #507 [Verbose] > │ and closure5 (v0 : string, v1 : string, v2 : (struct (string * string) ->    │

00:00:21 #508 [Verbose] > │ string)) (v3 : int32) : string =                                             │

00:00:21 #509 [Verbose] > │     v2 struct (v0, v1)                                                       │

00:00:21 #510 [Verbose] > │ and method9 (v0 : string, v1 : (string []), v2 : uint64) : bool =            │

00:00:21 #511 [Verbose] > │     let v3 : uint64 = System.Convert.ToUInt64 v1.Length                      │

00:00:21 #512 [Verbose] > │     let v4 : bool = v2 < v3                                                  │

00:00:21 #513 [Verbose] > │     if v4 then                                                               │

00:00:21 #514 [Verbose] > │         let v5 : string = v1.[int v2]                                        │

00:00:21 #515 [Verbose] > │         let v6 : bool = v0 = v5                                              │

00:00:21 #516 [Verbose] > │         if v6 then                                                           │

00:00:21 #517 [Verbose] > │             let v7 : uint64 = v2 + 1UL                                       │

00:00:21 #518 [Verbose] > │             method9(v0, v1, v7)                                              │

00:00:21 #519 [Verbose] > │         else                                                                 │

00:00:21 #520 [Verbose] > │             false                                                            │

00:00:21 #521 [Verbose] > │     else                                                                     │

00:00:21 #522 [Verbose] > │         true                                                                 │

00:00:21 #523 [Verbose] > │ and method10 (v0 : uint64, v1 : Mut2) : bool =                               │

00:00:21 #524 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:21 #525 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #526 [Verbose] > │     v3                                                                       │

00:00:21 #527 [Verbose] > │ and method11 (v0 : UH3, v1 : UH3) : UH3 =                                    │

00:00:21 #528 [Verbose] > │     match v0 with                                                            │

00:00:21 #529 [Verbose] > │     | UH3_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:21 #530 [Verbose] > │         let v5 : UH3 = UH3_0(v2, v3, v1)                                     │

00:00:21 #531 [Verbose] > │         method11(v4, v5)                                                     │

00:00:21 #532 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:21 #533 [Verbose] > │         v1                                                                   │

00:00:21 #534 [Verbose] > │ and method13 (v0 : UH3, v1 : int32) : int32 =                                │

00:00:21 #535 [Verbose] > │     match v0 with                                                            │

00:00:21 #536 [Verbose] > │     | UH3_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:21 #537 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:21 #538 [Verbose] > │         method13(v4, v5)                                                     │

00:00:21 #539 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:21 #540 [Verbose] > │         v1                                                                   │

00:00:21 #541 [Verbose] > │ and method14 (v0 : (struct (int64 * int64) []), v1 : UH3, v2 : int32) :      │

00:00:21 #542 [Verbose] > │ int32 =                                                                      │

00:00:21 #543 [Verbose] > │     match v1 with                                                            │

00:00:21 #544 [Verbose] > │     | UH3_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:21 #545 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:21 #546 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:21 #547 [Verbose] > │         method14(v0, v5, v6)                                                 │

00:00:21 #548 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:21 #549 [Verbose] > │         v2                                                                   │

00:00:21 #550 [Verbose] > │ and method12 (v0 : UH3) : (struct (int64 * int64) []) =                      │

00:00:21 #551 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:21 #552 [Verbose] > │     let v2 : int32 = method13(v0, v1)                                        │

00:00:21 #553 [Verbose] > │     let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 *  │

00:00:21 #554 [Verbose] > │ int64)> (v2)                                                                 │

00:00:21 #555 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:21 #556 [Verbose] > │     let v5 : int32 = method14(v3, v0, v4)                                    │

00:00:21 #557 [Verbose] > │     v3                                                                       │

00:00:21 #558 [Verbose] > │ and method15 (v0 : int32, v1 : Mut1) : bool =                                │

00:00:21 #559 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:21 #560 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #561 [Verbose] > │     v3                                                                       │

00:00:21 #562 [Verbose] > │ and closure6 () struct (v0 : int64, v1 : int64) : int64 =                    │

00:00:21 #563 [Verbose] > │     v1                                                                       │

00:00:21 #564 [Verbose] > │ and method17 (v0 : UH4, v1 : uint64) : uint64 =                              │

00:00:21 #565 [Verbose] > │     match v0 with                                                            │

00:00:21 #566 [Verbose] > │     | UH4_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:21 #567 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:21 #568 [Verbose] > │         method17(v4, v5)                                                     │

00:00:21 #569 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:21 #570 [Verbose] > │         v1                                                                   │

00:00:21 #571 [Verbose] > │ and method18 (v0 : (struct (UH2 * US0) []), v1 : UH4, v2 : uint64) : uint64  │

00:00:21 #572 [Verbose] > │ =                                                                            │

00:00:21 #573 [Verbose] > │     match v1 with                                                            │

00:00:21 #574 [Verbose] > │     | UH4_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:21 #575 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:21 #576 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:21 #577 [Verbose] > │         method18(v0, v5, v6)                                                 │

00:00:21 #578 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:21 #579 [Verbose] > │         v2                                                                   │

00:00:21 #580 [Verbose] > │ and method16 (v0 : UH4) : (struct (UH2 * US0) []) =                          │

00:00:21 #581 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:21 #582 [Verbose] > │     let v2 : uint64 = method17(v0, v1)                                       │

00:00:21 #583 [Verbose] > │     let v3 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)>  │

00:00:21 #584 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:21 #585 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:21 #586 [Verbose] > │     let v5 : uint64 = method18(v3, v0, v4)                                   │

00:00:21 #587 [Verbose] > │     v3                                                                       │

00:00:21 #588 [Verbose] > │ and method20 (v0 : UH2, v1 : uint64) : uint64 =                              │

00:00:21 #589 [Verbose] > │     match v0 with                                                            │

00:00:21 #590 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:21 #591 [Verbose] > │         let v4 : uint64 = v1 + 1UL                                           │

00:00:21 #592 [Verbose] > │         method20(v3, v4)                                                     │

00:00:21 #593 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:21 #594 [Verbose] > │         v1                                                                   │

00:00:21 #595 [Verbose] > │ and method21 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 =            │

00:00:21 #596 [Verbose] > │     match v1 with                                                            │

00:00:21 #597 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:21 #598 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:21 #599 [Verbose] > │         let v5 : uint64 = v2 + 1UL                                           │

00:00:21 #600 [Verbose] > │         method21(v0, v4, v5)                                                 │

00:00:21 #601 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:21 #602 [Verbose] > │         v2                                                                   │

00:00:21 #603 [Verbose] > │ and method19 (v0 : UH2) : (string []) =                                      │

00:00:21 #604 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:21 #605 [Verbose] > │     let v2 : uint64 = method20(v0, v1)                                       │

00:00:21 #606 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string>                          │

00:00:21 #607 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:21 #608 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:21 #609 [Verbose] > │     let v5 : uint64 = method21(v3, v0, v4)                                   │

00:00:21 #610 [Verbose] > │     v3                                                                       │

00:00:21 #611 [Verbose] > │ and closure7 () (v0 : int64) : US1 =                                         │

00:00:21 #612 [Verbose] > │     US1_1(v0)                                                                │

00:00:21 #613 [Verbose] > │ and method22 (v0 : uint64, v1 : Mut3) : bool =                               │

00:00:21 #614 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:21 #615 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #616 [Verbose] > │     v3                                                                       │

00:00:21 #617 [Verbose] > │ and method23 (v0 : UH5, v1 : UH5) : UH5 =                                    │

00:00:21 #618 [Verbose] > │     match v0 with                                                            │

00:00:21 #619 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:21 #620 [Verbose] > │         let v5 : UH5 = UH5_0(v2, v3, v1)                                     │

00:00:21 #621 [Verbose] > │         method23(v4, v5)                                                     │

00:00:21 #622 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:21 #623 [Verbose] > │         v1                                                                   │

00:00:21 #624 [Verbose] > │ and method25 (v0 : UH5, v1 : int32) : int32 =                                │

00:00:21 #625 [Verbose] > │     match v0 with                                                            │

00:00:21 #626 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:21 #627 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:21 #628 [Verbose] > │         method25(v4, v5)                                                     │

00:00:21 #629 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:21 #630 [Verbose] > │         v1                                                                   │

00:00:21 #631 [Verbose] > │ and method26 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : int32) :      │

00:00:21 #632 [Verbose] > │ int32 =                                                                      │

00:00:21 #633 [Verbose] > │     match v1 with                                                            │

00:00:21 #634 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:21 #635 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:21 #636 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:21 #637 [Verbose] > │         method26(v0, v5, v6)                                                 │

00:00:21 #638 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:21 #639 [Verbose] > │         v2                                                                   │

00:00:21 #640 [Verbose] > │ and method24 (v0 : UH5) : (struct (int32 * int64) []) =                      │

00:00:21 #641 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:21 #642 [Verbose] > │     let v2 : int32 = method25(v0, v1)                                        │

00:00:21 #643 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:00:21 #644 [Verbose] > │ int64)> (v2)                                                                 │

00:00:21 #645 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:21 #646 [Verbose] > │     let v5 : int32 = method26(v3, v0, v4)                                    │

00:00:21 #647 [Verbose] > │     v3                                                                       │

00:00:21 #648 [Verbose] > │ and method27 (v0 : UH2, v1 : UH6, v2 : int32) : struct (UH6 * int32) =       │

00:00:21 #649 [Verbose] > │     match v0 with                                                            │

00:00:21 #650 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:21 #651 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:21 #652 [Verbose] > │         let v6 : UH6 = UH6_0(v2, v3, v1)                                     │

00:00:21 #653 [Verbose] > │         method27(v4, v6, v5)                                                 │

00:00:21 #654 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:21 #655 [Verbose] > │         struct (v1, v2)                                                      │

00:00:21 #656 [Verbose] > │ and method28 (v0 : UH6, v1 : UH6) : UH6 =                                    │

00:00:21 #657 [Verbose] > │     match v0 with                                                            │

00:00:21 #658 [Verbose] > │     | UH6_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:21 #659 [Verbose] > │         let v5 : UH6 = UH6_0(v2, v3, v1)                                     │

00:00:21 #660 [Verbose] > │         method28(v4, v5)                                                     │

00:00:21 #661 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:21 #662 [Verbose] > │         v1                                                                   │

00:00:21 #663 [Verbose] > │ and method29 (v0 : Map<int32, int64>, v1 : UH6, v2 : UH2) : UH2 =            │

00:00:21 #664 [Verbose] > │     match v1 with                                                            │

00:00:21 #665 [Verbose] > │     | UH6_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:21 #666 [Verbose] > │         let v6 : UH2 = method29(v0, v5, v2)                                  │

00:00:21 #667 [Verbose] > │         let v7 : int64 = v0.[v3]                                             │

00:00:21 #668 [Verbose] > │         let v8 : int32 = int32 v7                                            │

00:00:21 #669 [Verbose] > │         let v9 : string = v4.PadRight v8                                     │

00:00:21 #670 [Verbose] > │         UH2_0(v9, v6)                                                        │

00:00:21 #671 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:21 #672 [Verbose] > │         v2                                                                   │

00:00:21 #673 [Verbose] > │ and method31 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:21 #674 [Verbose] > │     match v0 with                                                            │

00:00:21 #675 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:21 #676 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:21 #677 [Verbose] > │         method31(v3, v4)                                                     │

00:00:21 #678 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:21 #679 [Verbose] > │         v1                                                                   │

00:00:21 #680 [Verbose] > │ and method32 (v0 : (string []), v1 : UH2, v2 : int32) : int32 =              │

00:00:21 #681 [Verbose] > │     match v1 with                                                            │

00:00:21 #682 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:21 #683 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:21 #684 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:21 #685 [Verbose] > │         method32(v0, v4, v5)                                                 │

00:00:21 #686 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:21 #687 [Verbose] > │         v2                                                                   │

00:00:21 #688 [Verbose] > │ and method30 (v0 : UH2) : (string []) =                                      │

00:00:21 #689 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:21 #690 [Verbose] > │     let v2 : int32 = method31(v0, v1)                                        │

00:00:21 #691 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string> (v2)                     │

00:00:21 #692 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:21 #693 [Verbose] > │     let v5 : int32 = method32(v3, v0, v4)                                    │

00:00:21 #694 [Verbose] > │     v3                                                                       │

00:00:21 #695 [Verbose] > │ and closure8 () () : unit =                                                  │

00:00:21 #696 [Verbose] > │     ()                                                                       │

00:00:21 #697 [Verbose] > │ and closure9 () () : unit =                                                  │

00:00:21 #698 [Verbose] > │     System.Console.ResetColor ()                                             │

00:00:21 #699 [Verbose] > │     ()                                                                       │

00:00:21 #700 [Verbose] > │ and closure10 () () : unit =                                                 │

00:00:21 #701 [Verbose] > │     ()                                                                       │

00:00:21 #702 [Verbose] > │ and closure11 (v0 : System.ConsoleColor) () : unit =                         │

00:00:21 #703 [Verbose] > │     System.Console.ForegroundColor <- v0                                     │

00:00:21 #704 [Verbose] > │     ()                                                                       │

00:00:21 #705 [Verbose] > │ and method34 (v0 : UH5, v1 : uint64) : uint64 =                              │

00:00:21 #706 [Verbose] > │     match v0 with                                                            │

00:00:21 #707 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:21 #708 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:21 #709 [Verbose] > │         method34(v4, v5)                                                     │

00:00:21 #710 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:21 #711 [Verbose] > │         v1                                                                   │

00:00:21 #712 [Verbose] > │ and method35 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : uint64) :     │

00:00:21 #713 [Verbose] > │ uint64 =                                                                     │

00:00:21 #714 [Verbose] > │     match v1 with                                                            │

00:00:21 #715 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:21 #716 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:21 #717 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:21 #718 [Verbose] > │         method35(v0, v5, v6)                                                 │

00:00:21 #719 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:21 #720 [Verbose] > │         v2                                                                   │

00:00:21 #721 [Verbose] > │ and method33 (v0 : UH5) : (struct (int32 * int64) []) =                      │

00:00:21 #722 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:21 #723 [Verbose] > │     let v2 : uint64 = method34(v0, v1)                                       │

00:00:21 #724 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:00:21 #725 [Verbose] > │ int64)> (System.Convert.ToInt32(v2))                                         │

00:00:21 #726 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:21 #727 [Verbose] > │     let v5 : uint64 = method35(v3, v0, v4)                                   │

00:00:21 #728 [Verbose] > │     v3                                                                       │

00:00:21 #729 [Verbose] > │ and closure12 () struct (v0 : int32, v1 : int64) : int64 =                   │

00:00:21 #730 [Verbose] > │     v1                                                                       │

00:00:21 #731 [Verbose] > │ and closure0 () () : unit =                                                  │

00:00:21 #732 [Verbose] > │     let v0 : (unit -> unit) = closure0()                                     │

00:00:21 #733 [Verbose] > │     let v1 : string = nameof v0                                              │

00:00:21 #734 [Verbose] > │     let v2 : string = ""                                                     │

00:00:21 #735 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #736 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #737 [Verbose] > │     let v3 : string = $"Test: {v1}"                                          │

00:00:21 #738 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:21 #739 [Verbose] > │     let v4 : string = "a"                                                    │

00:00:21 #740 [Verbose] > │     let v5 : string = "b"                                                    │

00:00:21 #741 [Verbose] > │     let v6 : UH0 = UH0_1                                                     │

00:00:21 #742 [Verbose] > │     let v7 : UH0 = UH0_0(v5, v5, v5, v6)                                     │

00:00:21 #743 [Verbose] > │     let v8 : UH0 = UH0_0(v4, v4, v4, v7)                                     │

00:00:21 #744 [Verbose] > │     let v9 : (struct (string * string * string) []) = method1(v8)            │

00:00:21 #745 [Verbose] > │     let v10 : uint64 = System.Convert.ToUInt64 v9.Length                     │

00:00:21 #746 [Verbose] > │     let v11 : (struct (string * string * string * (int64 [])) []) =          │

00:00:21 #747 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:00:21 #748 [Verbose] > │ (System.Convert.ToInt32(v10))                                                │

00:00:21 #749 [Verbose] > │     let v12 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:21 #750 [Verbose] > │     while method4(v10, v12) do                                               │

00:00:21 #751 [Verbose] > │         let v14 : uint64 = v12.l0                                            │

00:00:21 #752 [Verbose] > │         let struct (v15 : string, v16 : string, v17 : string) = v9.[int v14] │

00:00:21 #753 [Verbose] > │         let v18 : string = $"%A{struct (v15, v16)}"                          │

00:00:21 #754 [Verbose] > │         System.Console.WriteLine v2                                          │

00:00:21 #755 [Verbose] > │         let v19 : string = $"Solution: {v18}  "                              │

00:00:21 #756 [Verbose] > │         System.Console.WriteLine v19                                         │

00:00:21 #757 [Verbose] > │         let v20 : int32 = 0                                                  │

00:00:21 #758 [Verbose] > │         let v21 : string = "A"                                               │

00:00:21 #759 [Verbose] > │         let v22 : (struct (string * string) -> string) = closure1()          │

00:00:21 #760 [Verbose] > │         let v23 : int32 = 1                                                  │

00:00:21 #761 [Verbose] > │         let v24 : string = "B"                                               │

00:00:21 #762 [Verbose] > │         let v25 : (struct (string * string) -> string) = closure2()          │

00:00:21 #763 [Verbose] > │         let v26 : UH1 = UH1_1                                                │

00:00:21 #764 [Verbose] > │         let v27 : UH1 = UH1_0(v23, v24, v25, v26)                            │

00:00:21 #765 [Verbose] > │         let v28 : UH1 = UH1_0(v20, v21, v22, v27)                            │

00:00:21 #766 [Verbose] > │         let v29 : (struct (int32 * string * (struct (string * string) ->     │

00:00:21 #767 [Verbose] > │ string)) []) = method5(v28)                                                  │

00:00:21 #768 [Verbose] > │         let v30 : uint64 = System.Convert.ToUInt64 v29.Length                │

00:00:21 #769 [Verbose] > │         let v31 : (struct (string * int64) []) = Array.zeroCreate<struct     │

00:00:21 #770 [Verbose] > │ (string * int64)> (System.Convert.ToInt32(v30))                              │

00:00:21 #771 [Verbose] > │         let v32 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #772 [Verbose] > │         while method4(v30, v32) do                                           │

00:00:21 #773 [Verbose] > │             let v34 : uint64 = v32.l0                                        │

00:00:21 #774 [Verbose] > │             let struct (v35 : int32, v36 : string, v37 : (struct (string *   │

00:00:21 #775 [Verbose] > │ string) -> string)) = v29.[int v34]                                          │

00:00:21 #776 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:21 #777 [Verbose] > │             let v38 : (unit -> unit) = closure3()                            │

00:00:21 #778 [Verbose] > │             v38 ()                                                           │

00:00:21 #779 [Verbose] > │             #else                                                            │

00:00:21 #780 [Verbose] > │             let v39 : (unit -> unit) = closure4()                            │

00:00:21 #781 [Verbose] > │             v39 ()                                                           │

00:00:21 #782 [Verbose] > │             #endif                                                           │

00:00:21 #783 [Verbose] > │             let v40 : (unit -> System.Diagnostics.Stopwatch) =               │

00:00:21 #784 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:00:21 #785 [Verbose] > │             let v41 : System.Diagnostics.Stopwatch = v40 ()                  │

00:00:21 #786 [Verbose] > │             v41.Start ()                                                     │

00:00:21 #787 [Verbose] > │             let v42 : int64 = v41.ElapsedMilliseconds                        │

00:00:21 #788 [Verbose] > │             let v43 : (int32 []) = Array.zeroCreate<int32> (2000001)         │

00:00:21 #789 [Verbose] > │             let v44 : Mut1 = {l0 = 0} : Mut1                                 │

00:00:21 #790 [Verbose] > │             while method8(v44) do                                            │

00:00:21 #791 [Verbose] > │                 let v46 : int32 = v44.l0                                     │

00:00:21 #792 [Verbose] > │                 v43.[int v46] <- v46                                         │

00:00:21 #793 [Verbose] > │                 let v47 : int32 = v46 + 1                                    │

00:00:21 #794 [Verbose] > │                 v44.l0 <- v47                                                │

00:00:21 #795 [Verbose] > │                 ()                                                           │

00:00:21 #796 [Verbose] > │             let v48 : (int32 -> string) = closure5(v15, v16, v37)            │

00:00:21 #797 [Verbose] > │             let v49 : (string []) = v43 |> Array.Parallel.map v48            │

00:00:21 #798 [Verbose] > │             let v50 : int32 = v49.Length                                     │

00:00:21 #799 [Verbose] > │             let v51 : int32 = v50 - 1                                        │

00:00:21 #800 [Verbose] > │             let v52 : string = v49.[int v51]                                 │

00:00:21 #801 [Verbose] > │             let v53 : int64 = v41.ElapsedMilliseconds                        │

00:00:21 #802 [Verbose] > │             let v54 : int64 = v53 - v42                                      │

00:00:21 #803 [Verbose] > │             let v55 : string = $"Test case {v35 + 1}. {v36}. Time: {v54}  "  │

00:00:21 #804 [Verbose] > │             System.Console.WriteLine v55                                     │

00:00:21 #805 [Verbose] > │             v31.[int v34] <- struct (v52, v54)                               │

00:00:21 #806 [Verbose] > │             let v56 : uint64 = v34 + 1UL                                     │

00:00:21 #807 [Verbose] > │             v32.l0 <- v56                                                    │

00:00:21 #808 [Verbose] > │             ()                                                               │

00:00:21 #809 [Verbose] > │         let v57 : uint64 = System.Convert.ToUInt64 v31.Length                │

00:00:21 #810 [Verbose] > │         let v58 : (string []) = Array.zeroCreate<string>                     │

00:00:21 #811 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:21 #812 [Verbose] > │         let v59 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #813 [Verbose] > │         while method4(v57, v59) do                                           │

00:00:21 #814 [Verbose] > │             let v61 : uint64 = v59.l0                                        │

00:00:21 #815 [Verbose] > │             let struct (v62 : string, v63 : int64) = v31.[int v61]           │

00:00:21 #816 [Verbose] > │             v58.[int v61] <- v62                                             │

00:00:21 #817 [Verbose] > │             let v64 : uint64 = v61 + 1UL                                     │

00:00:21 #818 [Verbose] > │             v59.l0 <- v64                                                    │

00:00:21 #819 [Verbose] > │             ()                                                               │

00:00:21 #820 [Verbose] > │         let v65 : uint64 = System.Convert.ToUInt64 v58.Length                │

00:00:21 #821 [Verbose] > │         let v66 : bool = v65 <= 1UL                                          │

00:00:21 #822 [Verbose] > │         if v66 then                                                          │

00:00:21 #823 [Verbose] > │             ()                                                               │

00:00:21 #824 [Verbose] > │         else                                                                 │

00:00:21 #825 [Verbose] > │             let v67 : string = v58.[int 0UL]                                 │

00:00:21 #826 [Verbose] > │             let v68 : uint64 = 0UL                                           │

00:00:21 #827 [Verbose] > │             let v69 : bool = method9(v67, v58, v68)                          │

00:00:21 #828 [Verbose] > │             if v69 then                                                      │

00:00:21 #829 [Verbose] > │                 ()                                                           │

00:00:21 #830 [Verbose] > │             else                                                             │

00:00:21 #831 [Verbose] > │                 let v70 : string = $"Challenge error: {v58}"                 │

00:00:21 #832 [Verbose] > │                 failwith<unit> v70                                           │

00:00:21 #833 [Verbose] > │         let v71 : string = $"%A{v17}"                                        │

00:00:21 #834 [Verbose] > │         let v72 : (string []) = Array.zeroCreate<string>                     │

00:00:21 #835 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:21 #836 [Verbose] > │         let v73 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #837 [Verbose] > │         while method4(v57, v73) do                                           │

00:00:21 #838 [Verbose] > │             let v75 : uint64 = v73.l0                                        │

00:00:21 #839 [Verbose] > │             let struct (v76 : string, v77 : int64) = v31.[int v75]           │

00:00:21 #840 [Verbose] > │             v72.[int v75] <- v76                                             │

00:00:21 #841 [Verbose] > │             let v78 : uint64 = v75 + 1UL                                     │

00:00:21 #842 [Verbose] > │             v73.l0 <- v78                                                    │

00:00:21 #843 [Verbose] > │             ()                                                               │

00:00:21 #844 [Verbose] > │         let v79 : string = v72.[int 0UL]                                     │

00:00:21 #845 [Verbose] > │         let v80 : string = $"%A{v79}"                                        │

00:00:21 #846 [Verbose] > │         let v81 : (int64 []) = Array.zeroCreate<int64>                       │

00:00:21 #847 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:21 #848 [Verbose] > │         let v82 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #849 [Verbose] > │         while method4(v57, v82) do                                           │

00:00:21 #850 [Verbose] > │             let v84 : uint64 = v82.l0                                        │

00:00:21 #851 [Verbose] > │             let struct (v85 : string, v86 : int64) = v31.[int v84]           │

00:00:21 #852 [Verbose] > │             v81.[int v84] <- v86                                             │

00:00:21 #853 [Verbose] > │             let v87 : uint64 = v84 + 1UL                                     │

00:00:21 #854 [Verbose] > │             v82.l0 <- v87                                                    │

00:00:21 #855 [Verbose] > │             ()                                                               │

00:00:21 #856 [Verbose] > │         v11.[int v14] <- struct (v71, v18, v80, v81)                         │

00:00:21 #857 [Verbose] > │         let v88 : uint64 = v14 + 1UL                                         │

00:00:21 #858 [Verbose] > │         v12.l0 <- v88                                                        │

00:00:21 #859 [Verbose] > │         ()                                                                   │

00:00:21 #860 [Verbose] > │     let v89 : uint64 = System.Convert.ToUInt64 v11.Length                    │

00:00:21 #861 [Verbose] > │     let v90 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │

00:00:21 #862 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:21 #863 [Verbose] > │     let v91 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:21 #864 [Verbose] > │     while method4(v89, v91) do                                               │

00:00:21 #865 [Verbose] > │         let v93 : uint64 = v91.l0                                            │

00:00:21 #866 [Verbose] > │         let struct (v94 : string, v95 : string, v96 : string, v97 : (int64 [ │

00:00:21 #867 [Verbose] > │ ])) = v11.[int v93]                                                          │

00:00:21 #868 [Verbose] > │         let v98 : uint64 = System.Convert.ToUInt64 v97.Length                │

00:00:21 #869 [Verbose] > │         let v99 : UH3 = UH3_1                                                │

00:00:21 #870 [Verbose] > │         let v100 : Mut2 = {l0 = 0UL; l1 = v99; l2 = 0L} : Mut2               │

00:00:21 #871 [Verbose] > │         while method10(v98, v100) do                                         │

00:00:21 #872 [Verbose] > │             let v102 : uint64 = v100.l0                                      │

00:00:21 #873 [Verbose] > │             let struct (v103 : UH3, v104 : int64) = v100.l1, v100.l2         │

00:00:21 #874 [Verbose] > │             let v105 : int64 = v97.[int v102]                                │

00:00:21 #875 [Verbose] > │             let v106 : int64 = v104 + 1L                                     │

00:00:21 #876 [Verbose] > │             let v107 : uint64 = v102 + 1UL                                   │

00:00:21 #877 [Verbose] > │             let v108 : UH3 = UH3_0(v104, v105, v103)                         │

00:00:21 #878 [Verbose] > │             v100.l0 <- v107                                                  │

00:00:21 #879 [Verbose] > │             v100.l1 <- v108                                                  │

00:00:21 #880 [Verbose] > │             v100.l2 <- v106                                                  │

00:00:21 #881 [Verbose] > │             ()                                                               │

00:00:21 #882 [Verbose] > │         let struct (v109 : UH3, v110 : int64) = v100.l1, v100.l2             │

00:00:21 #883 [Verbose] > │         let v111 : UH3 = UH3_1                                               │

00:00:21 #884 [Verbose] > │         let v112 : UH3 = method11(v109, v111)                                │

00:00:21 #885 [Verbose] > │         let v113 : (struct (int64 * int64) []) = method12(v112)              │

00:00:21 #886 [Verbose] > │         let v114 : int32 = v113.Length                                       │

00:00:21 #887 [Verbose] > │         let v115 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:00:21 #888 [Verbose] > │ (int64 * int64)> (v114)                                                      │

00:00:21 #889 [Verbose] > │         let v116 : Mut1 = {l0 = 0} : Mut1                                    │

00:00:21 #890 [Verbose] > │         while method15(v114, v116) do                                        │

00:00:21 #891 [Verbose] > │             let v118 : int32 = v116.l0                                       │

00:00:21 #892 [Verbose] > │             let struct (v119 : int64, v120 : int64) = v113.[int v118]        │

00:00:21 #893 [Verbose] > │             let v121 : int64 = v119 + 1L                                     │

00:00:21 #894 [Verbose] > │             v115.[int v118] <- struct (v121, v120)                           │

00:00:21 #895 [Verbose] > │             let v122 : int32 = v118 + 1                                      │

00:00:21 #896 [Verbose] > │             v116.l0 <- v122                                                  │

00:00:21 #897 [Verbose] > │             ()                                                               │

00:00:21 #898 [Verbose] > │         let v123 : (struct (int64 * int64) -> int64) = closure6()            │

00:00:21 #899 [Verbose] > │         let v124 : (struct (int64 * int64) []) = v115 |> Array.sortBy v123   │

00:00:21 #900 [Verbose] > │         let struct (v125 : int64, v126 : int64) = v124.[int 0]               │

00:00:21 #901 [Verbose] > │         let v127 : string = $"%A{struct (v125, v126)}"                       │

00:00:21 #902 [Verbose] > │         let v128 : bool = v94 = v96                                          │

00:00:21 #903 [Verbose] > │         let v133 : US0 =                                                     │

00:00:21 #904 [Verbose] > │             if v128 then                                                     │

00:00:21 #905 [Verbose] > │                 let v129 : System.ConsoleColor =                             │

00:00:21 #906 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:00:21 #907 [Verbose] > │                 US0_1(v129)                                                  │

00:00:21 #908 [Verbose] > │             else                                                             │

00:00:21 #909 [Verbose] > │                 let v131 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:00:21 #910 [Verbose] > │                 US0_1(v131)                                                  │

00:00:21 #911 [Verbose] > │         let v134 : UH2 = UH2_1                                               │

00:00:21 #912 [Verbose] > │         let v135 : UH2 = UH2_0(v127, v134)                                   │

00:00:21 #913 [Verbose] > │         let v136 : UH2 = UH2_0(v96, v135)                                    │

00:00:21 #914 [Verbose] > │         let v137 : UH2 = UH2_0(v94, v136)                                    │

00:00:21 #915 [Verbose] > │         let v138 : UH2 = UH2_0(v95, v137)                                    │

00:00:21 #916 [Verbose] > │         v90.[int v93] <- struct (v138, v133)                                 │

00:00:21 #917 [Verbose] > │         let v139 : uint64 = v93 + 1UL                                        │

00:00:21 #918 [Verbose] > │         v91.l0 <- v139                                                       │

00:00:21 #919 [Verbose] > │         ()                                                                   │

00:00:21 #920 [Verbose] > │     let v140 : string = "Input"                                              │

00:00:21 #921 [Verbose] > │     let v141 : string = "Expected"                                           │

00:00:21 #922 [Verbose] > │     let v142 : string = "Result"                                             │

00:00:21 #923 [Verbose] > │     let v143 : string = "Best"                                               │

00:00:21 #924 [Verbose] > │     let v144 : UH2 = UH2_1                                                   │

00:00:21 #925 [Verbose] > │     let v145 : UH2 = UH2_0(v143, v144)                                       │

00:00:21 #926 [Verbose] > │     let v146 : UH2 = UH2_0(v142, v145)                                       │

00:00:21 #927 [Verbose] > │     let v147 : UH2 = UH2_0(v141, v146)                                       │

00:00:21 #928 [Verbose] > │     let v148 : UH2 = UH2_0(v140, v147)                                       │

00:00:21 #929 [Verbose] > │     let v149 : US0 = US0_0                                                   │

00:00:21 #930 [Verbose] > │     let v150 : string = "---"                                                │

00:00:21 #931 [Verbose] > │     let v151 : UH2 = UH2_1                                                   │

00:00:21 #932 [Verbose] > │     let v152 : UH2 = UH2_0(v150, v151)                                       │

00:00:21 #933 [Verbose] > │     let v153 : UH2 = UH2_0(v150, v152)                                       │

00:00:21 #934 [Verbose] > │     let v154 : UH2 = UH2_0(v150, v153)                                       │

00:00:21 #935 [Verbose] > │     let v155 : UH2 = UH2_0(v150, v154)                                       │

00:00:21 #936 [Verbose] > │     let v156 : US0 = US0_0                                                   │

00:00:21 #937 [Verbose] > │     let v157 : UH4 = UH4_1                                                   │

00:00:21 #938 [Verbose] > │     let v158 : UH4 = UH4_0(v155, v156, v157)                                 │

00:00:21 #939 [Verbose] > │     let v159 : UH4 = UH4_0(v148, v149, v158)                                 │

00:00:21 #940 [Verbose] > │     let v160 : (struct (UH2 * US0) []) = method16(v159)                      │

00:00:21 #941 [Verbose] > │     let v161 : uint64 = System.Convert.ToUInt64 v160.Length                  │

00:00:21 #942 [Verbose] > │     let v162 : uint64 = System.Convert.ToUInt64 v90.Length                   │

00:00:21 #943 [Verbose] > │     let v163 : uint64 = v161 + v162                                          │

00:00:21 #944 [Verbose] > │     let v164 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:21 #945 [Verbose] > │ US0)> (System.Convert.ToInt32(v163))                                         │

00:00:21 #946 [Verbose] > │     let v165 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #947 [Verbose] > │     while method4(v163, v165) do                                             │

00:00:21 #948 [Verbose] > │         let v167 : uint64 = v165.l0                                          │

00:00:21 #949 [Verbose] > │         let v168 : bool = v167 < v161                                        │

00:00:21 #950 [Verbose] > │         let struct (v174 : UH2, v175 : US0) =                                │

00:00:21 #951 [Verbose] > │             if v168 then                                                     │

00:00:21 #952 [Verbose] > │                 let struct (v169 : UH2, v170 : US0) = v160.[int v167]        │

00:00:21 #953 [Verbose] > │                 struct (v169, v170)                                          │

00:00:21 #954 [Verbose] > │             else                                                             │

00:00:21 #955 [Verbose] > │                 let v171 : uint64 = v167 - v161                              │

00:00:21 #956 [Verbose] > │                 let struct (v172 : UH2, v173 : US0) = v90.[int v171]         │

00:00:21 #957 [Verbose] > │                 struct (v172, v173)                                          │

00:00:21 #958 [Verbose] > │         v164.[int v167] <- struct (v174, v175)                               │

00:00:21 #959 [Verbose] > │         let v176 : uint64 = v167 + 1UL                                       │

00:00:21 #960 [Verbose] > │         v165.l0 <- v176                                                      │

00:00:21 #961 [Verbose] > │         ()                                                                   │

00:00:21 #962 [Verbose] > │     let v177 : uint64 = System.Convert.ToUInt64 v164.Length                  │

00:00:21 #963 [Verbose] > │     let v178 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:00:21 #964 [Verbose] > │ (System.Convert.ToInt32(v177))                                               │

00:00:21 #965 [Verbose] > │     let v179 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #966 [Verbose] > │     while method4(v177, v179) do                                             │

00:00:21 #967 [Verbose] > │         let v181 : uint64 = v179.l0                                          │

00:00:21 #968 [Verbose] > │         let struct (v182 : UH2, v183 : US0) = v164.[int v181]                │

00:00:21 #969 [Verbose] > │         let v184 : (string []) = method19(v182)                              │

00:00:21 #970 [Verbose] > │         v178.[int v181] <- v184                                              │

00:00:21 #971 [Verbose] > │         let v185 : uint64 = v181 + 1UL                                       │

00:00:21 #972 [Verbose] > │         v179.l0 <- v185                                                      │

00:00:21 #973 [Verbose] > │         ()                                                                   │

00:00:21 #974 [Verbose] > │     let v186 : ((string []) []) = v178 |> Array.transpose                    │

00:00:21 #975 [Verbose] > │     let v187 : uint64 = System.Convert.ToUInt64 v186.Length                  │

00:00:21 #976 [Verbose] > │     let v188 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:21 #977 [Verbose] > │ (System.Convert.ToInt32(v187))                                               │

00:00:21 #978 [Verbose] > │     let v189 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #979 [Verbose] > │     while method4(v187, v189) do                                             │

00:00:21 #980 [Verbose] > │         let v191 : uint64 = v189.l0                                          │

00:00:21 #981 [Verbose] > │         let v192 : (string []) = v186.[int v191]                             │

00:00:21 #982 [Verbose] > │         let v193 : uint64 = System.Convert.ToUInt64 v192.Length              │

00:00:21 #983 [Verbose] > │         let v194 : (int64 []) = Array.zeroCreate<int64>                      │

00:00:21 #984 [Verbose] > │ (System.Convert.ToInt32(v193))                                               │

00:00:21 #985 [Verbose] > │         let v195 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:21 #986 [Verbose] > │         while method4(v193, v195) do                                         │

00:00:21 #987 [Verbose] > │             let v197 : uint64 = v195.l0                                      │

00:00:21 #988 [Verbose] > │             let v198 : string = v192.[int v197]                              │

00:00:21 #989 [Verbose] > │             let v199 : int64 = System.Convert.ToInt64 v198.Length            │

00:00:21 #990 [Verbose] > │             v194.[int v197] <- v199                                          │

00:00:21 #991 [Verbose] > │             let v200 : uint64 = v197 + 1UL                                   │

00:00:21 #992 [Verbose] > │             v195.l0 <- v200                                                  │

00:00:21 #993 [Verbose] > │             ()                                                               │

00:00:21 #994 [Verbose] > │         let v201 : (int64 []) = v194 |> Array.sortDescending                 │

00:00:21 #995 [Verbose] > │         let v202 : int64 option = v201 |> Array.tryItem 0                    │

00:00:21 #996 [Verbose] > │         let v203 : (int64 -> US1) = closure7()                               │

00:00:21 #997 [Verbose] > │         let v204 : US1 = US1_0                                               │

00:00:21 #998 [Verbose] > │         let v205 : US1 = v202 |> Option.map v203 |> Option.defaultValue v204 │

00:00:21 #999 [Verbose] > │         let v208 : int64 =                                                   │

00:00:21 #1000 [Verbose] > │             match v205 with                                                  │

00:00:21 #1001 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:21 #1002 [Verbose] > │                 0L                                                           │

00:00:21 #1003 [Verbose] > │             | US1_1(v206) -> (* Some *)                                      │

00:00:21 #1004 [Verbose] > │                 v206                                                         │

00:00:21 #1005 [Verbose] > │         v188.[int v191] <- v208                                              │

00:00:21 #1006 [Verbose] > │         let v209 : uint64 = v191 + 1UL                                       │

00:00:21 #1007 [Verbose] > │         v189.l0 <- v209                                                      │

00:00:21 #1008 [Verbose] > │         ()                                                                   │

00:00:21 #1009 [Verbose] > │     let v210 : uint64 = System.Convert.ToUInt64 v188.Length                  │

00:00:21 #1010 [Verbose] > │     let v211 : UH5 = UH5_1                                                   │

00:00:21 #1011 [Verbose] > │     let v212 : Mut3 = {l0 = 0UL; l1 = v211; l2 = 0} : Mut3                   │

00:00:21 #1012 [Verbose] > │     while method22(v210, v212) do                                            │

00:00:21 #1013 [Verbose] > │         let v214 : uint64 = v212.l0                                          │

00:00:21 #1014 [Verbose] > │         let struct (v215 : UH5, v216 : int32) = v212.l1, v212.l2             │

00:00:21 #1015 [Verbose] > │         let v217 : int64 = v188.[int v214]                                   │

00:00:21 #1016 [Verbose] > │         let v218 : int32 = v216 + 1                                          │

00:00:21 #1017 [Verbose] > │         let v219 : uint64 = v214 + 1UL                                       │

00:00:21 #1018 [Verbose] > │         let v220 : UH5 = UH5_0(v216, v217, v215)                             │

00:00:21 #1019 [Verbose] > │         v212.l0 <- v219                                                      │

00:00:21 #1020 [Verbose] > │         v212.l1 <- v220                                                      │

00:00:21 #1021 [Verbose] > │         v212.l2 <- v218                                                      │

00:00:21 #1022 [Verbose] > │         ()                                                                   │

00:00:21 #1023 [Verbose] > │     let struct (v221 : UH5, v222 : int32) = v212.l1, v212.l2                 │

00:00:21 #1024 [Verbose] > │     let v223 : UH5 = UH5_1                                                   │

00:00:21 #1025 [Verbose] > │     let v224 : UH5 = method23(v221, v223)                                    │

00:00:21 #1026 [Verbose] > │     let v225 : (struct (int32 * int64) []) = method24(v224)                  │

00:00:21 #1027 [Verbose] > │     let v226 : Map<int32, int64> = v225 |> Array.map (fun (struct (a, b)) -> │

00:00:21 #1028 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:00:21 #1029 [Verbose] > │     let v227 : (struct ((string []) * US0) []) = Array.zeroCreate<struct     │

00:00:21 #1030 [Verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v177))                          │

00:00:21 #1031 [Verbose] > │     let v228 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1032 [Verbose] > │     while method4(v177, v228) do                                             │

00:00:21 #1033 [Verbose] > │         let v230 : uint64 = v228.l0                                          │

00:00:21 #1034 [Verbose] > │         let struct (v231 : UH2, v232 : US0) = v164.[int v230]                │

00:00:21 #1035 [Verbose] > │         let v233 : UH6 = UH6_1                                               │

00:00:21 #1036 [Verbose] > │         let v234 : int32 = 0                                                 │

00:00:21 #1037 [Verbose] > │         let struct (v235 : UH6, v236 : int32) = method27(v231, v233, v234)   │

00:00:21 #1038 [Verbose] > │         let v237 : UH6 = UH6_1                                               │

00:00:21 #1039 [Verbose] > │         let v238 : UH6 = method28(v235, v237)                                │

00:00:21 #1040 [Verbose] > │         let v239 : UH2 = UH2_1                                               │

00:00:21 #1041 [Verbose] > │         let v240 : UH2 = method29(v226, v238, v239)                          │

00:00:21 #1042 [Verbose] > │         let v241 : (string []) = method30(v240)                              │

00:00:21 #1043 [Verbose] > │         v227.[int v230] <- struct (v241, v232)                               │

00:00:21 #1044 [Verbose] > │         let v242 : uint64 = v230 + 1UL                                       │

00:00:21 #1045 [Verbose] > │         v228.l0 <- v242                                                      │

00:00:21 #1046 [Verbose] > │         ()                                                                   │

00:00:21 #1047 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #1048 [Verbose] > │     let v243 : uint64 = System.Convert.ToUInt64 v227.Length                  │

00:00:21 #1049 [Verbose] > │     let v244 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1050 [Verbose] > │     while method4(v243, v244) do                                             │

00:00:21 #1051 [Verbose] > │         let v246 : uint64 = v244.l0                                          │

00:00:21 #1052 [Verbose] > │         let struct (v247 : (string []), v248 : US0) = v227.[int v246]        │

00:00:21 #1053 [Verbose] > │         match v248 with                                                      │

00:00:21 #1054 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:21 #1055 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:21 #1056 [Verbose] > │             let v252 : (unit -> unit) = closure8()                           │

00:00:21 #1057 [Verbose] > │             v252 ()                                                          │

00:00:21 #1058 [Verbose] > │             #else                                                            │

00:00:21 #1059 [Verbose] > │             let v253 : (unit -> unit) = closure9()                           │

00:00:21 #1060 [Verbose] > │             v253 ()                                                          │

00:00:21 #1061 [Verbose] > │             #endif                                                           │

00:00:21 #1062 [Verbose] > │             ()                                                               │

00:00:21 #1063 [Verbose] > │         | US0_1(v249) -> (* Some *)                                          │

00:00:21 #1064 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:21 #1065 [Verbose] > │             let v250 : (unit -> unit) = closure10()                          │

00:00:21 #1066 [Verbose] > │             v250 ()                                                          │

00:00:21 #1067 [Verbose] > │             #else                                                            │

00:00:21 #1068 [Verbose] > │             let v251 : (unit -> unit) = closure11(v249)                      │

00:00:21 #1069 [Verbose] > │             v251 ()                                                          │

00:00:21 #1070 [Verbose] > │             #endif                                                           │

00:00:21 #1071 [Verbose] > │             ()                                                               │

00:00:21 #1072 [Verbose] > │         let v254 : string = "\t| "                                           │

00:00:21 #1073 [Verbose] > │         let v255 : string = System.String.Join (v254, v247)                  │

00:00:21 #1074 [Verbose] > │         System.Console.WriteLine v255                                        │

00:00:21 #1075 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:00:21 #1076 [Verbose] > │         let v256 : (unit -> unit) = closure8()                               │

00:00:21 #1077 [Verbose] > │         v256 ()                                                              │

00:00:21 #1078 [Verbose] > │         #else                                                                │

00:00:21 #1079 [Verbose] > │         let v257 : (unit -> unit) = closure9()                               │

00:00:21 #1080 [Verbose] > │         v257 ()                                                              │

00:00:21 #1081 [Verbose] > │         #endif                                                               │

00:00:21 #1082 [Verbose] > │         let v258 : uint64 = v246 + 1UL                                       │

00:00:21 #1083 [Verbose] > │         v244.l0 <- v258                                                      │

00:00:21 #1084 [Verbose] > │         ()                                                                   │

00:00:21 #1085 [Verbose] > │     let v259 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:00:21 #1086 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:21 #1087 [Verbose] > │     let v260 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1088 [Verbose] > │     while method4(v89, v260) do                                              │

00:00:21 #1089 [Verbose] > │         let v262 : uint64 = v260.l0                                          │

00:00:21 #1090 [Verbose] > │         let struct (v263 : string, v264 : string, v265 : string, v266 :      │

00:00:21 #1091 [Verbose] > │ (int64 [])) = v11.[int v262]                                                 │

00:00:21 #1092 [Verbose] > │         let v267 : (int64 -> float) = float                                  │

00:00:21 #1093 [Verbose] > │         let v268 : uint64 = System.Convert.ToUInt64 v266.Length              │

00:00:21 #1094 [Verbose] > │         let v269 : (float []) = Array.zeroCreate<float>                      │

00:00:21 #1095 [Verbose] > │ (System.Convert.ToInt32(v268))                                               │

00:00:21 #1096 [Verbose] > │         let v270 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:21 #1097 [Verbose] > │         while method4(v268, v270) do                                         │

00:00:21 #1098 [Verbose] > │             let v272 : uint64 = v270.l0                                      │

00:00:21 #1099 [Verbose] > │             let v273 : int64 = v266.[int v272]                               │

00:00:21 #1100 [Verbose] > │             let v274 : float = v267 v273                                     │

00:00:21 #1101 [Verbose] > │             v269.[int v272] <- v274                                          │

00:00:21 #1102 [Verbose] > │             let v275 : uint64 = v272 + 1UL                                   │

00:00:21 #1103 [Verbose] > │             v270.l0 <- v275                                                  │

00:00:21 #1104 [Verbose] > │             ()                                                               │

00:00:21 #1105 [Verbose] > │         v259.[int v262] <- v269                                              │

00:00:21 #1106 [Verbose] > │         let v276 : uint64 = v262 + 1UL                                       │

00:00:21 #1107 [Verbose] > │         v260.l0 <- v276                                                      │

00:00:21 #1108 [Verbose] > │         ()                                                                   │

00:00:21 #1109 [Verbose] > │     let v277 : ((float []) []) = v259 |> Array.transpose                     │

00:00:21 #1110 [Verbose] > │     let v278 : uint64 = System.Convert.ToUInt64 v277.Length                  │

00:00:21 #1111 [Verbose] > │     let v279 : (float []) = Array.zeroCreate<float>                          │

00:00:21 #1112 [Verbose] > │ (System.Convert.ToInt32(v278))                                               │

00:00:21 #1113 [Verbose] > │     let v280 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1114 [Verbose] > │     while method4(v278, v280) do                                             │

00:00:21 #1115 [Verbose] > │         let v282 : uint64 = v280.l0                                          │

00:00:21 #1116 [Verbose] > │         let v283 : (float []) = v277.[int v282]                              │

00:00:21 #1117 [Verbose] > │         let v284 : float = v283 |> Array.average                             │

00:00:21 #1118 [Verbose] > │         v279.[int v282] <- v284                                              │

00:00:21 #1119 [Verbose] > │         let v285 : uint64 = v282 + 1UL                                       │

00:00:21 #1120 [Verbose] > │         v280.l0 <- v285                                                      │

00:00:21 #1121 [Verbose] > │         ()                                                                   │

00:00:21 #1122 [Verbose] > │     let v286 : (float -> int64) = int64                                      │

00:00:21 #1123 [Verbose] > │     let v287 : uint64 = System.Convert.ToUInt64 v279.Length                  │

00:00:21 #1124 [Verbose] > │     let v288 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:21 #1125 [Verbose] > │ (System.Convert.ToInt32(v287))                                               │

00:00:21 #1126 [Verbose] > │     let v289 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1127 [Verbose] > │     while method4(v287, v289) do                                             │

00:00:21 #1128 [Verbose] > │         let v291 : uint64 = v289.l0                                          │

00:00:21 #1129 [Verbose] > │         let v292 : float = v279.[int v291]                                   │

00:00:21 #1130 [Verbose] > │         let v293 : int64 = v286 v292                                         │

00:00:21 #1131 [Verbose] > │         v288.[int v291] <- v293                                              │

00:00:21 #1132 [Verbose] > │         let v294 : uint64 = v291 + 1UL                                       │

00:00:21 #1133 [Verbose] > │         v289.l0 <- v294                                                      │

00:00:21 #1134 [Verbose] > │         ()                                                                   │

00:00:21 #1135 [Verbose] > │     let v295 : uint64 = System.Convert.ToUInt64 v288.Length                  │

00:00:21 #1136 [Verbose] > │     let v296 : UH5 = UH5_1                                                   │

00:00:21 #1137 [Verbose] > │     let v297 : Mut3 = {l0 = 0UL; l1 = v296; l2 = 0} : Mut3                   │

00:00:21 #1138 [Verbose] > │     while method22(v295, v297) do                                            │

00:00:21 #1139 [Verbose] > │         let v299 : uint64 = v297.l0                                          │

00:00:21 #1140 [Verbose] > │         let struct (v300 : UH5, v301 : int32) = v297.l1, v297.l2             │

00:00:21 #1141 [Verbose] > │         let v302 : int64 = v288.[int v299]                                   │

00:00:21 #1142 [Verbose] > │         let v303 : int32 = v301 + 1                                          │

00:00:21 #1143 [Verbose] > │         let v304 : uint64 = v299 + 1UL                                       │

00:00:21 #1144 [Verbose] > │         let v305 : UH5 = UH5_0(v301, v302, v300)                             │

00:00:21 #1145 [Verbose] > │         v297.l0 <- v304                                                      │

00:00:21 #1146 [Verbose] > │         v297.l1 <- v305                                                      │

00:00:21 #1147 [Verbose] > │         v297.l2 <- v303                                                      │

00:00:21 #1148 [Verbose] > │         ()                                                                   │

00:00:21 #1149 [Verbose] > │     let struct (v306 : UH5, v307 : int32) = v297.l1, v297.l2                 │

00:00:21 #1150 [Verbose] > │     let v308 : UH5 = UH5_1                                                   │

00:00:21 #1151 [Verbose] > │     let v309 : UH5 = method23(v306, v308)                                    │

00:00:21 #1152 [Verbose] > │     let v310 : (struct (int32 * int64) []) = method33(v309)                  │

00:00:21 #1153 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #1154 [Verbose] > │     let v311 : string = "Average Ranking  "                                  │

00:00:21 #1155 [Verbose] > │     System.Console.WriteLine v311                                            │

00:00:21 #1156 [Verbose] > │     let v312 : (struct (int32 * int64) -> int64) = closure12()               │

00:00:21 #1157 [Verbose] > │     let v313 : (struct (int32 * int64) []) = v310 |> Array.sortBy v312       │

00:00:21 #1158 [Verbose] > │     let v314 : uint64 = System.Convert.ToUInt64 v313.Length                  │

00:00:21 #1159 [Verbose] > │     let v315 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1160 [Verbose] > │     while method4(v314, v315) do                                             │

00:00:21 #1161 [Verbose] > │         let v317 : uint64 = v315.l0                                          │

00:00:21 #1162 [Verbose] > │         let struct (v318 : int32, v319 : int64) = v313.[int v317]            │

00:00:21 #1163 [Verbose] > │         let v320 : string = $"Test case %d{v318 + 1}. Average Time: %A{v319} │

00:00:21 #1164 [Verbose] > │ "                                                                            │

00:00:21 #1165 [Verbose] > │         System.Console.WriteLine v320                                        │

00:00:21 #1166 [Verbose] > │         let v321 : uint64 = v317 + 1UL                                       │

00:00:21 #1167 [Verbose] > │         v315.l0 <- v321                                                      │

00:00:21 #1168 [Verbose] > │         ()                                                                   │

00:00:21 #1169 [Verbose] > │     ()                                                                       │

00:00:21 #1170 [Verbose] > │ and method0 () : unit =                                                      │

00:00:21 #1171 [Verbose] > │     let v0 : (unit -> unit) = closure0()                                     │

00:00:21 #1172 [Verbose] > │     let v1 : string = nameof v0                                              │

00:00:21 #1173 [Verbose] > │     let v2 : string = ""                                                     │

00:00:21 #1174 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #1175 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #1176 [Verbose] > │     let v3 : string = $"Test: {v1}"                                          │

00:00:21 #1177 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:21 #1178 [Verbose] > │     let v4 : string = "a"                                                    │

00:00:21 #1179 [Verbose] > │     let v5 : string = "b"                                                    │

00:00:21 #1180 [Verbose] > │     let v6 : UH0 = UH0_1                                                     │

00:00:21 #1181 [Verbose] > │     let v7 : UH0 = UH0_0(v5, v5, v5, v6)                                     │

00:00:21 #1182 [Verbose] > │     let v8 : UH0 = UH0_0(v4, v4, v4, v7)                                     │

00:00:21 #1183 [Verbose] > │     let v9 : (struct (string * string * string) []) = method1(v8)            │

00:00:21 #1184 [Verbose] > │     let v10 : uint64 = System.Convert.ToUInt64 v9.Length                     │

00:00:21 #1185 [Verbose] > │     let v11 : (struct (string * string * string * (int64 [])) []) =          │

00:00:21 #1186 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:00:21 #1187 [Verbose] > │ (System.Convert.ToInt32(v10))                                                │

00:00:21 #1188 [Verbose] > │     let v12 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:21 #1189 [Verbose] > │     while method4(v10, v12) do                                               │

00:00:21 #1190 [Verbose] > │         let v14 : uint64 = v12.l0                                            │

00:00:21 #1191 [Verbose] > │         let struct (v15 : string, v16 : string, v17 : string) = v9.[int v14] │

00:00:21 #1192 [Verbose] > │         let v18 : string = $"%A{struct (v15, v16)}"                          │

00:00:21 #1193 [Verbose] > │         System.Console.WriteLine v2                                          │

00:00:21 #1194 [Verbose] > │         let v19 : string = $"Solution: {v18}  "                              │

00:00:21 #1195 [Verbose] > │         System.Console.WriteLine v19                                         │

00:00:21 #1196 [Verbose] > │         let v20 : int32 = 0                                                  │

00:00:21 #1197 [Verbose] > │         let v21 : string = "A"                                               │

00:00:21 #1198 [Verbose] > │         let v22 : (struct (string * string) -> string) = closure1()          │

00:00:21 #1199 [Verbose] > │         let v23 : int32 = 1                                                  │

00:00:21 #1200 [Verbose] > │         let v24 : string = "B"                                               │

00:00:21 #1201 [Verbose] > │         let v25 : (struct (string * string) -> string) = closure2()          │

00:00:21 #1202 [Verbose] > │         let v26 : UH1 = UH1_1                                                │

00:00:21 #1203 [Verbose] > │         let v27 : UH1 = UH1_0(v23, v24, v25, v26)                            │

00:00:21 #1204 [Verbose] > │         let v28 : UH1 = UH1_0(v20, v21, v22, v27)                            │

00:00:21 #1205 [Verbose] > │         let v29 : (struct (int32 * string * (struct (string * string) ->     │

00:00:21 #1206 [Verbose] > │ string)) []) = method5(v28)                                                  │

00:00:21 #1207 [Verbose] > │         let v30 : uint64 = System.Convert.ToUInt64 v29.Length                │

00:00:21 #1208 [Verbose] > │         let v31 : (struct (string * int64) []) = Array.zeroCreate<struct     │

00:00:21 #1209 [Verbose] > │ (string * int64)> (System.Convert.ToInt32(v30))                              │

00:00:21 #1210 [Verbose] > │         let v32 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #1211 [Verbose] > │         while method4(v30, v32) do                                           │

00:00:21 #1212 [Verbose] > │             let v34 : uint64 = v32.l0                                        │

00:00:21 #1213 [Verbose] > │             let struct (v35 : int32, v36 : string, v37 : (struct (string *   │

00:00:21 #1214 [Verbose] > │ string) -> string)) = v29.[int v34]                                          │

00:00:21 #1215 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:21 #1216 [Verbose] > │             let v38 : (unit -> unit) = closure3()                            │

00:00:21 #1217 [Verbose] > │             v38 ()                                                           │

00:00:21 #1218 [Verbose] > │             #else                                                            │

00:00:21 #1219 [Verbose] > │             let v39 : (unit -> unit) = closure4()                            │

00:00:21 #1220 [Verbose] > │             v39 ()                                                           │

00:00:21 #1221 [Verbose] > │             #endif                                                           │

00:00:21 #1222 [Verbose] > │             let v40 : (unit -> System.Diagnostics.Stopwatch) =               │

00:00:21 #1223 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:00:21 #1224 [Verbose] > │             let v41 : System.Diagnostics.Stopwatch = v40 ()                  │

00:00:21 #1225 [Verbose] > │             v41.Start ()                                                     │

00:00:21 #1226 [Verbose] > │             let v42 : int64 = v41.ElapsedMilliseconds                        │

00:00:21 #1227 [Verbose] > │             let v43 : (int32 []) = Array.zeroCreate<int32> (2000001)         │

00:00:21 #1228 [Verbose] > │             let v44 : Mut1 = {l0 = 0} : Mut1                                 │

00:00:21 #1229 [Verbose] > │             while method8(v44) do                                            │

00:00:21 #1230 [Verbose] > │                 let v46 : int32 = v44.l0                                     │

00:00:21 #1231 [Verbose] > │                 v43.[int v46] <- v46                                         │

00:00:21 #1232 [Verbose] > │                 let v47 : int32 = v46 + 1                                    │

00:00:21 #1233 [Verbose] > │                 v44.l0 <- v47                                                │

00:00:21 #1234 [Verbose] > │                 ()                                                           │

00:00:21 #1235 [Verbose] > │             let v48 : (int32 -> string) = closure5(v15, v16, v37)            │

00:00:21 #1236 [Verbose] > │             let v49 : (string []) = v43 |> Array.Parallel.map v48            │

00:00:21 #1237 [Verbose] > │             let v50 : int32 = v49.Length                                     │

00:00:21 #1238 [Verbose] > │             let v51 : int32 = v50 - 1                                        │

00:00:21 #1239 [Verbose] > │             let v52 : string = v49.[int v51]                                 │

00:00:21 #1240 [Verbose] > │             let v53 : int64 = v41.ElapsedMilliseconds                        │

00:00:21 #1241 [Verbose] > │             let v54 : int64 = v53 - v42                                      │

00:00:21 #1242 [Verbose] > │             let v55 : string = $"Test case {v35 + 1}. {v36}. Time: {v54}  "  │

00:00:21 #1243 [Verbose] > │             System.Console.WriteLine v55                                     │

00:00:21 #1244 [Verbose] > │             v31.[int v34] <- struct (v52, v54)                               │

00:00:21 #1245 [Verbose] > │             let v56 : uint64 = v34 + 1UL                                     │

00:00:21 #1246 [Verbose] > │             v32.l0 <- v56                                                    │

00:00:21 #1247 [Verbose] > │             ()                                                               │

00:00:21 #1248 [Verbose] > │         let v57 : uint64 = System.Convert.ToUInt64 v31.Length                │

00:00:21 #1249 [Verbose] > │         let v58 : (string []) = Array.zeroCreate<string>                     │

00:00:21 #1250 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:21 #1251 [Verbose] > │         let v59 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #1252 [Verbose] > │         while method4(v57, v59) do                                           │

00:00:21 #1253 [Verbose] > │             let v61 : uint64 = v59.l0                                        │

00:00:21 #1254 [Verbose] > │             let struct (v62 : string, v63 : int64) = v31.[int v61]           │

00:00:21 #1255 [Verbose] > │             v58.[int v61] <- v62                                             │

00:00:21 #1256 [Verbose] > │             let v64 : uint64 = v61 + 1UL                                     │

00:00:21 #1257 [Verbose] > │             v59.l0 <- v64                                                    │

00:00:21 #1258 [Verbose] > │             ()                                                               │

00:00:21 #1259 [Verbose] > │         let v65 : uint64 = System.Convert.ToUInt64 v58.Length                │

00:00:21 #1260 [Verbose] > │         let v66 : bool = v65 <= 1UL                                          │

00:00:21 #1261 [Verbose] > │         if v66 then                                                          │

00:00:21 #1262 [Verbose] > │             ()                                                               │

00:00:21 #1263 [Verbose] > │         else                                                                 │

00:00:21 #1264 [Verbose] > │             let v67 : string = v58.[int 0UL]                                 │

00:00:21 #1265 [Verbose] > │             let v68 : uint64 = 0UL                                           │

00:00:21 #1266 [Verbose] > │             let v69 : bool = method9(v67, v58, v68)                          │

00:00:21 #1267 [Verbose] > │             if v69 then                                                      │

00:00:21 #1268 [Verbose] > │                 ()                                                           │

00:00:21 #1269 [Verbose] > │             else                                                             │

00:00:21 #1270 [Verbose] > │                 let v70 : string = $"Challenge error: {v58}"                 │

00:00:21 #1271 [Verbose] > │                 failwith<unit> v70                                           │

00:00:21 #1272 [Verbose] > │         let v71 : string = $"%A{v17}"                                        │

00:00:21 #1273 [Verbose] > │         let v72 : (string []) = Array.zeroCreate<string>                     │

00:00:21 #1274 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:21 #1275 [Verbose] > │         let v73 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #1276 [Verbose] > │         while method4(v57, v73) do                                           │

00:00:21 #1277 [Verbose] > │             let v75 : uint64 = v73.l0                                        │

00:00:21 #1278 [Verbose] > │             let struct (v76 : string, v77 : int64) = v31.[int v75]           │

00:00:21 #1279 [Verbose] > │             v72.[int v75] <- v76                                             │

00:00:21 #1280 [Verbose] > │             let v78 : uint64 = v75 + 1UL                                     │

00:00:21 #1281 [Verbose] > │             v73.l0 <- v78                                                    │

00:00:21 #1282 [Verbose] > │             ()                                                               │

00:00:21 #1283 [Verbose] > │         let v79 : string = v72.[int 0UL]                                     │

00:00:21 #1284 [Verbose] > │         let v80 : string = $"%A{v79}"                                        │

00:00:21 #1285 [Verbose] > │         let v81 : (int64 []) = Array.zeroCreate<int64>                       │

00:00:21 #1286 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:21 #1287 [Verbose] > │         let v82 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:21 #1288 [Verbose] > │         while method4(v57, v82) do                                           │

00:00:21 #1289 [Verbose] > │             let v84 : uint64 = v82.l0                                        │

00:00:21 #1290 [Verbose] > │             let struct (v85 : string, v86 : int64) = v31.[int v84]           │

00:00:21 #1291 [Verbose] > │             v81.[int v84] <- v86                                             │

00:00:21 #1292 [Verbose] > │             let v87 : uint64 = v84 + 1UL                                     │

00:00:21 #1293 [Verbose] > │             v82.l0 <- v87                                                    │

00:00:21 #1294 [Verbose] > │             ()                                                               │

00:00:21 #1295 [Verbose] > │         v11.[int v14] <- struct (v71, v18, v80, v81)                         │

00:00:21 #1296 [Verbose] > │         let v88 : uint64 = v14 + 1UL                                         │

00:00:21 #1297 [Verbose] > │         v12.l0 <- v88                                                        │

00:00:21 #1298 [Verbose] > │         ()                                                                   │

00:00:21 #1299 [Verbose] > │     let v89 : uint64 = System.Convert.ToUInt64 v11.Length                    │

00:00:21 #1300 [Verbose] > │     let v90 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │

00:00:21 #1301 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:21 #1302 [Verbose] > │     let v91 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:21 #1303 [Verbose] > │     while method4(v89, v91) do                                               │

00:00:21 #1304 [Verbose] > │         let v93 : uint64 = v91.l0                                            │

00:00:21 #1305 [Verbose] > │         let struct (v94 : string, v95 : string, v96 : string, v97 : (int64 [ │

00:00:21 #1306 [Verbose] > │ ])) = v11.[int v93]                                                          │

00:00:21 #1307 [Verbose] > │         let v98 : uint64 = System.Convert.ToUInt64 v97.Length                │

00:00:21 #1308 [Verbose] > │         let v99 : UH3 = UH3_1                                                │

00:00:21 #1309 [Verbose] > │         let v100 : Mut2 = {l0 = 0UL; l1 = v99; l2 = 0L} : Mut2               │

00:00:21 #1310 [Verbose] > │         while method10(v98, v100) do                                         │

00:00:21 #1311 [Verbose] > │             let v102 : uint64 = v100.l0                                      │

00:00:21 #1312 [Verbose] > │             let struct (v103 : UH3, v104 : int64) = v100.l1, v100.l2         │

00:00:21 #1313 [Verbose] > │             let v105 : int64 = v97.[int v102]                                │

00:00:21 #1314 [Verbose] > │             let v106 : int64 = v104 + 1L                                     │

00:00:21 #1315 [Verbose] > │             let v107 : uint64 = v102 + 1UL                                   │

00:00:21 #1316 [Verbose] > │             let v108 : UH3 = UH3_0(v104, v105, v103)                         │

00:00:21 #1317 [Verbose] > │             v100.l0 <- v107                                                  │

00:00:21 #1318 [Verbose] > │             v100.l1 <- v108                                                  │

00:00:21 #1319 [Verbose] > │             v100.l2 <- v106                                                  │

00:00:21 #1320 [Verbose] > │             ()                                                               │

00:00:21 #1321 [Verbose] > │         let struct (v109 : UH3, v110 : int64) = v100.l1, v100.l2             │

00:00:21 #1322 [Verbose] > │         let v111 : UH3 = UH3_1                                               │

00:00:21 #1323 [Verbose] > │         let v112 : UH3 = method11(v109, v111)                                │

00:00:21 #1324 [Verbose] > │         let v113 : (struct (int64 * int64) []) = method12(v112)              │

00:00:21 #1325 [Verbose] > │         let v114 : int32 = v113.Length                                       │

00:00:21 #1326 [Verbose] > │         let v115 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:00:21 #1327 [Verbose] > │ (int64 * int64)> (v114)                                                      │

00:00:21 #1328 [Verbose] > │         let v116 : Mut1 = {l0 = 0} : Mut1                                    │

00:00:21 #1329 [Verbose] > │         while method15(v114, v116) do                                        │

00:00:21 #1330 [Verbose] > │             let v118 : int32 = v116.l0                                       │

00:00:21 #1331 [Verbose] > │             let struct (v119 : int64, v120 : int64) = v113.[int v118]        │

00:00:21 #1332 [Verbose] > │             let v121 : int64 = v119 + 1L                                     │

00:00:21 #1333 [Verbose] > │             v115.[int v118] <- struct (v121, v120)                           │

00:00:21 #1334 [Verbose] > │             let v122 : int32 = v118 + 1                                      │

00:00:21 #1335 [Verbose] > │             v116.l0 <- v122                                                  │

00:00:21 #1336 [Verbose] > │             ()                                                               │

00:00:21 #1337 [Verbose] > │         let v123 : (struct (int64 * int64) -> int64) = closure6()            │

00:00:21 #1338 [Verbose] > │         let v124 : (struct (int64 * int64) []) = v115 |> Array.sortBy v123   │

00:00:21 #1339 [Verbose] > │         let struct (v125 : int64, v126 : int64) = v124.[int 0]               │

00:00:21 #1340 [Verbose] > │         let v127 : string = $"%A{struct (v125, v126)}"                       │

00:00:21 #1341 [Verbose] > │         let v128 : bool = v94 = v96                                          │

00:00:21 #1342 [Verbose] > │         let v133 : US0 =                                                     │

00:00:21 #1343 [Verbose] > │             if v128 then                                                     │

00:00:21 #1344 [Verbose] > │                 let v129 : System.ConsoleColor =                             │

00:00:21 #1345 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:00:21 #1346 [Verbose] > │                 US0_1(v129)                                                  │

00:00:21 #1347 [Verbose] > │             else                                                             │

00:00:21 #1348 [Verbose] > │                 let v131 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:00:21 #1349 [Verbose] > │                 US0_1(v131)                                                  │

00:00:21 #1350 [Verbose] > │         let v134 : UH2 = UH2_1                                               │

00:00:21 #1351 [Verbose] > │         let v135 : UH2 = UH2_0(v127, v134)                                   │

00:00:21 #1352 [Verbose] > │         let v136 : UH2 = UH2_0(v96, v135)                                    │

00:00:21 #1353 [Verbose] > │         let v137 : UH2 = UH2_0(v94, v136)                                    │

00:00:21 #1354 [Verbose] > │         let v138 : UH2 = UH2_0(v95, v137)                                    │

00:00:21 #1355 [Verbose] > │         v90.[int v93] <- struct (v138, v133)                                 │

00:00:21 #1356 [Verbose] > │         let v139 : uint64 = v93 + 1UL                                        │

00:00:21 #1357 [Verbose] > │         v91.l0 <- v139                                                       │

00:00:21 #1358 [Verbose] > │         ()                                                                   │

00:00:21 #1359 [Verbose] > │     let v140 : string = "Input"                                              │

00:00:21 #1360 [Verbose] > │     let v141 : string = "Expected"                                           │

00:00:21 #1361 [Verbose] > │     let v142 : string = "Result"                                             │

00:00:21 #1362 [Verbose] > │     let v143 : string = "Best"                                               │

00:00:21 #1363 [Verbose] > │     let v144 : UH2 = UH2_1                                                   │

00:00:21 #1364 [Verbose] > │     let v145 : UH2 = UH2_0(v143, v144)                                       │

00:00:21 #1365 [Verbose] > │     let v146 : UH2 = UH2_0(v142, v145)                                       │

00:00:21 #1366 [Verbose] > │     let v147 : UH2 = UH2_0(v141, v146)                                       │

00:00:21 #1367 [Verbose] > │     let v148 : UH2 = UH2_0(v140, v147)                                       │

00:00:21 #1368 [Verbose] > │     let v149 : US0 = US0_0                                                   │

00:00:21 #1369 [Verbose] > │     let v150 : string = "---"                                                │

00:00:21 #1370 [Verbose] > │     let v151 : UH2 = UH2_1                                                   │

00:00:21 #1371 [Verbose] > │     let v152 : UH2 = UH2_0(v150, v151)                                       │

00:00:21 #1372 [Verbose] > │     let v153 : UH2 = UH2_0(v150, v152)                                       │

00:00:21 #1373 [Verbose] > │     let v154 : UH2 = UH2_0(v150, v153)                                       │

00:00:21 #1374 [Verbose] > │     let v155 : UH2 = UH2_0(v150, v154)                                       │

00:00:21 #1375 [Verbose] > │     let v156 : US0 = US0_0                                                   │

00:00:21 #1376 [Verbose] > │     let v157 : UH4 = UH4_1                                                   │

00:00:21 #1377 [Verbose] > │     let v158 : UH4 = UH4_0(v155, v156, v157)                                 │

00:00:21 #1378 [Verbose] > │     let v159 : UH4 = UH4_0(v148, v149, v158)                                 │

00:00:21 #1379 [Verbose] > │     let v160 : (struct (UH2 * US0) []) = method16(v159)                      │

00:00:21 #1380 [Verbose] > │     let v161 : uint64 = System.Convert.ToUInt64 v160.Length                  │

00:00:21 #1381 [Verbose] > │     let v162 : uint64 = System.Convert.ToUInt64 v90.Length                   │

00:00:21 #1382 [Verbose] > │     let v163 : uint64 = v161 + v162                                          │

00:00:21 #1383 [Verbose] > │     let v164 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:21 #1384 [Verbose] > │ US0)> (System.Convert.ToInt32(v163))                                         │

00:00:21 #1385 [Verbose] > │     let v165 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1386 [Verbose] > │     while method4(v163, v165) do                                             │

00:00:21 #1387 [Verbose] > │         let v167 : uint64 = v165.l0                                          │

00:00:21 #1388 [Verbose] > │         let v168 : bool = v167 < v161                                        │

00:00:21 #1389 [Verbose] > │         let struct (v174 : UH2, v175 : US0) =                                │

00:00:21 #1390 [Verbose] > │             if v168 then                                                     │

00:00:21 #1391 [Verbose] > │                 let struct (v169 : UH2, v170 : US0) = v160.[int v167]        │

00:00:21 #1392 [Verbose] > │                 struct (v169, v170)                                          │

00:00:21 #1393 [Verbose] > │             else                                                             │

00:00:21 #1394 [Verbose] > │                 let v171 : uint64 = v167 - v161                              │

00:00:21 #1395 [Verbose] > │                 let struct (v172 : UH2, v173 : US0) = v90.[int v171]         │

00:00:21 #1396 [Verbose] > │                 struct (v172, v173)                                          │

00:00:21 #1397 [Verbose] > │         v164.[int v167] <- struct (v174, v175)                               │

00:00:21 #1398 [Verbose] > │         let v176 : uint64 = v167 + 1UL                                       │

00:00:21 #1399 [Verbose] > │         v165.l0 <- v176                                                      │

00:00:21 #1400 [Verbose] > │         ()                                                                   │

00:00:21 #1401 [Verbose] > │     let v177 : uint64 = System.Convert.ToUInt64 v164.Length                  │

00:00:21 #1402 [Verbose] > │     let v178 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:00:21 #1403 [Verbose] > │ (System.Convert.ToInt32(v177))                                               │

00:00:21 #1404 [Verbose] > │     let v179 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1405 [Verbose] > │     while method4(v177, v179) do                                             │

00:00:21 #1406 [Verbose] > │         let v181 : uint64 = v179.l0                                          │

00:00:21 #1407 [Verbose] > │         let struct (v182 : UH2, v183 : US0) = v164.[int v181]                │

00:00:21 #1408 [Verbose] > │         let v184 : (string []) = method19(v182)                              │

00:00:21 #1409 [Verbose] > │         v178.[int v181] <- v184                                              │

00:00:21 #1410 [Verbose] > │         let v185 : uint64 = v181 + 1UL                                       │

00:00:21 #1411 [Verbose] > │         v179.l0 <- v185                                                      │

00:00:21 #1412 [Verbose] > │         ()                                                                   │

00:00:21 #1413 [Verbose] > │     let v186 : ((string []) []) = v178 |> Array.transpose                    │

00:00:21 #1414 [Verbose] > │     let v187 : uint64 = System.Convert.ToUInt64 v186.Length                  │

00:00:21 #1415 [Verbose] > │     let v188 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:21 #1416 [Verbose] > │ (System.Convert.ToInt32(v187))                                               │

00:00:21 #1417 [Verbose] > │     let v189 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1418 [Verbose] > │     while method4(v187, v189) do                                             │

00:00:21 #1419 [Verbose] > │         let v191 : uint64 = v189.l0                                          │

00:00:21 #1420 [Verbose] > │         let v192 : (string []) = v186.[int v191]                             │

00:00:21 #1421 [Verbose] > │         let v193 : uint64 = System.Convert.ToUInt64 v192.Length              │

00:00:21 #1422 [Verbose] > │         let v194 : (int64 []) = Array.zeroCreate<int64>                      │

00:00:21 #1423 [Verbose] > │ (System.Convert.ToInt32(v193))                                               │

00:00:21 #1424 [Verbose] > │         let v195 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:21 #1425 [Verbose] > │         while method4(v193, v195) do                                         │

00:00:21 #1426 [Verbose] > │             let v197 : uint64 = v195.l0                                      │

00:00:21 #1427 [Verbose] > │             let v198 : string = v192.[int v197]                              │

00:00:21 #1428 [Verbose] > │             let v199 : int64 = System.Convert.ToInt64 v198.Length            │

00:00:21 #1429 [Verbose] > │             v194.[int v197] <- v199                                          │

00:00:21 #1430 [Verbose] > │             let v200 : uint64 = v197 + 1UL                                   │

00:00:21 #1431 [Verbose] > │             v195.l0 <- v200                                                  │

00:00:21 #1432 [Verbose] > │             ()                                                               │

00:00:21 #1433 [Verbose] > │         let v201 : (int64 []) = v194 |> Array.sortDescending                 │

00:00:21 #1434 [Verbose] > │         let v202 : int64 option = v201 |> Array.tryItem 0                    │

00:00:21 #1435 [Verbose] > │         let v203 : (int64 -> US1) = closure7()                               │

00:00:21 #1436 [Verbose] > │         let v204 : US1 = US1_0                                               │

00:00:21 #1437 [Verbose] > │         let v205 : US1 = v202 |> Option.map v203 |> Option.defaultValue v204 │

00:00:21 #1438 [Verbose] > │         let v208 : int64 =                                                   │

00:00:21 #1439 [Verbose] > │             match v205 with                                                  │

00:00:21 #1440 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:21 #1441 [Verbose] > │                 0L                                                           │

00:00:21 #1442 [Verbose] > │             | US1_1(v206) -> (* Some *)                                      │

00:00:21 #1443 [Verbose] > │                 v206                                                         │

00:00:21 #1444 [Verbose] > │         v188.[int v191] <- v208                                              │

00:00:21 #1445 [Verbose] > │         let v209 : uint64 = v191 + 1UL                                       │

00:00:21 #1446 [Verbose] > │         v189.l0 <- v209                                                      │

00:00:21 #1447 [Verbose] > │         ()                                                                   │

00:00:21 #1448 [Verbose] > │     let v210 : uint64 = System.Convert.ToUInt64 v188.Length                  │

00:00:21 #1449 [Verbose] > │     let v211 : UH5 = UH5_1                                                   │

00:00:21 #1450 [Verbose] > │     let v212 : Mut3 = {l0 = 0UL; l1 = v211; l2 = 0} : Mut3                   │

00:00:21 #1451 [Verbose] > │     while method22(v210, v212) do                                            │

00:00:21 #1452 [Verbose] > │         let v214 : uint64 = v212.l0                                          │

00:00:21 #1453 [Verbose] > │         let struct (v215 : UH5, v216 : int32) = v212.l1, v212.l2             │

00:00:21 #1454 [Verbose] > │         let v217 : int64 = v188.[int v214]                                   │

00:00:21 #1455 [Verbose] > │         let v218 : int32 = v216 + 1                                          │

00:00:21 #1456 [Verbose] > │         let v219 : uint64 = v214 + 1UL                                       │

00:00:21 #1457 [Verbose] > │         let v220 : UH5 = UH5_0(v216, v217, v215)                             │

00:00:21 #1458 [Verbose] > │         v212.l0 <- v219                                                      │

00:00:21 #1459 [Verbose] > │         v212.l1 <- v220                                                      │

00:00:21 #1460 [Verbose] > │         v212.l2 <- v218                                                      │

00:00:21 #1461 [Verbose] > │         ()                                                                   │

00:00:21 #1462 [Verbose] > │     let struct (v221 : UH5, v222 : int32) = v212.l1, v212.l2                 │

00:00:21 #1463 [Verbose] > │     let v223 : UH5 = UH5_1                                                   │

00:00:21 #1464 [Verbose] > │     let v224 : UH5 = method23(v221, v223)                                    │

00:00:21 #1465 [Verbose] > │     let v225 : (struct (int32 * int64) []) = method24(v224)                  │

00:00:21 #1466 [Verbose] > │     let v226 : Map<int32, int64> = v225 |> Array.map (fun (struct (a, b)) -> │

00:00:21 #1467 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:00:21 #1468 [Verbose] > │     let v227 : (struct ((string []) * US0) []) = Array.zeroCreate<struct     │

00:00:21 #1469 [Verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v177))                          │

00:00:21 #1470 [Verbose] > │     let v228 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1471 [Verbose] > │     while method4(v177, v228) do                                             │

00:00:21 #1472 [Verbose] > │         let v230 : uint64 = v228.l0                                          │

00:00:21 #1473 [Verbose] > │         let struct (v231 : UH2, v232 : US0) = v164.[int v230]                │

00:00:21 #1474 [Verbose] > │         let v233 : UH6 = UH6_1                                               │

00:00:21 #1475 [Verbose] > │         let v234 : int32 = 0                                                 │

00:00:21 #1476 [Verbose] > │         let struct (v235 : UH6, v236 : int32) = method27(v231, v233, v234)   │

00:00:21 #1477 [Verbose] > │         let v237 : UH6 = UH6_1                                               │

00:00:21 #1478 [Verbose] > │         let v238 : UH6 = method28(v235, v237)                                │

00:00:21 #1479 [Verbose] > │         let v239 : UH2 = UH2_1                                               │

00:00:21 #1480 [Verbose] > │         let v240 : UH2 = method29(v226, v238, v239)                          │

00:00:21 #1481 [Verbose] > │         let v241 : (string []) = method30(v240)                              │

00:00:21 #1482 [Verbose] > │         v227.[int v230] <- struct (v241, v232)                               │

00:00:21 #1483 [Verbose] > │         let v242 : uint64 = v230 + 1UL                                       │

00:00:21 #1484 [Verbose] > │         v228.l0 <- v242                                                      │

00:00:21 #1485 [Verbose] > │         ()                                                                   │

00:00:21 #1486 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #1487 [Verbose] > │     let v243 : uint64 = System.Convert.ToUInt64 v227.Length                  │

00:00:21 #1488 [Verbose] > │     let v244 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1489 [Verbose] > │     while method4(v243, v244) do                                             │

00:00:21 #1490 [Verbose] > │         let v246 : uint64 = v244.l0                                          │

00:00:21 #1491 [Verbose] > │         let struct (v247 : (string []), v248 : US0) = v227.[int v246]        │

00:00:21 #1492 [Verbose] > │         match v248 with                                                      │

00:00:21 #1493 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:21 #1494 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:21 #1495 [Verbose] > │             let v252 : (unit -> unit) = closure8()                           │

00:00:21 #1496 [Verbose] > │             v252 ()                                                          │

00:00:21 #1497 [Verbose] > │             #else                                                            │

00:00:21 #1498 [Verbose] > │             let v253 : (unit -> unit) = closure9()                           │

00:00:21 #1499 [Verbose] > │             v253 ()                                                          │

00:00:21 #1500 [Verbose] > │             #endif                                                           │

00:00:21 #1501 [Verbose] > │             ()                                                               │

00:00:21 #1502 [Verbose] > │         | US0_1(v249) -> (* Some *)                                          │

00:00:21 #1503 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:21 #1504 [Verbose] > │             let v250 : (unit -> unit) = closure10()                          │

00:00:21 #1505 [Verbose] > │             v250 ()                                                          │

00:00:21 #1506 [Verbose] > │             #else                                                            │

00:00:21 #1507 [Verbose] > │             let v251 : (unit -> unit) = closure11(v249)                      │

00:00:21 #1508 [Verbose] > │             v251 ()                                                          │

00:00:21 #1509 [Verbose] > │             #endif                                                           │

00:00:21 #1510 [Verbose] > │             ()                                                               │

00:00:21 #1511 [Verbose] > │         let v254 : string = "\t| "                                           │

00:00:21 #1512 [Verbose] > │         let v255 : string = System.String.Join (v254, v247)                  │

00:00:21 #1513 [Verbose] > │         System.Console.WriteLine v255                                        │

00:00:21 #1514 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:00:21 #1515 [Verbose] > │         let v256 : (unit -> unit) = closure8()                               │

00:00:21 #1516 [Verbose] > │         v256 ()                                                              │

00:00:21 #1517 [Verbose] > │         #else                                                                │

00:00:21 #1518 [Verbose] > │         let v257 : (unit -> unit) = closure9()                               │

00:00:21 #1519 [Verbose] > │         v257 ()                                                              │

00:00:21 #1520 [Verbose] > │         #endif                                                               │

00:00:21 #1521 [Verbose] > │         let v258 : uint64 = v246 + 1UL                                       │

00:00:21 #1522 [Verbose] > │         v244.l0 <- v258                                                      │

00:00:21 #1523 [Verbose] > │         ()                                                                   │

00:00:21 #1524 [Verbose] > │     let v259 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:00:21 #1525 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:21 #1526 [Verbose] > │     let v260 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1527 [Verbose] > │     while method4(v89, v260) do                                              │

00:00:21 #1528 [Verbose] > │         let v262 : uint64 = v260.l0                                          │

00:00:21 #1529 [Verbose] > │         let struct (v263 : string, v264 : string, v265 : string, v266 :      │

00:00:21 #1530 [Verbose] > │ (int64 [])) = v11.[int v262]                                                 │

00:00:21 #1531 [Verbose] > │         let v267 : (int64 -> float) = float                                  │

00:00:21 #1532 [Verbose] > │         let v268 : uint64 = System.Convert.ToUInt64 v266.Length              │

00:00:21 #1533 [Verbose] > │         let v269 : (float []) = Array.zeroCreate<float>                      │

00:00:21 #1534 [Verbose] > │ (System.Convert.ToInt32(v268))                                               │

00:00:21 #1535 [Verbose] > │         let v270 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:21 #1536 [Verbose] > │         while method4(v268, v270) do                                         │

00:00:21 #1537 [Verbose] > │             let v272 : uint64 = v270.l0                                      │

00:00:21 #1538 [Verbose] > │             let v273 : int64 = v266.[int v272]                               │

00:00:21 #1539 [Verbose] > │             let v274 : float = v267 v273                                     │

00:00:21 #1540 [Verbose] > │             v269.[int v272] <- v274                                          │

00:00:21 #1541 [Verbose] > │             let v275 : uint64 = v272 + 1UL                                   │

00:00:21 #1542 [Verbose] > │             v270.l0 <- v275                                                  │

00:00:21 #1543 [Verbose] > │             ()                                                               │

00:00:21 #1544 [Verbose] > │         v259.[int v262] <- v269                                              │

00:00:21 #1545 [Verbose] > │         let v276 : uint64 = v262 + 1UL                                       │

00:00:21 #1546 [Verbose] > │         v260.l0 <- v276                                                      │

00:00:21 #1547 [Verbose] > │         ()                                                                   │

00:00:21 #1548 [Verbose] > │     let v277 : ((float []) []) = v259 |> Array.transpose                     │

00:00:21 #1549 [Verbose] > │     let v278 : uint64 = System.Convert.ToUInt64 v277.Length                  │

00:00:21 #1550 [Verbose] > │     let v279 : (float []) = Array.zeroCreate<float>                          │

00:00:21 #1551 [Verbose] > │ (System.Convert.ToInt32(v278))                                               │

00:00:21 #1552 [Verbose] > │     let v280 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1553 [Verbose] > │     while method4(v278, v280) do                                             │

00:00:21 #1554 [Verbose] > │         let v282 : uint64 = v280.l0                                          │

00:00:21 #1555 [Verbose] > │         let v283 : (float []) = v277.[int v282]                              │

00:00:21 #1556 [Verbose] > │         let v284 : float = v283 |> Array.average                             │

00:00:21 #1557 [Verbose] > │         v279.[int v282] <- v284                                              │

00:00:21 #1558 [Verbose] > │         let v285 : uint64 = v282 + 1UL                                       │

00:00:21 #1559 [Verbose] > │         v280.l0 <- v285                                                      │

00:00:21 #1560 [Verbose] > │         ()                                                                   │

00:00:21 #1561 [Verbose] > │     let v286 : (float -> int64) = int64                                      │

00:00:21 #1562 [Verbose] > │     let v287 : uint64 = System.Convert.ToUInt64 v279.Length                  │

00:00:21 #1563 [Verbose] > │     let v288 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:21 #1564 [Verbose] > │ (System.Convert.ToInt32(v287))                                               │

00:00:21 #1565 [Verbose] > │     let v289 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1566 [Verbose] > │     while method4(v287, v289) do                                             │

00:00:21 #1567 [Verbose] > │         let v291 : uint64 = v289.l0                                          │

00:00:21 #1568 [Verbose] > │         let v292 : float = v279.[int v291]                                   │

00:00:21 #1569 [Verbose] > │         let v293 : int64 = v286 v292                                         │

00:00:21 #1570 [Verbose] > │         v288.[int v291] <- v293                                              │

00:00:21 #1571 [Verbose] > │         let v294 : uint64 = v291 + 1UL                                       │

00:00:21 #1572 [Verbose] > │         v289.l0 <- v294                                                      │

00:00:21 #1573 [Verbose] > │         ()                                                                   │

00:00:21 #1574 [Verbose] > │     let v295 : uint64 = System.Convert.ToUInt64 v288.Length                  │

00:00:21 #1575 [Verbose] > │     let v296 : UH5 = UH5_1                                                   │

00:00:21 #1576 [Verbose] > │     let v297 : Mut3 = {l0 = 0UL; l1 = v296; l2 = 0} : Mut3                   │

00:00:21 #1577 [Verbose] > │     while method22(v295, v297) do                                            │

00:00:21 #1578 [Verbose] > │         let v299 : uint64 = v297.l0                                          │

00:00:21 #1579 [Verbose] > │         let struct (v300 : UH5, v301 : int32) = v297.l1, v297.l2             │

00:00:21 #1580 [Verbose] > │         let v302 : int64 = v288.[int v299]                                   │

00:00:21 #1581 [Verbose] > │         let v303 : int32 = v301 + 1                                          │

00:00:21 #1582 [Verbose] > │         let v304 : uint64 = v299 + 1UL                                       │

00:00:21 #1583 [Verbose] > │         let v305 : UH5 = UH5_0(v301, v302, v300)                             │

00:00:21 #1584 [Verbose] > │         v297.l0 <- v304                                                      │

00:00:21 #1585 [Verbose] > │         v297.l1 <- v305                                                      │

00:00:21 #1586 [Verbose] > │         v297.l2 <- v303                                                      │

00:00:21 #1587 [Verbose] > │         ()                                                                   │

00:00:21 #1588 [Verbose] > │     let struct (v306 : UH5, v307 : int32) = v297.l1, v297.l2                 │

00:00:21 #1589 [Verbose] > │     let v308 : UH5 = UH5_1                                                   │

00:00:21 #1590 [Verbose] > │     let v309 : UH5 = method23(v306, v308)                                    │

00:00:21 #1591 [Verbose] > │     let v310 : (struct (int32 * int64) []) = method33(v309)                  │

00:00:21 #1592 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:21 #1593 [Verbose] > │     let v311 : string = "Average Ranking  "                                  │

00:00:21 #1594 [Verbose] > │     System.Console.WriteLine v311                                            │

00:00:21 #1595 [Verbose] > │     let v312 : (struct (int32 * int64) -> int64) = closure12()               │

00:00:21 #1596 [Verbose] > │     let v313 : (struct (int32 * int64) []) = v310 |> Array.sortBy v312       │

00:00:21 #1597 [Verbose] > │     let v314 : uint64 = System.Convert.ToUInt64 v313.Length                  │

00:00:21 #1598 [Verbose] > │     let v315 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:21 #1599 [Verbose] > │     while method4(v314, v315) do                                             │

00:00:21 #1600 [Verbose] > │         let v317 : uint64 = v315.l0                                          │

00:00:21 #1601 [Verbose] > │         let struct (v318 : int32, v319 : int64) = v313.[int v317]            │

00:00:21 #1602 [Verbose] > │         let v320 : string = $"Test case %d{v318 + 1}. Average Time: %A{v319} │

00:00:21 #1603 [Verbose] > │ "                                                                            │

00:00:21 #1604 [Verbose] > │         System.Console.WriteLine v320                                        │

00:00:21 #1605 [Verbose] > │         let v321 : uint64 = v317 + 1UL                                       │

00:00:21 #1606 [Verbose] > │         v315.l0 <- v321                                                      │

00:00:21 #1607 [Verbose] > │         ()                                                                   │

00:00:21 #1608 [Verbose] > │     ()                                                                       │

00:00:21 #1609 [Verbose] > │ method0()                                                                    │

00:00:21 #1610 [Verbose] > │                                                                              │

00:00:21 #1611 [Verbose] > │                                                                              │

00:00:21 #1612 [Verbose] > │                                                                              │

00:00:21 #1613 [Verbose] > │ Test: v0                                                                     │

00:00:21 #1614 [Verbose] > │                                                                              │

00:00:21 #1615 [Verbose] > │ Solution: struct ("a", "a")                                                  │

00:00:21 #1616 [Verbose] > │ Test case 1. A. Time: 103                                                    │

00:00:21 #1617 [Verbose] > │ Test case 2. B. Time: 91                                                     │

00:00:21 #1618 [Verbose] > │                                                                              │

00:00:21 #1619 [Verbose] > │ Solution: struct ("b", "b")                                                  │

00:00:21 #1620 [Verbose] > │ Test case 1. A. Time: 94                                                     │

00:00:21 #1621 [Verbose] > │ Test case 2. B. Time: 89                                                     │

00:00:21 #1622 [Verbose] > │                                                                              │

00:00:21 #1623 [Verbose] > │ Input            	| Expected	| Result	| Best                                       │

00:00:21 #1624 [Verbose] > │ ---              	| ---     	| ---   	| ---                                        │

00:00:21 #1625 [Verbose] > │ struct ("a", "a")	| "a"     	| "a"   	| struct (2L, 91L)                           │

00:00:21 #1626 [Verbose] > │ struct ("b", "b")	| "b"     	| "b"   	| struct (2L, 89L)                           │

00:00:21 #1627 [Verbose] > │                                                                              │

00:00:21 #1628 [Verbose] > │ Average Ranking                                                              │

00:00:21 #1629 [Verbose] > │ Test case 2. Average Time: 90L                                               │

00:00:21 #1630 [Verbose] > │ Test case 1. Average Time: 98L                                               │

00:00:21 #1631 [Verbose] > │                                                                              │

00:00:21 #1632 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1633 [Verbose] >

00:00:21 #1634 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:21 #1635 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:21 #1636 [Verbose] > │ ## emptyTests                                                                │

00:00:21 #1637 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1638 [Verbose] >

00:00:21 #1639 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:21 #1640 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:21 #1641 [Verbose] > │ Test: Empty                                                                  │

00:00:21 #1642 [Verbose] > │                                                                              │

00:00:21 #1643 [Verbose] > │ Solution: 0                                                                  │

00:00:21 #1644 [Verbose] > │ Test case 1. A. Time: 61L                                                    │

00:00:21 #1645 [Verbose] > │                                                                              │

00:00:21 #1646 [Verbose] > │ Solution: 2                                                                  │

00:00:21 #1647 [Verbose] > │ Test case 1. A. Time: 62L                                                    │

00:00:21 #1648 [Verbose] > │                                                                              │

00:00:21 #1649 [Verbose] > │ Solution: 5                                                                  │

00:00:21 #1650 [Verbose] > │ Test case 1. A. Time: 70L                                                    │

00:00:21 #1651 [Verbose] > │                                                                              │

00:00:21 #1652 [Verbose] > │ Input   | Expected        | Result  | Best                                   │

00:00:21 #1653 [Verbose] > │ ---     | ---             | ---     | ---                                    │

00:00:21 #1654 [Verbose] > │ 0       | 0               | 0       | (1, 61)                                │

00:00:21 #1655 [Verbose] > │ 2       | 2               | 2       | (1, 62)                                │

00:00:21 #1656 [Verbose] > │ 5       | 5               | 5       | (1, 70)                                │

00:00:21 #1657 [Verbose] > │                                                                              │

00:00:21 #1658 [Verbose] > │ Averages                                                                     │

00:00:21 #1659 [Verbose] > │ Test case 1. Average Time: 64L                                               │

00:00:21 #1660 [Verbose] > │                                                                              │

00:00:21 #1661 [Verbose] > │ Ranking                                                                      │

00:00:21 #1662 [Verbose] > │ Test case 1. Average Time: 64L                                               │

00:00:21 #1663 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1664 [Verbose] >

00:00:21 #1665 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #1666 [Verbose] > // // test

00:00:21 #1667 [Verbose] >

00:00:21 #1668 [Verbose] > inl get_solutions () =

00:00:21 #1669 [Verbose] >     [[

00:00:21 #1670 [Verbose] >         "A",

00:00:21 #1671 [Verbose] >         fun n =>

00:00:21 #1672 [Verbose] >             n + 1f64

00:00:21 #1673 [Verbose] >     ]]

00:00:21 #1674 [Verbose] >

00:00:21 #1675 [Verbose] > inl rec empty_1_tests () =

00:00:21 #1676 [Verbose] >     inl test_cases = [[

00:00:21 #1677 [Verbose] >         0, 1

00:00:21 #1678 [Verbose] >         2, 3

00:00:21 #1679 [Verbose] >         5, 6

00:00:21 #1680 [Verbose] >     ]]

00:00:21 #1681 [Verbose] >

00:00:21 #1682 [Verbose] >     inl solutions = get_solutions ()

00:00:21 #1683 [Verbose] >

00:00:21 #1684 [Verbose] >     // inl is_fast () = true

00:00:21 #1685 [Verbose] >

00:00:21 #1686 [Verbose] >     inl count =

00:00:21 #1687 [Verbose] >         if is_fast ()

00:00:21 #1688 [Verbose] >         then 1000i32

00:00:21 #1689 [Verbose] >         else 2000000i32

00:00:21 #1690 [Verbose] >

00:00:21 #1691 [Verbose] >     run_all (nameof empty_1_tests) count solutions test_cases

00:00:21 #1692 [Verbose] >     |> sort_result_list

00:00:21 #1693 [Verbose] >

00:00:21 #1694 [Verbose] > empty_1_tests ()

00:00:21 #1695 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-1329-2915-29601b195edd\main.spi

00:00:26 #1696 [Verbose] >

00:00:26 #1697 [Verbose] > ╭─[ 5.16s - stdout ]───────────────────────────────────────────────────────────╮

00:00:26 #1698 [Verbose] > │ type UH0 =                                                                   │

00:00:26 #1699 [Verbose] > │     | UH0_0 of float * float * UH0                                           │

00:00:26 #1700 [Verbose] > │     | UH0_1                                                                  │

00:00:26 #1701 [Verbose] > │ and Mut0 = {mutable l0 : uint64}                                             │

00:00:26 #1702 [Verbose] > │ and UH1 =                                                                    │

00:00:26 #1703 [Verbose] > │     | UH1_0 of int32 * string * (float -> float) * UH1                       │

00:00:26 #1704 [Verbose] > │     | UH1_1                                                                  │

00:00:26 #1705 [Verbose] > │ and Mut1 = {mutable l0 : int32}                                              │

00:00:26 #1706 [Verbose] > │ and UH2 =                                                                    │

00:00:26 #1707 [Verbose] > │     | UH2_0 of string * UH2                                                  │

00:00:26 #1708 [Verbose] > │     | UH2_1                                                                  │

00:00:26 #1709 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:26 #1710 [Verbose] > │     | US0_0                                                                  │

00:00:26 #1711 [Verbose] > │     | US0_1 of f1_0 : System.ConsoleColor                                    │

00:00:26 #1712 [Verbose] > │ and UH3 =                                                                    │

00:00:26 #1713 [Verbose] > │     | UH3_0 of int64 * int64 * UH3                                           │

00:00:26 #1714 [Verbose] > │     | UH3_1                                                                  │

00:00:26 #1715 [Verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH3; mutable l2 : int64}       │

00:00:26 #1716 [Verbose] > │ and UH4 =                                                                    │

00:00:26 #1717 [Verbose] > │     | UH4_0 of UH2 * US0 * UH4                                               │

00:00:26 #1718 [Verbose] > │     | UH4_1                                                                  │

00:00:26 #1719 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:26 #1720 [Verbose] > │     | US1_0                                                                  │

00:00:26 #1721 [Verbose] > │     | US1_1 of f1_0 : int64                                                  │

00:00:26 #1722 [Verbose] > │ and UH5 =                                                                    │

00:00:26 #1723 [Verbose] > │     | UH5_0 of int32 * int64 * UH5                                           │

00:00:26 #1724 [Verbose] > │     | UH5_1                                                                  │

00:00:26 #1725 [Verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH5; mutable l2 : int32}       │

00:00:26 #1726 [Verbose] > │ and UH6 =                                                                    │

00:00:26 #1727 [Verbose] > │     | UH6_0 of int32 * string * UH6                                          │

00:00:26 #1728 [Verbose] > │     | UH6_1                                                                  │

00:00:26 #1729 [Verbose] > │ let rec method2 (v0 : UH0, v1 : uint64) : uint64 =                           │

00:00:26 #1730 [Verbose] > │     match v0 with                                                            │

00:00:26 #1731 [Verbose] > │     | UH0_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1732 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:26 #1733 [Verbose] > │         method2(v4, v5)                                                      │

00:00:26 #1734 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:26 #1735 [Verbose] > │         v1                                                                   │

00:00:26 #1736 [Verbose] > │ and method3 (v0 : (struct (float * float) []), v1 : UH0, v2 : uint64) :      │

00:00:26 #1737 [Verbose] > │ uint64 =                                                                     │

00:00:26 #1738 [Verbose] > │     match v1 with                                                            │

00:00:26 #1739 [Verbose] > │     | UH0_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:26 #1740 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:26 #1741 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:26 #1742 [Verbose] > │         method3(v0, v5, v6)                                                  │

00:00:26 #1743 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:26 #1744 [Verbose] > │         v2                                                                   │

00:00:26 #1745 [Verbose] > │ and method1 (v0 : UH0) : (struct (float * float) []) =                       │

00:00:26 #1746 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:26 #1747 [Verbose] > │     let v2 : uint64 = method2(v0, v1)                                        │

00:00:26 #1748 [Verbose] > │     let v3 : (struct (float * float) []) = Array.zeroCreate<struct (float *  │

00:00:26 #1749 [Verbose] > │ float)> (System.Convert.ToInt32(v2))                                         │

00:00:26 #1750 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:26 #1751 [Verbose] > │     let v5 : uint64 = method3(v3, v0, v4)                                    │

00:00:26 #1752 [Verbose] > │     v3                                                                       │

00:00:26 #1753 [Verbose] > │ and method4 (v0 : uint64, v1 : Mut0) : bool =                                │

00:00:26 #1754 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:26 #1755 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:26 #1756 [Verbose] > │     v3                                                                       │

00:00:26 #1757 [Verbose] > │ and closure1 () (v0 : float) : float =                                       │

00:00:26 #1758 [Verbose] > │     let v1 : float = v0 + 1.0                                                │

00:00:26 #1759 [Verbose] > │     v1                                                                       │

00:00:26 #1760 [Verbose] > │ and method6 (v0 : UH1, v1 : uint64) : uint64 =                               │

00:00:26 #1761 [Verbose] > │     match v0 with                                                            │

00:00:26 #1762 [Verbose] > │     | UH1_0(v2, v3, v4, v5) -> (* Cons *)                                    │

00:00:26 #1763 [Verbose] > │         let v6 : uint64 = v1 + 1UL                                           │

00:00:26 #1764 [Verbose] > │         method6(v5, v6)                                                      │

00:00:26 #1765 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:26 #1766 [Verbose] > │         v1                                                                   │

00:00:26 #1767 [Verbose] > │ and method7 (v0 : (struct (int32 * string * (float -> float)) []), v1 : UH1, │

00:00:26 #1768 [Verbose] > │ v2 : uint64) : uint64 =                                                      │

00:00:26 #1769 [Verbose] > │     match v1 with                                                            │

00:00:26 #1770 [Verbose] > │     | UH1_0(v3, v4, v5, v6) -> (* Cons *)                                    │

00:00:26 #1771 [Verbose] > │         v0.[int v2] <- struct (v3, v4, v5)                                   │

00:00:26 #1772 [Verbose] > │         let v7 : uint64 = v2 + 1UL                                           │

00:00:26 #1773 [Verbose] > │         method7(v0, v6, v7)                                                  │

00:00:26 #1774 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:26 #1775 [Verbose] > │         v2                                                                   │

00:00:26 #1776 [Verbose] > │ and method5 (v0 : UH1) : (struct (int32 * string * (float -> float)) []) =   │

00:00:26 #1777 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:26 #1778 [Verbose] > │     let v2 : uint64 = method6(v0, v1)                                        │

00:00:26 #1779 [Verbose] > │     let v3 : (struct (int32 * string * (float -> float)) []) =               │

00:00:26 #1780 [Verbose] > │ Array.zeroCreate<struct (int32 * string * (float -> float))>                 │

00:00:26 #1781 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:26 #1782 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:26 #1783 [Verbose] > │     let v5 : uint64 = method7(v3, v0, v4)                                    │

00:00:26 #1784 [Verbose] > │     v3                                                                       │

00:00:26 #1785 [Verbose] > │ and closure2 () () : unit =                                                  │

00:00:26 #1786 [Verbose] > │     ()                                                                       │

00:00:26 #1787 [Verbose] > │ and closure3 () () : unit =                                                  │

00:00:26 #1788 [Verbose] > │     System.GC.Collect ()                                                     │

00:00:26 #1789 [Verbose] > │     ()                                                                       │

00:00:26 #1790 [Verbose] > │ and method8 (v0 : Mut1) : bool =                                             │

00:00:26 #1791 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:26 #1792 [Verbose] > │     let v2 : bool = v1 < 2000001                                             │

00:00:26 #1793 [Verbose] > │     v2                                                                       │

00:00:26 #1794 [Verbose] > │ and closure4 (v0 : float, v1 : (float -> float)) (v2 : int32) : float =      │

00:00:26 #1795 [Verbose] > │     v1 v0                                                                    │

00:00:26 #1796 [Verbose] > │ and method9 (v0 : float, v1 : (float []), v2 : uint64) : bool =              │

00:00:26 #1797 [Verbose] > │     let v3 : uint64 = System.Convert.ToUInt64 v1.Length                      │

00:00:26 #1798 [Verbose] > │     let v4 : bool = v2 < v3                                                  │

00:00:26 #1799 [Verbose] > │     if v4 then                                                               │

00:00:26 #1800 [Verbose] > │         let v5 : float = v1.[int v2]                                         │

00:00:26 #1801 [Verbose] > │         let v6 : bool = v0 = v5                                              │

00:00:26 #1802 [Verbose] > │         if v6 then                                                           │

00:00:26 #1803 [Verbose] > │             let v7 : uint64 = v2 + 1UL                                       │

00:00:26 #1804 [Verbose] > │             method9(v0, v1, v7)                                              │

00:00:26 #1805 [Verbose] > │         else                                                                 │

00:00:26 #1806 [Verbose] > │             false                                                            │

00:00:26 #1807 [Verbose] > │     else                                                                     │

00:00:26 #1808 [Verbose] > │         true                                                                 │

00:00:26 #1809 [Verbose] > │ and method10 (v0 : uint64, v1 : Mut2) : bool =                               │

00:00:26 #1810 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:26 #1811 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:26 #1812 [Verbose] > │     v3                                                                       │

00:00:26 #1813 [Verbose] > │ and method11 (v0 : UH3, v1 : UH3) : UH3 =                                    │

00:00:26 #1814 [Verbose] > │     match v0 with                                                            │

00:00:26 #1815 [Verbose] > │     | UH3_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1816 [Verbose] > │         let v5 : UH3 = UH3_0(v2, v3, v1)                                     │

00:00:26 #1817 [Verbose] > │         method11(v4, v5)                                                     │

00:00:26 #1818 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:26 #1819 [Verbose] > │         v1                                                                   │

00:00:26 #1820 [Verbose] > │ and method13 (v0 : UH3, v1 : int32) : int32 =                                │

00:00:26 #1821 [Verbose] > │     match v0 with                                                            │

00:00:26 #1822 [Verbose] > │     | UH3_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1823 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:26 #1824 [Verbose] > │         method13(v4, v5)                                                     │

00:00:26 #1825 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:26 #1826 [Verbose] > │         v1                                                                   │

00:00:26 #1827 [Verbose] > │ and method14 (v0 : (struct (int64 * int64) []), v1 : UH3, v2 : int32) :      │

00:00:26 #1828 [Verbose] > │ int32 =                                                                      │

00:00:26 #1829 [Verbose] > │     match v1 with                                                            │

00:00:26 #1830 [Verbose] > │     | UH3_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:26 #1831 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:26 #1832 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:26 #1833 [Verbose] > │         method14(v0, v5, v6)                                                 │

00:00:26 #1834 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:26 #1835 [Verbose] > │         v2                                                                   │

00:00:26 #1836 [Verbose] > │ and method12 (v0 : UH3) : (struct (int64 * int64) []) =                      │

00:00:26 #1837 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:26 #1838 [Verbose] > │     let v2 : int32 = method13(v0, v1)                                        │

00:00:26 #1839 [Verbose] > │     let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 *  │

00:00:26 #1840 [Verbose] > │ int64)> (v2)                                                                 │

00:00:26 #1841 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:26 #1842 [Verbose] > │     let v5 : int32 = method14(v3, v0, v4)                                    │

00:00:26 #1843 [Verbose] > │     v3                                                                       │

00:00:26 #1844 [Verbose] > │ and method15 (v0 : int32, v1 : Mut1) : bool =                                │

00:00:26 #1845 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:26 #1846 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:26 #1847 [Verbose] > │     v3                                                                       │

00:00:26 #1848 [Verbose] > │ and closure5 () struct (v0 : int64, v1 : int64) : int64 =                    │

00:00:26 #1849 [Verbose] > │     v1                                                                       │

00:00:26 #1850 [Verbose] > │ and method17 (v0 : UH4, v1 : uint64) : uint64 =                              │

00:00:26 #1851 [Verbose] > │     match v0 with                                                            │

00:00:26 #1852 [Verbose] > │     | UH4_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1853 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:26 #1854 [Verbose] > │         method17(v4, v5)                                                     │

00:00:26 #1855 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:26 #1856 [Verbose] > │         v1                                                                   │

00:00:26 #1857 [Verbose] > │ and method18 (v0 : (struct (UH2 * US0) []), v1 : UH4, v2 : uint64) : uint64  │

00:00:26 #1858 [Verbose] > │ =                                                                            │

00:00:26 #1859 [Verbose] > │     match v1 with                                                            │

00:00:26 #1860 [Verbose] > │     | UH4_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:26 #1861 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:26 #1862 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:26 #1863 [Verbose] > │         method18(v0, v5, v6)                                                 │

00:00:26 #1864 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:26 #1865 [Verbose] > │         v2                                                                   │

00:00:26 #1866 [Verbose] > │ and method16 (v0 : UH4) : (struct (UH2 * US0) []) =                          │

00:00:26 #1867 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:26 #1868 [Verbose] > │     let v2 : uint64 = method17(v0, v1)                                       │

00:00:26 #1869 [Verbose] > │     let v3 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)>  │

00:00:26 #1870 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:26 #1871 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:26 #1872 [Verbose] > │     let v5 : uint64 = method18(v3, v0, v4)                                   │

00:00:26 #1873 [Verbose] > │     v3                                                                       │

00:00:26 #1874 [Verbose] > │ and method20 (v0 : UH2, v1 : uint64) : uint64 =                              │

00:00:26 #1875 [Verbose] > │     match v0 with                                                            │

00:00:26 #1876 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:26 #1877 [Verbose] > │         let v4 : uint64 = v1 + 1UL                                           │

00:00:26 #1878 [Verbose] > │         method20(v3, v4)                                                     │

00:00:26 #1879 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:26 #1880 [Verbose] > │         v1                                                                   │

00:00:26 #1881 [Verbose] > │ and method21 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 =            │

00:00:26 #1882 [Verbose] > │     match v1 with                                                            │

00:00:26 #1883 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:26 #1884 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:26 #1885 [Verbose] > │         let v5 : uint64 = v2 + 1UL                                           │

00:00:26 #1886 [Verbose] > │         method21(v0, v4, v5)                                                 │

00:00:26 #1887 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:26 #1888 [Verbose] > │         v2                                                                   │

00:00:26 #1889 [Verbose] > │ and method19 (v0 : UH2) : (string []) =                                      │

00:00:26 #1890 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:26 #1891 [Verbose] > │     let v2 : uint64 = method20(v0, v1)                                       │

00:00:26 #1892 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string>                          │

00:00:26 #1893 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:26 #1894 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:26 #1895 [Verbose] > │     let v5 : uint64 = method21(v3, v0, v4)                                   │

00:00:26 #1896 [Verbose] > │     v3                                                                       │

00:00:26 #1897 [Verbose] > │ and closure6 () (v0 : int64) : US1 =                                         │

00:00:26 #1898 [Verbose] > │     US1_1(v0)                                                                │

00:00:26 #1899 [Verbose] > │ and method22 (v0 : uint64, v1 : Mut3) : bool =                               │

00:00:26 #1900 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:26 #1901 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:26 #1902 [Verbose] > │     v3                                                                       │

00:00:26 #1903 [Verbose] > │ and method23 (v0 : UH5, v1 : UH5) : UH5 =                                    │

00:00:26 #1904 [Verbose] > │     match v0 with                                                            │

00:00:26 #1905 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1906 [Verbose] > │         let v5 : UH5 = UH5_0(v2, v3, v1)                                     │

00:00:26 #1907 [Verbose] > │         method23(v4, v5)                                                     │

00:00:26 #1908 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:26 #1909 [Verbose] > │         v1                                                                   │

00:00:26 #1910 [Verbose] > │ and method25 (v0 : UH5, v1 : int32) : int32 =                                │

00:00:26 #1911 [Verbose] > │     match v0 with                                                            │

00:00:26 #1912 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1913 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:26 #1914 [Verbose] > │         method25(v4, v5)                                                     │

00:00:26 #1915 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:26 #1916 [Verbose] > │         v1                                                                   │

00:00:26 #1917 [Verbose] > │ and method26 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : int32) :      │

00:00:26 #1918 [Verbose] > │ int32 =                                                                      │

00:00:26 #1919 [Verbose] > │     match v1 with                                                            │

00:00:26 #1920 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:26 #1921 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:26 #1922 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:26 #1923 [Verbose] > │         method26(v0, v5, v6)                                                 │

00:00:26 #1924 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:26 #1925 [Verbose] > │         v2                                                                   │

00:00:26 #1926 [Verbose] > │ and method24 (v0 : UH5) : (struct (int32 * int64) []) =                      │

00:00:26 #1927 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:26 #1928 [Verbose] > │     let v2 : int32 = method25(v0, v1)                                        │

00:00:26 #1929 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:00:26 #1930 [Verbose] > │ int64)> (v2)                                                                 │

00:00:26 #1931 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:26 #1932 [Verbose] > │     let v5 : int32 = method26(v3, v0, v4)                                    │

00:00:26 #1933 [Verbose] > │     v3                                                                       │

00:00:26 #1934 [Verbose] > │ and method27 (v0 : UH2, v1 : UH6, v2 : int32) : struct (UH6 * int32) =       │

00:00:26 #1935 [Verbose] > │     match v0 with                                                            │

00:00:26 #1936 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:26 #1937 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:26 #1938 [Verbose] > │         let v6 : UH6 = UH6_0(v2, v3, v1)                                     │

00:00:26 #1939 [Verbose] > │         method27(v4, v6, v5)                                                 │

00:00:26 #1940 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:26 #1941 [Verbose] > │         struct (v1, v2)                                                      │

00:00:26 #1942 [Verbose] > │ and method28 (v0 : UH6, v1 : UH6) : UH6 =                                    │

00:00:26 #1943 [Verbose] > │     match v0 with                                                            │

00:00:26 #1944 [Verbose] > │     | UH6_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1945 [Verbose] > │         let v5 : UH6 = UH6_0(v2, v3, v1)                                     │

00:00:26 #1946 [Verbose] > │         method28(v4, v5)                                                     │

00:00:26 #1947 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:26 #1948 [Verbose] > │         v1                                                                   │

00:00:26 #1949 [Verbose] > │ and method29 (v0 : Map<int32, int64>, v1 : UH6, v2 : UH2) : UH2 =            │

00:00:26 #1950 [Verbose] > │     match v1 with                                                            │

00:00:26 #1951 [Verbose] > │     | UH6_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:26 #1952 [Verbose] > │         let v6 : UH2 = method29(v0, v5, v2)                                  │

00:00:26 #1953 [Verbose] > │         let v7 : int64 = v0.[v3]                                             │

00:00:26 #1954 [Verbose] > │         let v8 : int32 = int32 v7                                            │

00:00:26 #1955 [Verbose] > │         let v9 : string = v4.PadRight v8                                     │

00:00:26 #1956 [Verbose] > │         UH2_0(v9, v6)                                                        │

00:00:26 #1957 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:26 #1958 [Verbose] > │         v2                                                                   │

00:00:26 #1959 [Verbose] > │ and method31 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:26 #1960 [Verbose] > │     match v0 with                                                            │

00:00:26 #1961 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:26 #1962 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:26 #1963 [Verbose] > │         method31(v3, v4)                                                     │

00:00:26 #1964 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:26 #1965 [Verbose] > │         v1                                                                   │

00:00:26 #1966 [Verbose] > │ and method32 (v0 : (string []), v1 : UH2, v2 : int32) : int32 =              │

00:00:26 #1967 [Verbose] > │     match v1 with                                                            │

00:00:26 #1968 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:26 #1969 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:26 #1970 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:26 #1971 [Verbose] > │         method32(v0, v4, v5)                                                 │

00:00:26 #1972 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:26 #1973 [Verbose] > │         v2                                                                   │

00:00:26 #1974 [Verbose] > │ and method30 (v0 : UH2) : (string []) =                                      │

00:00:26 #1975 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:26 #1976 [Verbose] > │     let v2 : int32 = method31(v0, v1)                                        │

00:00:26 #1977 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string> (v2)                     │

00:00:26 #1978 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:26 #1979 [Verbose] > │     let v5 : int32 = method32(v3, v0, v4)                                    │

00:00:26 #1980 [Verbose] > │     v3                                                                       │

00:00:26 #1981 [Verbose] > │ and closure7 () () : unit =                                                  │

00:00:26 #1982 [Verbose] > │     ()                                                                       │

00:00:26 #1983 [Verbose] > │ and closure8 () () : unit =                                                  │

00:00:26 #1984 [Verbose] > │     System.Console.ResetColor ()                                             │

00:00:26 #1985 [Verbose] > │     ()                                                                       │

00:00:26 #1986 [Verbose] > │ and closure9 () () : unit =                                                  │

00:00:26 #1987 [Verbose] > │     ()                                                                       │

00:00:26 #1988 [Verbose] > │ and closure10 (v0 : System.ConsoleColor) () : unit =                         │

00:00:26 #1989 [Verbose] > │     System.Console.ForegroundColor <- v0                                     │

00:00:26 #1990 [Verbose] > │     ()                                                                       │

00:00:26 #1991 [Verbose] > │ and method34 (v0 : UH5, v1 : uint64) : uint64 =                              │

00:00:26 #1992 [Verbose] > │     match v0 with                                                            │

00:00:26 #1993 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:26 #1994 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:26 #1995 [Verbose] > │         method34(v4, v5)                                                     │

00:00:26 #1996 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:26 #1997 [Verbose] > │         v1                                                                   │

00:00:26 #1998 [Verbose] > │ and method35 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : uint64) :     │

00:00:26 #1999 [Verbose] > │ uint64 =                                                                     │

00:00:26 #2000 [Verbose] > │     match v1 with                                                            │

00:00:26 #2001 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:26 #2002 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:26 #2003 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:26 #2004 [Verbose] > │         method35(v0, v5, v6)                                                 │

00:00:26 #2005 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:26 #2006 [Verbose] > │         v2                                                                   │

00:00:26 #2007 [Verbose] > │ and method33 (v0 : UH5) : (struct (int32 * int64) []) =                      │

00:00:26 #2008 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:26 #2009 [Verbose] > │     let v2 : uint64 = method34(v0, v1)                                       │

00:00:27 #2010 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:00:27 #2011 [Verbose] > │ int64)> (System.Convert.ToInt32(v2))                                         │

00:00:27 #2012 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:27 #2013 [Verbose] > │     let v5 : uint64 = method35(v3, v0, v4)                                   │

00:00:27 #2014 [Verbose] > │     v3                                                                       │

00:00:27 #2015 [Verbose] > │ and closure11 () struct (v0 : int32, v1 : int64) : int64 =                   │

00:00:27 #2016 [Verbose] > │     v1                                                                       │

00:00:27 #2017 [Verbose] > │ and closure0 () () : unit =                                                  │

00:00:27 #2018 [Verbose] > │     let v0 : (unit -> unit) = closure0()                                     │

00:00:27 #2019 [Verbose] > │     let v1 : string = nameof v0                                              │

00:00:27 #2020 [Verbose] > │     let v2 : string = ""                                                     │

00:00:27 #2021 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2022 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2023 [Verbose] > │     let v3 : string = $"Test: {v1}"                                          │

00:00:27 #2024 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:27 #2025 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:27 #2026 [Verbose] > │     let v5 : float = 1.0                                                     │

00:00:27 #2027 [Verbose] > │     let v6 : float = 2.0                                                     │

00:00:27 #2028 [Verbose] > │     let v7 : float = 3.0                                                     │

00:00:27 #2029 [Verbose] > │     let v8 : float = 5.0                                                     │

00:00:27 #2030 [Verbose] > │     let v9 : float = 6.0                                                     │

00:00:27 #2031 [Verbose] > │     let v10 : UH0 = UH0_1                                                    │

00:00:27 #2032 [Verbose] > │     let v11 : UH0 = UH0_0(v8, v9, v10)                                       │

00:00:27 #2033 [Verbose] > │     let v12 : UH0 = UH0_0(v6, v7, v11)                                       │

00:00:27 #2034 [Verbose] > │     let v13 : UH0 = UH0_0(v4, v5, v12)                                       │

00:00:27 #2035 [Verbose] > │     let v14 : (struct (float * float) []) = method1(v13)                     │

00:00:27 #2036 [Verbose] > │     let v15 : uint64 = System.Convert.ToUInt64 v14.Length                    │

00:00:27 #2037 [Verbose] > │     let v16 : (struct (string * string * string * (int64 [])) []) =          │

00:00:27 #2038 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:00:27 #2039 [Verbose] > │ (System.Convert.ToInt32(v15))                                                │

00:00:27 #2040 [Verbose] > │     let v17 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:27 #2041 [Verbose] > │     while method4(v15, v17) do                                               │

00:00:27 #2042 [Verbose] > │         let v19 : uint64 = v17.l0                                            │

00:00:27 #2043 [Verbose] > │         let struct (v20 : float, v21 : float) = v14.[int v19]                │

00:00:27 #2044 [Verbose] > │         let v22 : string = $"%A{v20}"                                        │

00:00:27 #2045 [Verbose] > │         System.Console.WriteLine v2                                          │

00:00:27 #2046 [Verbose] > │         let v23 : string = $"Solution: {v22}  "                              │

00:00:27 #2047 [Verbose] > │         System.Console.WriteLine v23                                         │

00:00:27 #2048 [Verbose] > │         let v24 : int32 = 0                                                  │

00:00:27 #2049 [Verbose] > │         let v25 : string = "A"                                               │

00:00:27 #2050 [Verbose] > │         let v26 : (float -> float) = closure1()                              │

00:00:27 #2051 [Verbose] > │         let v27 : UH1 = UH1_1                                                │

00:00:27 #2052 [Verbose] > │         let v28 : UH1 = UH1_0(v24, v25, v26, v27)                            │

00:00:27 #2053 [Verbose] > │         let v29 : (struct (int32 * string * (float -> float)) []) =          │

00:00:27 #2054 [Verbose] > │ method5(v28)                                                                 │

00:00:27 #2055 [Verbose] > │         let v30 : uint64 = System.Convert.ToUInt64 v29.Length                │

00:00:27 #2056 [Verbose] > │         let v31 : (struct (float * int64) []) = Array.zeroCreate<struct      │

00:00:27 #2057 [Verbose] > │ (float * int64)> (System.Convert.ToInt32(v30))                               │

00:00:27 #2058 [Verbose] > │         let v32 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2059 [Verbose] > │         while method4(v30, v32) do                                           │

00:00:27 #2060 [Verbose] > │             let v34 : uint64 = v32.l0                                        │

00:00:27 #2061 [Verbose] > │             let struct (v35 : int32, v36 : string, v37 : (float -> float)) = │

00:00:27 #2062 [Verbose] > │ v29.[int v34]                                                                │

00:00:27 #2063 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:27 #2064 [Verbose] > │             let v38 : (unit -> unit) = closure2()                            │

00:00:27 #2065 [Verbose] > │             v38 ()                                                           │

00:00:27 #2066 [Verbose] > │             #else                                                            │

00:00:27 #2067 [Verbose] > │             let v39 : (unit -> unit) = closure3()                            │

00:00:27 #2068 [Verbose] > │             v39 ()                                                           │

00:00:27 #2069 [Verbose] > │             #endif                                                           │

00:00:27 #2070 [Verbose] > │             let v40 : (unit -> System.Diagnostics.Stopwatch) =               │

00:00:27 #2071 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:00:27 #2072 [Verbose] > │             let v41 : System.Diagnostics.Stopwatch = v40 ()                  │

00:00:27 #2073 [Verbose] > │             v41.Start ()                                                     │

00:00:27 #2074 [Verbose] > │             let v42 : int64 = v41.ElapsedMilliseconds                        │

00:00:27 #2075 [Verbose] > │             let v43 : (int32 []) = Array.zeroCreate<int32> (2000001)         │

00:00:27 #2076 [Verbose] > │             let v44 : Mut1 = {l0 = 0} : Mut1                                 │

00:00:27 #2077 [Verbose] > │             while method8(v44) do                                            │

00:00:27 #2078 [Verbose] > │                 let v46 : int32 = v44.l0                                     │

00:00:27 #2079 [Verbose] > │                 v43.[int v46] <- v46                                         │

00:00:27 #2080 [Verbose] > │                 let v47 : int32 = v46 + 1                                    │

00:00:27 #2081 [Verbose] > │                 v44.l0 <- v47                                                │

00:00:27 #2082 [Verbose] > │                 ()                                                           │

00:00:27 #2083 [Verbose] > │             let v48 : (int32 -> float) = closure4(v20, v37)                  │

00:00:27 #2084 [Verbose] > │             let v49 : (float []) = v43 |> Array.Parallel.map v48             │

00:00:27 #2085 [Verbose] > │             let v50 : int32 = v49.Length                                     │

00:00:27 #2086 [Verbose] > │             let v51 : int32 = v50 - 1                                        │

00:00:27 #2087 [Verbose] > │             let v52 : float = v49.[int v51]                                  │

00:00:27 #2088 [Verbose] > │             let v53 : int64 = v41.ElapsedMilliseconds                        │

00:00:27 #2089 [Verbose] > │             let v54 : int64 = v53 - v42                                      │

00:00:27 #2090 [Verbose] > │             let v55 : string = $"Test case {v35 + 1}. {v36}. Time: {v54}  "  │

00:00:27 #2091 [Verbose] > │             System.Console.WriteLine v55                                     │

00:00:27 #2092 [Verbose] > │             v31.[int v34] <- struct (v52, v54)                               │

00:00:27 #2093 [Verbose] > │             let v56 : uint64 = v34 + 1UL                                     │

00:00:27 #2094 [Verbose] > │             v32.l0 <- v56                                                    │

00:00:27 #2095 [Verbose] > │             ()                                                               │

00:00:27 #2096 [Verbose] > │         let v57 : uint64 = System.Convert.ToUInt64 v31.Length                │

00:00:27 #2097 [Verbose] > │         let v58 : (float []) = Array.zeroCreate<float>                       │

00:00:27 #2098 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:27 #2099 [Verbose] > │         let v59 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2100 [Verbose] > │         while method4(v57, v59) do                                           │

00:00:27 #2101 [Verbose] > │             let v61 : uint64 = v59.l0                                        │

00:00:27 #2102 [Verbose] > │             let struct (v62 : float, v63 : int64) = v31.[int v61]            │

00:00:27 #2103 [Verbose] > │             v58.[int v61] <- v62                                             │

00:00:27 #2104 [Verbose] > │             let v64 : uint64 = v61 + 1UL                                     │

00:00:27 #2105 [Verbose] > │             v59.l0 <- v64                                                    │

00:00:27 #2106 [Verbose] > │             ()                                                               │

00:00:27 #2107 [Verbose] > │         let v65 : uint64 = System.Convert.ToUInt64 v58.Length                │

00:00:27 #2108 [Verbose] > │         let v66 : bool = v65 <= 1UL                                          │

00:00:27 #2109 [Verbose] > │         if v66 then                                                          │

00:00:27 #2110 [Verbose] > │             ()                                                               │

00:00:27 #2111 [Verbose] > │         else                                                                 │

00:00:27 #2112 [Verbose] > │             let v67 : float = v58.[int 0UL]                                  │

00:00:27 #2113 [Verbose] > │             let v68 : uint64 = 0UL                                           │

00:00:27 #2114 [Verbose] > │             let v69 : bool = method9(v67, v58, v68)                          │

00:00:27 #2115 [Verbose] > │             if v69 then                                                      │

00:00:27 #2116 [Verbose] > │                 ()                                                           │

00:00:27 #2117 [Verbose] > │             else                                                             │

00:00:27 #2118 [Verbose] > │                 let v70 : string = $"Challenge error: {v58}"                 │

00:00:27 #2119 [Verbose] > │                 failwith<unit> v70                                           │

00:00:27 #2120 [Verbose] > │         let v71 : string = $"%A{v21}"                                        │

00:00:27 #2121 [Verbose] > │         let v72 : (float []) = Array.zeroCreate<float>                       │

00:00:27 #2122 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:27 #2123 [Verbose] > │         let v73 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2124 [Verbose] > │         while method4(v57, v73) do                                           │

00:00:27 #2125 [Verbose] > │             let v75 : uint64 = v73.l0                                        │

00:00:27 #2126 [Verbose] > │             let struct (v76 : float, v77 : int64) = v31.[int v75]            │

00:00:27 #2127 [Verbose] > │             v72.[int v75] <- v76                                             │

00:00:27 #2128 [Verbose] > │             let v78 : uint64 = v75 + 1UL                                     │

00:00:27 #2129 [Verbose] > │             v73.l0 <- v78                                                    │

00:00:27 #2130 [Verbose] > │             ()                                                               │

00:00:27 #2131 [Verbose] > │         let v79 : float = v72.[int 0UL]                                      │

00:00:27 #2132 [Verbose] > │         let v80 : string = $"%A{v79}"                                        │

00:00:27 #2133 [Verbose] > │         let v81 : (int64 []) = Array.zeroCreate<int64>                       │

00:00:27 #2134 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:27 #2135 [Verbose] > │         let v82 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2136 [Verbose] > │         while method4(v57, v82) do                                           │

00:00:27 #2137 [Verbose] > │             let v84 : uint64 = v82.l0                                        │

00:00:27 #2138 [Verbose] > │             let struct (v85 : float, v86 : int64) = v31.[int v84]            │

00:00:27 #2139 [Verbose] > │             v81.[int v84] <- v86                                             │

00:00:27 #2140 [Verbose] > │             let v87 : uint64 = v84 + 1UL                                     │

00:00:27 #2141 [Verbose] > │             v82.l0 <- v87                                                    │

00:00:27 #2142 [Verbose] > │             ()                                                               │

00:00:27 #2143 [Verbose] > │         v16.[int v19] <- struct (v71, v22, v80, v81)                         │

00:00:27 #2144 [Verbose] > │         let v88 : uint64 = v19 + 1UL                                         │

00:00:27 #2145 [Verbose] > │         v17.l0 <- v88                                                        │

00:00:27 #2146 [Verbose] > │         ()                                                                   │

00:00:27 #2147 [Verbose] > │     let v89 : uint64 = System.Convert.ToUInt64 v16.Length                    │

00:00:27 #2148 [Verbose] > │     let v90 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │

00:00:27 #2149 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:27 #2150 [Verbose] > │     let v91 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:27 #2151 [Verbose] > │     while method4(v89, v91) do                                               │

00:00:27 #2152 [Verbose] > │         let v93 : uint64 = v91.l0                                            │

00:00:27 #2153 [Verbose] > │         let struct (v94 : string, v95 : string, v96 : string, v97 : (int64 [ │

00:00:27 #2154 [Verbose] > │ ])) = v16.[int v93]                                                          │

00:00:27 #2155 [Verbose] > │         let v98 : uint64 = System.Convert.ToUInt64 v97.Length                │

00:00:27 #2156 [Verbose] > │         let v99 : UH3 = UH3_1                                                │

00:00:27 #2157 [Verbose] > │         let v100 : Mut2 = {l0 = 0UL; l1 = v99; l2 = 0L} : Mut2               │

00:00:27 #2158 [Verbose] > │         while method10(v98, v100) do                                         │

00:00:27 #2159 [Verbose] > │             let v102 : uint64 = v100.l0                                      │

00:00:27 #2160 [Verbose] > │             let struct (v103 : UH3, v104 : int64) = v100.l1, v100.l2         │

00:00:27 #2161 [Verbose] > │             let v105 : int64 = v97.[int v102]                                │

00:00:27 #2162 [Verbose] > │             let v106 : int64 = v104 + 1L                                     │

00:00:27 #2163 [Verbose] > │             let v107 : uint64 = v102 + 1UL                                   │

00:00:27 #2164 [Verbose] > │             let v108 : UH3 = UH3_0(v104, v105, v103)                         │

00:00:27 #2165 [Verbose] > │             v100.l0 <- v107                                                  │

00:00:27 #2166 [Verbose] > │             v100.l1 <- v108                                                  │

00:00:27 #2167 [Verbose] > │             v100.l2 <- v106                                                  │

00:00:27 #2168 [Verbose] > │             ()                                                               │

00:00:27 #2169 [Verbose] > │         let struct (v109 : UH3, v110 : int64) = v100.l1, v100.l2             │

00:00:27 #2170 [Verbose] > │         let v111 : UH3 = UH3_1                                               │

00:00:27 #2171 [Verbose] > │         let v112 : UH3 = method11(v109, v111)                                │

00:00:27 #2172 [Verbose] > │         let v113 : (struct (int64 * int64) []) = method12(v112)              │

00:00:27 #2173 [Verbose] > │         let v114 : int32 = v113.Length                                       │

00:00:27 #2174 [Verbose] > │         let v115 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:00:27 #2175 [Verbose] > │ (int64 * int64)> (v114)                                                      │

00:00:27 #2176 [Verbose] > │         let v116 : Mut1 = {l0 = 0} : Mut1                                    │

00:00:27 #2177 [Verbose] > │         while method15(v114, v116) do                                        │

00:00:27 #2178 [Verbose] > │             let v118 : int32 = v116.l0                                       │

00:00:27 #2179 [Verbose] > │             let struct (v119 : int64, v120 : int64) = v113.[int v118]        │

00:00:27 #2180 [Verbose] > │             let v121 : int64 = v119 + 1L                                     │

00:00:27 #2181 [Verbose] > │             v115.[int v118] <- struct (v121, v120)                           │

00:00:27 #2182 [Verbose] > │             let v122 : int32 = v118 + 1                                      │

00:00:27 #2183 [Verbose] > │             v116.l0 <- v122                                                  │

00:00:27 #2184 [Verbose] > │             ()                                                               │

00:00:27 #2185 [Verbose] > │         let v123 : (struct (int64 * int64) -> int64) = closure5()            │

00:00:27 #2186 [Verbose] > │         let v124 : (struct (int64 * int64) []) = v115 |> Array.sortBy v123   │

00:00:27 #2187 [Verbose] > │         let struct (v125 : int64, v126 : int64) = v124.[int 0]               │

00:00:27 #2188 [Verbose] > │         let v127 : string = $"%A{struct (v125, v126)}"                       │

00:00:27 #2189 [Verbose] > │         let v128 : bool = v94 = v96                                          │

00:00:27 #2190 [Verbose] > │         let v133 : US0 =                                                     │

00:00:27 #2191 [Verbose] > │             if v128 then                                                     │

00:00:27 #2192 [Verbose] > │                 let v129 : System.ConsoleColor =                             │

00:00:27 #2193 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:00:27 #2194 [Verbose] > │                 US0_1(v129)                                                  │

00:00:27 #2195 [Verbose] > │             else                                                             │

00:00:27 #2196 [Verbose] > │                 let v131 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:00:27 #2197 [Verbose] > │                 US0_1(v131)                                                  │

00:00:27 #2198 [Verbose] > │         let v134 : UH2 = UH2_1                                               │

00:00:27 #2199 [Verbose] > │         let v135 : UH2 = UH2_0(v127, v134)                                   │

00:00:27 #2200 [Verbose] > │         let v136 : UH2 = UH2_0(v96, v135)                                    │

00:00:27 #2201 [Verbose] > │         let v137 : UH2 = UH2_0(v94, v136)                                    │

00:00:27 #2202 [Verbose] > │         let v138 : UH2 = UH2_0(v95, v137)                                    │

00:00:27 #2203 [Verbose] > │         v90.[int v93] <- struct (v138, v133)                                 │

00:00:27 #2204 [Verbose] > │         let v139 : uint64 = v93 + 1UL                                        │

00:00:27 #2205 [Verbose] > │         v91.l0 <- v139                                                       │

00:00:27 #2206 [Verbose] > │         ()                                                                   │

00:00:27 #2207 [Verbose] > │     let v140 : string = "Input"                                              │

00:00:27 #2208 [Verbose] > │     let v141 : string = "Expected"                                           │

00:00:27 #2209 [Verbose] > │     let v142 : string = "Result"                                             │

00:00:27 #2210 [Verbose] > │     let v143 : string = "Best"                                               │

00:00:27 #2211 [Verbose] > │     let v144 : UH2 = UH2_1                                                   │

00:00:27 #2212 [Verbose] > │     let v145 : UH2 = UH2_0(v143, v144)                                       │

00:00:27 #2213 [Verbose] > │     let v146 : UH2 = UH2_0(v142, v145)                                       │

00:00:27 #2214 [Verbose] > │     let v147 : UH2 = UH2_0(v141, v146)                                       │

00:00:27 #2215 [Verbose] > │     let v148 : UH2 = UH2_0(v140, v147)                                       │

00:00:27 #2216 [Verbose] > │     let v149 : US0 = US0_0                                                   │

00:00:27 #2217 [Verbose] > │     let v150 : string = "---"                                                │

00:00:27 #2218 [Verbose] > │     let v151 : UH2 = UH2_1                                                   │

00:00:27 #2219 [Verbose] > │     let v152 : UH2 = UH2_0(v150, v151)                                       │

00:00:27 #2220 [Verbose] > │     let v153 : UH2 = UH2_0(v150, v152)                                       │

00:00:27 #2221 [Verbose] > │     let v154 : UH2 = UH2_0(v150, v153)                                       │

00:00:27 #2222 [Verbose] > │     let v155 : UH2 = UH2_0(v150, v154)                                       │

00:00:27 #2223 [Verbose] > │     let v156 : US0 = US0_0                                                   │

00:00:27 #2224 [Verbose] > │     let v157 : UH4 = UH4_1                                                   │

00:00:27 #2225 [Verbose] > │     let v158 : UH4 = UH4_0(v155, v156, v157)                                 │

00:00:27 #2226 [Verbose] > │     let v159 : UH4 = UH4_0(v148, v149, v158)                                 │

00:00:27 #2227 [Verbose] > │     let v160 : (struct (UH2 * US0) []) = method16(v159)                      │

00:00:27 #2228 [Verbose] > │     let v161 : uint64 = System.Convert.ToUInt64 v160.Length                  │

00:00:27 #2229 [Verbose] > │     let v162 : uint64 = System.Convert.ToUInt64 v90.Length                   │

00:00:27 #2230 [Verbose] > │     let v163 : uint64 = v161 + v162                                          │

00:00:27 #2231 [Verbose] > │     let v164 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:27 #2232 [Verbose] > │ US0)> (System.Convert.ToInt32(v163))                                         │

00:00:27 #2233 [Verbose] > │     let v165 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2234 [Verbose] > │     while method4(v163, v165) do                                             │

00:00:27 #2235 [Verbose] > │         let v167 : uint64 = v165.l0                                          │

00:00:27 #2236 [Verbose] > │         let v168 : bool = v167 < v161                                        │

00:00:27 #2237 [Verbose] > │         let struct (v174 : UH2, v175 : US0) =                                │

00:00:27 #2238 [Verbose] > │             if v168 then                                                     │

00:00:27 #2239 [Verbose] > │                 let struct (v169 : UH2, v170 : US0) = v160.[int v167]        │

00:00:27 #2240 [Verbose] > │                 struct (v169, v170)                                          │

00:00:27 #2241 [Verbose] > │             else                                                             │

00:00:27 #2242 [Verbose] > │                 let v171 : uint64 = v167 - v161                              │

00:00:27 #2243 [Verbose] > │                 let struct (v172 : UH2, v173 : US0) = v90.[int v171]         │

00:00:27 #2244 [Verbose] > │                 struct (v172, v173)                                          │

00:00:27 #2245 [Verbose] > │         v164.[int v167] <- struct (v174, v175)                               │

00:00:27 #2246 [Verbose] > │         let v176 : uint64 = v167 + 1UL                                       │

00:00:27 #2247 [Verbose] > │         v165.l0 <- v176                                                      │

00:00:27 #2248 [Verbose] > │         ()                                                                   │

00:00:27 #2249 [Verbose] > │     let v177 : uint64 = System.Convert.ToUInt64 v164.Length                  │

00:00:27 #2250 [Verbose] > │     let v178 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:00:27 #2251 [Verbose] > │ (System.Convert.ToInt32(v177))                                               │

00:00:27 #2252 [Verbose] > │     let v179 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2253 [Verbose] > │     while method4(v177, v179) do                                             │

00:00:27 #2254 [Verbose] > │         let v181 : uint64 = v179.l0                                          │

00:00:27 #2255 [Verbose] > │         let struct (v182 : UH2, v183 : US0) = v164.[int v181]                │

00:00:27 #2256 [Verbose] > │         let v184 : (string []) = method19(v182)                              │

00:00:27 #2257 [Verbose] > │         v178.[int v181] <- v184                                              │

00:00:27 #2258 [Verbose] > │         let v185 : uint64 = v181 + 1UL                                       │

00:00:27 #2259 [Verbose] > │         v179.l0 <- v185                                                      │

00:00:27 #2260 [Verbose] > │         ()                                                                   │

00:00:27 #2261 [Verbose] > │     let v186 : ((string []) []) = v178 |> Array.transpose                    │

00:00:27 #2262 [Verbose] > │     let v187 : uint64 = System.Convert.ToUInt64 v186.Length                  │

00:00:27 #2263 [Verbose] > │     let v188 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:27 #2264 [Verbose] > │ (System.Convert.ToInt32(v187))                                               │

00:00:27 #2265 [Verbose] > │     let v189 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2266 [Verbose] > │     while method4(v187, v189) do                                             │

00:00:27 #2267 [Verbose] > │         let v191 : uint64 = v189.l0                                          │

00:00:27 #2268 [Verbose] > │         let v192 : (string []) = v186.[int v191]                             │

00:00:27 #2269 [Verbose] > │         let v193 : uint64 = System.Convert.ToUInt64 v192.Length              │

00:00:27 #2270 [Verbose] > │         let v194 : (int64 []) = Array.zeroCreate<int64>                      │

00:00:27 #2271 [Verbose] > │ (System.Convert.ToInt32(v193))                                               │

00:00:27 #2272 [Verbose] > │         let v195 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:27 #2273 [Verbose] > │         while method4(v193, v195) do                                         │

00:00:27 #2274 [Verbose] > │             let v197 : uint64 = v195.l0                                      │

00:00:27 #2275 [Verbose] > │             let v198 : string = v192.[int v197]                              │

00:00:27 #2276 [Verbose] > │             let v199 : int64 = System.Convert.ToInt64 v198.Length            │

00:00:27 #2277 [Verbose] > │             v194.[int v197] <- v199                                          │

00:00:27 #2278 [Verbose] > │             let v200 : uint64 = v197 + 1UL                                   │

00:00:27 #2279 [Verbose] > │             v195.l0 <- v200                                                  │

00:00:27 #2280 [Verbose] > │             ()                                                               │

00:00:27 #2281 [Verbose] > │         let v201 : (int64 []) = v194 |> Array.sortDescending                 │

00:00:27 #2282 [Verbose] > │         let v202 : int64 option = v201 |> Array.tryItem 0                    │

00:00:27 #2283 [Verbose] > │         let v203 : (int64 -> US1) = closure6()                               │

00:00:27 #2284 [Verbose] > │         let v204 : US1 = US1_0                                               │

00:00:27 #2285 [Verbose] > │         let v205 : US1 = v202 |> Option.map v203 |> Option.defaultValue v204 │

00:00:27 #2286 [Verbose] > │         let v208 : int64 =                                                   │

00:00:27 #2287 [Verbose] > │             match v205 with                                                  │

00:00:27 #2288 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:27 #2289 [Verbose] > │                 0L                                                           │

00:00:27 #2290 [Verbose] > │             | US1_1(v206) -> (* Some *)                                      │

00:00:27 #2291 [Verbose] > │                 v206                                                         │

00:00:27 #2292 [Verbose] > │         v188.[int v191] <- v208                                              │

00:00:27 #2293 [Verbose] > │         let v209 : uint64 = v191 + 1UL                                       │

00:00:27 #2294 [Verbose] > │         v189.l0 <- v209                                                      │

00:00:27 #2295 [Verbose] > │         ()                                                                   │

00:00:27 #2296 [Verbose] > │     let v210 : uint64 = System.Convert.ToUInt64 v188.Length                  │

00:00:27 #2297 [Verbose] > │     let v211 : UH5 = UH5_1                                                   │

00:00:27 #2298 [Verbose] > │     let v212 : Mut3 = {l0 = 0UL; l1 = v211; l2 = 0} : Mut3                   │

00:00:27 #2299 [Verbose] > │     while method22(v210, v212) do                                            │

00:00:27 #2300 [Verbose] > │         let v214 : uint64 = v212.l0                                          │

00:00:27 #2301 [Verbose] > │         let struct (v215 : UH5, v216 : int32) = v212.l1, v212.l2             │

00:00:27 #2302 [Verbose] > │         let v217 : int64 = v188.[int v214]                                   │

00:00:27 #2303 [Verbose] > │         let v218 : int32 = v216 + 1                                          │

00:00:27 #2304 [Verbose] > │         let v219 : uint64 = v214 + 1UL                                       │

00:00:27 #2305 [Verbose] > │         let v220 : UH5 = UH5_0(v216, v217, v215)                             │

00:00:27 #2306 [Verbose] > │         v212.l0 <- v219                                                      │

00:00:27 #2307 [Verbose] > │         v212.l1 <- v220                                                      │

00:00:27 #2308 [Verbose] > │         v212.l2 <- v218                                                      │

00:00:27 #2309 [Verbose] > │         ()                                                                   │

00:00:27 #2310 [Verbose] > │     let struct (v221 : UH5, v222 : int32) = v212.l1, v212.l2                 │

00:00:27 #2311 [Verbose] > │     let v223 : UH5 = UH5_1                                                   │

00:00:27 #2312 [Verbose] > │     let v224 : UH5 = method23(v221, v223)                                    │

00:00:27 #2313 [Verbose] > │     let v225 : (struct (int32 * int64) []) = method24(v224)                  │

00:00:27 #2314 [Verbose] > │     let v226 : Map<int32, int64> = v225 |> Array.map (fun (struct (a, b)) -> │

00:00:27 #2315 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:00:27 #2316 [Verbose] > │     let v227 : (struct ((string []) * US0) []) = Array.zeroCreate<struct     │

00:00:27 #2317 [Verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v177))                          │

00:00:27 #2318 [Verbose] > │     let v228 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2319 [Verbose] > │     while method4(v177, v228) do                                             │

00:00:27 #2320 [Verbose] > │         let v230 : uint64 = v228.l0                                          │

00:00:27 #2321 [Verbose] > │         let struct (v231 : UH2, v232 : US0) = v164.[int v230]                │

00:00:27 #2322 [Verbose] > │         let v233 : UH6 = UH6_1                                               │

00:00:27 #2323 [Verbose] > │         let v234 : int32 = 0                                                 │

00:00:27 #2324 [Verbose] > │         let struct (v235 : UH6, v236 : int32) = method27(v231, v233, v234)   │

00:00:27 #2325 [Verbose] > │         let v237 : UH6 = UH6_1                                               │

00:00:27 #2326 [Verbose] > │         let v238 : UH6 = method28(v235, v237)                                │

00:00:27 #2327 [Verbose] > │         let v239 : UH2 = UH2_1                                               │

00:00:27 #2328 [Verbose] > │         let v240 : UH2 = method29(v226, v238, v239)                          │

00:00:27 #2329 [Verbose] > │         let v241 : (string []) = method30(v240)                              │

00:00:27 #2330 [Verbose] > │         v227.[int v230] <- struct (v241, v232)                               │

00:00:27 #2331 [Verbose] > │         let v242 : uint64 = v230 + 1UL                                       │

00:00:27 #2332 [Verbose] > │         v228.l0 <- v242                                                      │

00:00:27 #2333 [Verbose] > │         ()                                                                   │

00:00:27 #2334 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2335 [Verbose] > │     let v243 : uint64 = System.Convert.ToUInt64 v227.Length                  │

00:00:27 #2336 [Verbose] > │     let v244 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2337 [Verbose] > │     while method4(v243, v244) do                                             │

00:00:27 #2338 [Verbose] > │         let v246 : uint64 = v244.l0                                          │

00:00:27 #2339 [Verbose] > │         let struct (v247 : (string []), v248 : US0) = v227.[int v246]        │

00:00:27 #2340 [Verbose] > │         match v248 with                                                      │

00:00:27 #2341 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:27 #2342 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:27 #2343 [Verbose] > │             let v252 : (unit -> unit) = closure7()                           │

00:00:27 #2344 [Verbose] > │             v252 ()                                                          │

00:00:27 #2345 [Verbose] > │             #else                                                            │

00:00:27 #2346 [Verbose] > │             let v253 : (unit -> unit) = closure8()                           │

00:00:27 #2347 [Verbose] > │             v253 ()                                                          │

00:00:27 #2348 [Verbose] > │             #endif                                                           │

00:00:27 #2349 [Verbose] > │             ()                                                               │

00:00:27 #2350 [Verbose] > │         | US0_1(v249) -> (* Some *)                                          │

00:00:27 #2351 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:27 #2352 [Verbose] > │             let v250 : (unit -> unit) = closure9()                           │

00:00:27 #2353 [Verbose] > │             v250 ()                                                          │

00:00:27 #2354 [Verbose] > │             #else                                                            │

00:00:27 #2355 [Verbose] > │             let v251 : (unit -> unit) = closure10(v249)                      │

00:00:27 #2356 [Verbose] > │             v251 ()                                                          │

00:00:27 #2357 [Verbose] > │             #endif                                                           │

00:00:27 #2358 [Verbose] > │             ()                                                               │

00:00:27 #2359 [Verbose] > │         let v254 : string = "\t| "                                           │

00:00:27 #2360 [Verbose] > │         let v255 : string = System.String.Join (v254, v247)                  │

00:00:27 #2361 [Verbose] > │         System.Console.WriteLine v255                                        │

00:00:27 #2362 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:00:27 #2363 [Verbose] > │         let v256 : (unit -> unit) = closure7()                               │

00:00:27 #2364 [Verbose] > │         v256 ()                                                              │

00:00:27 #2365 [Verbose] > │         #else                                                                │

00:00:27 #2366 [Verbose] > │         let v257 : (unit -> unit) = closure8()                               │

00:00:27 #2367 [Verbose] > │         v257 ()                                                              │

00:00:27 #2368 [Verbose] > │         #endif                                                               │

00:00:27 #2369 [Verbose] > │         let v258 : uint64 = v246 + 1UL                                       │

00:00:27 #2370 [Verbose] > │         v244.l0 <- v258                                                      │

00:00:27 #2371 [Verbose] > │         ()                                                                   │

00:00:27 #2372 [Verbose] > │     let v259 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:00:27 #2373 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:27 #2374 [Verbose] > │     let v260 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2375 [Verbose] > │     while method4(v89, v260) do                                              │

00:00:27 #2376 [Verbose] > │         let v262 : uint64 = v260.l0                                          │

00:00:27 #2377 [Verbose] > │         let struct (v263 : string, v264 : string, v265 : string, v266 :      │

00:00:27 #2378 [Verbose] > │ (int64 [])) = v16.[int v262]                                                 │

00:00:27 #2379 [Verbose] > │         let v267 : (int64 -> float) = float                                  │

00:00:27 #2380 [Verbose] > │         let v268 : uint64 = System.Convert.ToUInt64 v266.Length              │

00:00:27 #2381 [Verbose] > │         let v269 : (float []) = Array.zeroCreate<float>                      │

00:00:27 #2382 [Verbose] > │ (System.Convert.ToInt32(v268))                                               │

00:00:27 #2383 [Verbose] > │         let v270 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:27 #2384 [Verbose] > │         while method4(v268, v270) do                                         │

00:00:27 #2385 [Verbose] > │             let v272 : uint64 = v270.l0                                      │

00:00:27 #2386 [Verbose] > │             let v273 : int64 = v266.[int v272]                               │

00:00:27 #2387 [Verbose] > │             let v274 : float = v267 v273                                     │

00:00:27 #2388 [Verbose] > │             v269.[int v272] <- v274                                          │

00:00:27 #2389 [Verbose] > │             let v275 : uint64 = v272 + 1UL                                   │

00:00:27 #2390 [Verbose] > │             v270.l0 <- v275                                                  │

00:00:27 #2391 [Verbose] > │             ()                                                               │

00:00:27 #2392 [Verbose] > │         v259.[int v262] <- v269                                              │

00:00:27 #2393 [Verbose] > │         let v276 : uint64 = v262 + 1UL                                       │

00:00:27 #2394 [Verbose] > │         v260.l0 <- v276                                                      │

00:00:27 #2395 [Verbose] > │         ()                                                                   │

00:00:27 #2396 [Verbose] > │     let v277 : ((float []) []) = v259 |> Array.transpose                     │

00:00:27 #2397 [Verbose] > │     let v278 : uint64 = System.Convert.ToUInt64 v277.Length                  │

00:00:27 #2398 [Verbose] > │     let v279 : (float []) = Array.zeroCreate<float>                          │

00:00:27 #2399 [Verbose] > │ (System.Convert.ToInt32(v278))                                               │

00:00:27 #2400 [Verbose] > │     let v280 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2401 [Verbose] > │     while method4(v278, v280) do                                             │

00:00:27 #2402 [Verbose] > │         let v282 : uint64 = v280.l0                                          │

00:00:27 #2403 [Verbose] > │         let v283 : (float []) = v277.[int v282]                              │

00:00:27 #2404 [Verbose] > │         let v284 : float = v283 |> Array.average                             │

00:00:27 #2405 [Verbose] > │         v279.[int v282] <- v284                                              │

00:00:27 #2406 [Verbose] > │         let v285 : uint64 = v282 + 1UL                                       │

00:00:27 #2407 [Verbose] > │         v280.l0 <- v285                                                      │

00:00:27 #2408 [Verbose] > │         ()                                                                   │

00:00:27 #2409 [Verbose] > │     let v286 : (float -> int64) = int64                                      │

00:00:27 #2410 [Verbose] > │     let v287 : uint64 = System.Convert.ToUInt64 v279.Length                  │

00:00:27 #2411 [Verbose] > │     let v288 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:27 #2412 [Verbose] > │ (System.Convert.ToInt32(v287))                                               │

00:00:27 #2413 [Verbose] > │     let v289 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2414 [Verbose] > │     while method4(v287, v289) do                                             │

00:00:27 #2415 [Verbose] > │         let v291 : uint64 = v289.l0                                          │

00:00:27 #2416 [Verbose] > │         let v292 : float = v279.[int v291]                                   │

00:00:27 #2417 [Verbose] > │         let v293 : int64 = v286 v292                                         │

00:00:27 #2418 [Verbose] > │         v288.[int v291] <- v293                                              │

00:00:27 #2419 [Verbose] > │         let v294 : uint64 = v291 + 1UL                                       │

00:00:27 #2420 [Verbose] > │         v289.l0 <- v294                                                      │

00:00:27 #2421 [Verbose] > │         ()                                                                   │

00:00:27 #2422 [Verbose] > │     let v295 : uint64 = System.Convert.ToUInt64 v288.Length                  │

00:00:27 #2423 [Verbose] > │     let v296 : UH5 = UH5_1                                                   │

00:00:27 #2424 [Verbose] > │     let v297 : Mut3 = {l0 = 0UL; l1 = v296; l2 = 0} : Mut3                   │

00:00:27 #2425 [Verbose] > │     while method22(v295, v297) do                                            │

00:00:27 #2426 [Verbose] > │         let v299 : uint64 = v297.l0                                          │

00:00:27 #2427 [Verbose] > │         let struct (v300 : UH5, v301 : int32) = v297.l1, v297.l2             │

00:00:27 #2428 [Verbose] > │         let v302 : int64 = v288.[int v299]                                   │

00:00:27 #2429 [Verbose] > │         let v303 : int32 = v301 + 1                                          │

00:00:27 #2430 [Verbose] > │         let v304 : uint64 = v299 + 1UL                                       │

00:00:27 #2431 [Verbose] > │         let v305 : UH5 = UH5_0(v301, v302, v300)                             │

00:00:27 #2432 [Verbose] > │         v297.l0 <- v304                                                      │

00:00:27 #2433 [Verbose] > │         v297.l1 <- v305                                                      │

00:00:27 #2434 [Verbose] > │         v297.l2 <- v303                                                      │

00:00:27 #2435 [Verbose] > │         ()                                                                   │

00:00:27 #2436 [Verbose] > │     let struct (v306 : UH5, v307 : int32) = v297.l1, v297.l2                 │

00:00:27 #2437 [Verbose] > │     let v308 : UH5 = UH5_1                                                   │

00:00:27 #2438 [Verbose] > │     let v309 : UH5 = method23(v306, v308)                                    │

00:00:27 #2439 [Verbose] > │     let v310 : (struct (int32 * int64) []) = method33(v309)                  │

00:00:27 #2440 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2441 [Verbose] > │     let v311 : string = "Average Ranking  "                                  │

00:00:27 #2442 [Verbose] > │     System.Console.WriteLine v311                                            │

00:00:27 #2443 [Verbose] > │     let v312 : (struct (int32 * int64) -> int64) = closure11()               │

00:00:27 #2444 [Verbose] > │     let v313 : (struct (int32 * int64) []) = v310 |> Array.sortBy v312       │

00:00:27 #2445 [Verbose] > │     let v314 : uint64 = System.Convert.ToUInt64 v313.Length                  │

00:00:27 #2446 [Verbose] > │     let v315 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2447 [Verbose] > │     while method4(v314, v315) do                                             │

00:00:27 #2448 [Verbose] > │         let v317 : uint64 = v315.l0                                          │

00:00:27 #2449 [Verbose] > │         let struct (v318 : int32, v319 : int64) = v313.[int v317]            │

00:00:27 #2450 [Verbose] > │         let v320 : string = $"Test case %d{v318 + 1}. Average Time: %A{v319} │

00:00:27 #2451 [Verbose] > │ "                                                                            │

00:00:27 #2452 [Verbose] > │         System.Console.WriteLine v320                                        │

00:00:27 #2453 [Verbose] > │         let v321 : uint64 = v317 + 1UL                                       │

00:00:27 #2454 [Verbose] > │         v315.l0 <- v321                                                      │

00:00:27 #2455 [Verbose] > │         ()                                                                   │

00:00:27 #2456 [Verbose] > │     ()                                                                       │

00:00:27 #2457 [Verbose] > │ and method0 () : unit =                                                      │

00:00:27 #2458 [Verbose] > │     let v0 : (unit -> unit) = closure0()                                     │

00:00:27 #2459 [Verbose] > │     let v1 : string = nameof v0                                              │

00:00:27 #2460 [Verbose] > │     let v2 : string = ""                                                     │

00:00:27 #2461 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2462 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2463 [Verbose] > │     let v3 : string = $"Test: {v1}"                                          │

00:00:27 #2464 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:27 #2465 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:27 #2466 [Verbose] > │     let v5 : float = 1.0                                                     │

00:00:27 #2467 [Verbose] > │     let v6 : float = 2.0                                                     │

00:00:27 #2468 [Verbose] > │     let v7 : float = 3.0                                                     │

00:00:27 #2469 [Verbose] > │     let v8 : float = 5.0                                                     │

00:00:27 #2470 [Verbose] > │     let v9 : float = 6.0                                                     │

00:00:27 #2471 [Verbose] > │     let v10 : UH0 = UH0_1                                                    │

00:00:27 #2472 [Verbose] > │     let v11 : UH0 = UH0_0(v8, v9, v10)                                       │

00:00:27 #2473 [Verbose] > │     let v12 : UH0 = UH0_0(v6, v7, v11)                                       │

00:00:27 #2474 [Verbose] > │     let v13 : UH0 = UH0_0(v4, v5, v12)                                       │

00:00:27 #2475 [Verbose] > │     let v14 : (struct (float * float) []) = method1(v13)                     │

00:00:27 #2476 [Verbose] > │     let v15 : uint64 = System.Convert.ToUInt64 v14.Length                    │

00:00:27 #2477 [Verbose] > │     let v16 : (struct (string * string * string * (int64 [])) []) =          │

00:00:27 #2478 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:00:27 #2479 [Verbose] > │ (System.Convert.ToInt32(v15))                                                │

00:00:27 #2480 [Verbose] > │     let v17 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:27 #2481 [Verbose] > │     while method4(v15, v17) do                                               │

00:00:27 #2482 [Verbose] > │         let v19 : uint64 = v17.l0                                            │

00:00:27 #2483 [Verbose] > │         let struct (v20 : float, v21 : float) = v14.[int v19]                │

00:00:27 #2484 [Verbose] > │         let v22 : string = $"%A{v20}"                                        │

00:00:27 #2485 [Verbose] > │         System.Console.WriteLine v2                                          │

00:00:27 #2486 [Verbose] > │         let v23 : string = $"Solution: {v22}  "                              │

00:00:27 #2487 [Verbose] > │         System.Console.WriteLine v23                                         │

00:00:27 #2488 [Verbose] > │         let v24 : int32 = 0                                                  │

00:00:27 #2489 [Verbose] > │         let v25 : string = "A"                                               │

00:00:27 #2490 [Verbose] > │         let v26 : (float -> float) = closure1()                              │

00:00:27 #2491 [Verbose] > │         let v27 : UH1 = UH1_1                                                │

00:00:27 #2492 [Verbose] > │         let v28 : UH1 = UH1_0(v24, v25, v26, v27)                            │

00:00:27 #2493 [Verbose] > │         let v29 : (struct (int32 * string * (float -> float)) []) =          │

00:00:27 #2494 [Verbose] > │ method5(v28)                                                                 │

00:00:27 #2495 [Verbose] > │         let v30 : uint64 = System.Convert.ToUInt64 v29.Length                │

00:00:27 #2496 [Verbose] > │         let v31 : (struct (float * int64) []) = Array.zeroCreate<struct      │

00:00:27 #2497 [Verbose] > │ (float * int64)> (System.Convert.ToInt32(v30))                               │

00:00:27 #2498 [Verbose] > │         let v32 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2499 [Verbose] > │         while method4(v30, v32) do                                           │

00:00:27 #2500 [Verbose] > │             let v34 : uint64 = v32.l0                                        │

00:00:27 #2501 [Verbose] > │             let struct (v35 : int32, v36 : string, v37 : (float -> float)) = │

00:00:27 #2502 [Verbose] > │ v29.[int v34]                                                                │

00:00:27 #2503 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:27 #2504 [Verbose] > │             let v38 : (unit -> unit) = closure2()                            │

00:00:27 #2505 [Verbose] > │             v38 ()                                                           │

00:00:27 #2506 [Verbose] > │             #else                                                            │

00:00:27 #2507 [Verbose] > │             let v39 : (unit -> unit) = closure3()                            │

00:00:27 #2508 [Verbose] > │             v39 ()                                                           │

00:00:27 #2509 [Verbose] > │             #endif                                                           │

00:00:27 #2510 [Verbose] > │             let v40 : (unit -> System.Diagnostics.Stopwatch) =               │

00:00:27 #2511 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:00:27 #2512 [Verbose] > │             let v41 : System.Diagnostics.Stopwatch = v40 ()                  │

00:00:27 #2513 [Verbose] > │             v41.Start ()                                                     │

00:00:27 #2514 [Verbose] > │             let v42 : int64 = v41.ElapsedMilliseconds                        │

00:00:27 #2515 [Verbose] > │             let v43 : (int32 []) = Array.zeroCreate<int32> (2000001)         │

00:00:27 #2516 [Verbose] > │             let v44 : Mut1 = {l0 = 0} : Mut1                                 │

00:00:27 #2517 [Verbose] > │             while method8(v44) do                                            │

00:00:27 #2518 [Verbose] > │                 let v46 : int32 = v44.l0                                     │

00:00:27 #2519 [Verbose] > │                 v43.[int v46] <- v46                                         │

00:00:27 #2520 [Verbose] > │                 let v47 : int32 = v46 + 1                                    │

00:00:27 #2521 [Verbose] > │                 v44.l0 <- v47                                                │

00:00:27 #2522 [Verbose] > │                 ()                                                           │

00:00:27 #2523 [Verbose] > │             let v48 : (int32 -> float) = closure4(v20, v37)                  │

00:00:27 #2524 [Verbose] > │             let v49 : (float []) = v43 |> Array.Parallel.map v48             │

00:00:27 #2525 [Verbose] > │             let v50 : int32 = v49.Length                                     │

00:00:27 #2526 [Verbose] > │             let v51 : int32 = v50 - 1                                        │

00:00:27 #2527 [Verbose] > │             let v52 : float = v49.[int v51]                                  │

00:00:27 #2528 [Verbose] > │             let v53 : int64 = v41.ElapsedMilliseconds                        │

00:00:27 #2529 [Verbose] > │             let v54 : int64 = v53 - v42                                      │

00:00:27 #2530 [Verbose] > │             let v55 : string = $"Test case {v35 + 1}. {v36}. Time: {v54}  "  │

00:00:27 #2531 [Verbose] > │             System.Console.WriteLine v55                                     │

00:00:27 #2532 [Verbose] > │             v31.[int v34] <- struct (v52, v54)                               │

00:00:27 #2533 [Verbose] > │             let v56 : uint64 = v34 + 1UL                                     │

00:00:27 #2534 [Verbose] > │             v32.l0 <- v56                                                    │

00:00:27 #2535 [Verbose] > │             ()                                                               │

00:00:27 #2536 [Verbose] > │         let v57 : uint64 = System.Convert.ToUInt64 v31.Length                │

00:00:27 #2537 [Verbose] > │         let v58 : (float []) = Array.zeroCreate<float>                       │

00:00:27 #2538 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:27 #2539 [Verbose] > │         let v59 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2540 [Verbose] > │         while method4(v57, v59) do                                           │

00:00:27 #2541 [Verbose] > │             let v61 : uint64 = v59.l0                                        │

00:00:27 #2542 [Verbose] > │             let struct (v62 : float, v63 : int64) = v31.[int v61]            │

00:00:27 #2543 [Verbose] > │             v58.[int v61] <- v62                                             │

00:00:27 #2544 [Verbose] > │             let v64 : uint64 = v61 + 1UL                                     │

00:00:27 #2545 [Verbose] > │             v59.l0 <- v64                                                    │

00:00:27 #2546 [Verbose] > │             ()                                                               │

00:00:27 #2547 [Verbose] > │         let v65 : uint64 = System.Convert.ToUInt64 v58.Length                │

00:00:27 #2548 [Verbose] > │         let v66 : bool = v65 <= 1UL                                          │

00:00:27 #2549 [Verbose] > │         if v66 then                                                          │

00:00:27 #2550 [Verbose] > │             ()                                                               │

00:00:27 #2551 [Verbose] > │         else                                                                 │

00:00:27 #2552 [Verbose] > │             let v67 : float = v58.[int 0UL]                                  │

00:00:27 #2553 [Verbose] > │             let v68 : uint64 = 0UL                                           │

00:00:27 #2554 [Verbose] > │             let v69 : bool = method9(v67, v58, v68)                          │

00:00:27 #2555 [Verbose] > │             if v69 then                                                      │

00:00:27 #2556 [Verbose] > │                 ()                                                           │

00:00:27 #2557 [Verbose] > │             else                                                             │

00:00:27 #2558 [Verbose] > │                 let v70 : string = $"Challenge error: {v58}"                 │

00:00:27 #2559 [Verbose] > │                 failwith<unit> v70                                           │

00:00:27 #2560 [Verbose] > │         let v71 : string = $"%A{v21}"                                        │

00:00:27 #2561 [Verbose] > │         let v72 : (float []) = Array.zeroCreate<float>                       │

00:00:27 #2562 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:27 #2563 [Verbose] > │         let v73 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2564 [Verbose] > │         while method4(v57, v73) do                                           │

00:00:27 #2565 [Verbose] > │             let v75 : uint64 = v73.l0                                        │

00:00:27 #2566 [Verbose] > │             let struct (v76 : float, v77 : int64) = v31.[int v75]            │

00:00:27 #2567 [Verbose] > │             v72.[int v75] <- v76                                             │

00:00:27 #2568 [Verbose] > │             let v78 : uint64 = v75 + 1UL                                     │

00:00:27 #2569 [Verbose] > │             v73.l0 <- v78                                                    │

00:00:27 #2570 [Verbose] > │             ()                                                               │

00:00:27 #2571 [Verbose] > │         let v79 : float = v72.[int 0UL]                                      │

00:00:27 #2572 [Verbose] > │         let v80 : string = $"%A{v79}"                                        │

00:00:27 #2573 [Verbose] > │         let v81 : (int64 []) = Array.zeroCreate<int64>                       │

00:00:27 #2574 [Verbose] > │ (System.Convert.ToInt32(v57))                                                │

00:00:27 #2575 [Verbose] > │         let v82 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:27 #2576 [Verbose] > │         while method4(v57, v82) do                                           │

00:00:27 #2577 [Verbose] > │             let v84 : uint64 = v82.l0                                        │

00:00:27 #2578 [Verbose] > │             let struct (v85 : float, v86 : int64) = v31.[int v84]            │

00:00:27 #2579 [Verbose] > │             v81.[int v84] <- v86                                             │

00:00:27 #2580 [Verbose] > │             let v87 : uint64 = v84 + 1UL                                     │

00:00:27 #2581 [Verbose] > │             v82.l0 <- v87                                                    │

00:00:27 #2582 [Verbose] > │             ()                                                               │

00:00:27 #2583 [Verbose] > │         v16.[int v19] <- struct (v71, v22, v80, v81)                         │

00:00:27 #2584 [Verbose] > │         let v88 : uint64 = v19 + 1UL                                         │

00:00:27 #2585 [Verbose] > │         v17.l0 <- v88                                                        │

00:00:27 #2586 [Verbose] > │         ()                                                                   │

00:00:27 #2587 [Verbose] > │     let v89 : uint64 = System.Convert.ToUInt64 v16.Length                    │

00:00:27 #2588 [Verbose] > │     let v90 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)> │

00:00:27 #2589 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:27 #2590 [Verbose] > │     let v91 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:27 #2591 [Verbose] > │     while method4(v89, v91) do                                               │

00:00:27 #2592 [Verbose] > │         let v93 : uint64 = v91.l0                                            │

00:00:27 #2593 [Verbose] > │         let struct (v94 : string, v95 : string, v96 : string, v97 : (int64 [ │

00:00:27 #2594 [Verbose] > │ ])) = v16.[int v93]                                                          │

00:00:27 #2595 [Verbose] > │         let v98 : uint64 = System.Convert.ToUInt64 v97.Length                │

00:00:27 #2596 [Verbose] > │         let v99 : UH3 = UH3_1                                                │

00:00:27 #2597 [Verbose] > │         let v100 : Mut2 = {l0 = 0UL; l1 = v99; l2 = 0L} : Mut2               │

00:00:27 #2598 [Verbose] > │         while method10(v98, v100) do                                         │

00:00:27 #2599 [Verbose] > │             let v102 : uint64 = v100.l0                                      │

00:00:27 #2600 [Verbose] > │             let struct (v103 : UH3, v104 : int64) = v100.l1, v100.l2         │

00:00:27 #2601 [Verbose] > │             let v105 : int64 = v97.[int v102]                                │

00:00:27 #2602 [Verbose] > │             let v106 : int64 = v104 + 1L                                     │

00:00:27 #2603 [Verbose] > │             let v107 : uint64 = v102 + 1UL                                   │

00:00:27 #2604 [Verbose] > │             let v108 : UH3 = UH3_0(v104, v105, v103)                         │

00:00:27 #2605 [Verbose] > │             v100.l0 <- v107                                                  │

00:00:27 #2606 [Verbose] > │             v100.l1 <- v108                                                  │

00:00:27 #2607 [Verbose] > │             v100.l2 <- v106                                                  │

00:00:27 #2608 [Verbose] > │             ()                                                               │

00:00:27 #2609 [Verbose] > │         let struct (v109 : UH3, v110 : int64) = v100.l1, v100.l2             │

00:00:27 #2610 [Verbose] > │         let v111 : UH3 = UH3_1                                               │

00:00:27 #2611 [Verbose] > │         let v112 : UH3 = method11(v109, v111)                                │

00:00:27 #2612 [Verbose] > │         let v113 : (struct (int64 * int64) []) = method12(v112)              │

00:00:27 #2613 [Verbose] > │         let v114 : int32 = v113.Length                                       │

00:00:27 #2614 [Verbose] > │         let v115 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:00:27 #2615 [Verbose] > │ (int64 * int64)> (v114)                                                      │

00:00:27 #2616 [Verbose] > │         let v116 : Mut1 = {l0 = 0} : Mut1                                    │

00:00:27 #2617 [Verbose] > │         while method15(v114, v116) do                                        │

00:00:27 #2618 [Verbose] > │             let v118 : int32 = v116.l0                                       │

00:00:27 #2619 [Verbose] > │             let struct (v119 : int64, v120 : int64) = v113.[int v118]        │

00:00:27 #2620 [Verbose] > │             let v121 : int64 = v119 + 1L                                     │

00:00:27 #2621 [Verbose] > │             v115.[int v118] <- struct (v121, v120)                           │

00:00:27 #2622 [Verbose] > │             let v122 : int32 = v118 + 1                                      │

00:00:27 #2623 [Verbose] > │             v116.l0 <- v122                                                  │

00:00:27 #2624 [Verbose] > │             ()                                                               │

00:00:27 #2625 [Verbose] > │         let v123 : (struct (int64 * int64) -> int64) = closure5()            │

00:00:27 #2626 [Verbose] > │         let v124 : (struct (int64 * int64) []) = v115 |> Array.sortBy v123   │

00:00:27 #2627 [Verbose] > │         let struct (v125 : int64, v126 : int64) = v124.[int 0]               │

00:00:27 #2628 [Verbose] > │         let v127 : string = $"%A{struct (v125, v126)}"                       │

00:00:27 #2629 [Verbose] > │         let v128 : bool = v94 = v96                                          │

00:00:27 #2630 [Verbose] > │         let v133 : US0 =                                                     │

00:00:27 #2631 [Verbose] > │             if v128 then                                                     │

00:00:27 #2632 [Verbose] > │                 let v129 : System.ConsoleColor =                             │

00:00:27 #2633 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:00:27 #2634 [Verbose] > │                 US0_1(v129)                                                  │

00:00:27 #2635 [Verbose] > │             else                                                             │

00:00:27 #2636 [Verbose] > │                 let v131 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:00:27 #2637 [Verbose] > │                 US0_1(v131)                                                  │

00:00:27 #2638 [Verbose] > │         let v134 : UH2 = UH2_1                                               │

00:00:27 #2639 [Verbose] > │         let v135 : UH2 = UH2_0(v127, v134)                                   │

00:00:27 #2640 [Verbose] > │         let v136 : UH2 = UH2_0(v96, v135)                                    │

00:00:27 #2641 [Verbose] > │         let v137 : UH2 = UH2_0(v94, v136)                                    │

00:00:27 #2642 [Verbose] > │         let v138 : UH2 = UH2_0(v95, v137)                                    │

00:00:27 #2643 [Verbose] > │         v90.[int v93] <- struct (v138, v133)                                 │

00:00:27 #2644 [Verbose] > │         let v139 : uint64 = v93 + 1UL                                        │

00:00:27 #2645 [Verbose] > │         v91.l0 <- v139                                                       │

00:00:27 #2646 [Verbose] > │         ()                                                                   │

00:00:27 #2647 [Verbose] > │     let v140 : string = "Input"                                              │

00:00:27 #2648 [Verbose] > │     let v141 : string = "Expected"                                           │

00:00:27 #2649 [Verbose] > │     let v142 : string = "Result"                                             │

00:00:27 #2650 [Verbose] > │     let v143 : string = "Best"                                               │

00:00:27 #2651 [Verbose] > │     let v144 : UH2 = UH2_1                                                   │

00:00:27 #2652 [Verbose] > │     let v145 : UH2 = UH2_0(v143, v144)                                       │

00:00:27 #2653 [Verbose] > │     let v146 : UH2 = UH2_0(v142, v145)                                       │

00:00:27 #2654 [Verbose] > │     let v147 : UH2 = UH2_0(v141, v146)                                       │

00:00:27 #2655 [Verbose] > │     let v148 : UH2 = UH2_0(v140, v147)                                       │

00:00:27 #2656 [Verbose] > │     let v149 : US0 = US0_0                                                   │

00:00:27 #2657 [Verbose] > │     let v150 : string = "---"                                                │

00:00:27 #2658 [Verbose] > │     let v151 : UH2 = UH2_1                                                   │

00:00:27 #2659 [Verbose] > │     let v152 : UH2 = UH2_0(v150, v151)                                       │

00:00:27 #2660 [Verbose] > │     let v153 : UH2 = UH2_0(v150, v152)                                       │

00:00:27 #2661 [Verbose] > │     let v154 : UH2 = UH2_0(v150, v153)                                       │

00:00:27 #2662 [Verbose] > │     let v155 : UH2 = UH2_0(v150, v154)                                       │

00:00:27 #2663 [Verbose] > │     let v156 : US0 = US0_0                                                   │

00:00:27 #2664 [Verbose] > │     let v157 : UH4 = UH4_1                                                   │

00:00:27 #2665 [Verbose] > │     let v158 : UH4 = UH4_0(v155, v156, v157)                                 │

00:00:27 #2666 [Verbose] > │     let v159 : UH4 = UH4_0(v148, v149, v158)                                 │

00:00:27 #2667 [Verbose] > │     let v160 : (struct (UH2 * US0) []) = method16(v159)                      │

00:00:27 #2668 [Verbose] > │     let v161 : uint64 = System.Convert.ToUInt64 v160.Length                  │

00:00:27 #2669 [Verbose] > │     let v162 : uint64 = System.Convert.ToUInt64 v90.Length                   │

00:00:27 #2670 [Verbose] > │     let v163 : uint64 = v161 + v162                                          │

00:00:27 #2671 [Verbose] > │     let v164 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:27 #2672 [Verbose] > │ US0)> (System.Convert.ToInt32(v163))                                         │

00:00:27 #2673 [Verbose] > │     let v165 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2674 [Verbose] > │     while method4(v163, v165) do                                             │

00:00:27 #2675 [Verbose] > │         let v167 : uint64 = v165.l0                                          │

00:00:27 #2676 [Verbose] > │         let v168 : bool = v167 < v161                                        │

00:00:27 #2677 [Verbose] > │         let struct (v174 : UH2, v175 : US0) =                                │

00:00:27 #2678 [Verbose] > │             if v168 then                                                     │

00:00:27 #2679 [Verbose] > │                 let struct (v169 : UH2, v170 : US0) = v160.[int v167]        │

00:00:27 #2680 [Verbose] > │                 struct (v169, v170)                                          │

00:00:27 #2681 [Verbose] > │             else                                                             │

00:00:27 #2682 [Verbose] > │                 let v171 : uint64 = v167 - v161                              │

00:00:27 #2683 [Verbose] > │                 let struct (v172 : UH2, v173 : US0) = v90.[int v171]         │

00:00:27 #2684 [Verbose] > │                 struct (v172, v173)                                          │

00:00:27 #2685 [Verbose] > │         v164.[int v167] <- struct (v174, v175)                               │

00:00:27 #2686 [Verbose] > │         let v176 : uint64 = v167 + 1UL                                       │

00:00:27 #2687 [Verbose] > │         v165.l0 <- v176                                                      │

00:00:27 #2688 [Verbose] > │         ()                                                                   │

00:00:27 #2689 [Verbose] > │     let v177 : uint64 = System.Convert.ToUInt64 v164.Length                  │

00:00:27 #2690 [Verbose] > │     let v178 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:00:27 #2691 [Verbose] > │ (System.Convert.ToInt32(v177))                                               │

00:00:27 #2692 [Verbose] > │     let v179 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2693 [Verbose] > │     while method4(v177, v179) do                                             │

00:00:27 #2694 [Verbose] > │         let v181 : uint64 = v179.l0                                          │

00:00:27 #2695 [Verbose] > │         let struct (v182 : UH2, v183 : US0) = v164.[int v181]                │

00:00:27 #2696 [Verbose] > │         let v184 : (string []) = method19(v182)                              │

00:00:27 #2697 [Verbose] > │         v178.[int v181] <- v184                                              │

00:00:27 #2698 [Verbose] > │         let v185 : uint64 = v181 + 1UL                                       │

00:00:27 #2699 [Verbose] > │         v179.l0 <- v185                                                      │

00:00:27 #2700 [Verbose] > │         ()                                                                   │

00:00:27 #2701 [Verbose] > │     let v186 : ((string []) []) = v178 |> Array.transpose                    │

00:00:27 #2702 [Verbose] > │     let v187 : uint64 = System.Convert.ToUInt64 v186.Length                  │

00:00:27 #2703 [Verbose] > │     let v188 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:27 #2704 [Verbose] > │ (System.Convert.ToInt32(v187))                                               │

00:00:27 #2705 [Verbose] > │     let v189 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2706 [Verbose] > │     while method4(v187, v189) do                                             │

00:00:27 #2707 [Verbose] > │         let v191 : uint64 = v189.l0                                          │

00:00:27 #2708 [Verbose] > │         let v192 : (string []) = v186.[int v191]                             │

00:00:27 #2709 [Verbose] > │         let v193 : uint64 = System.Convert.ToUInt64 v192.Length              │

00:00:27 #2710 [Verbose] > │         let v194 : (int64 []) = Array.zeroCreate<int64>                      │

00:00:27 #2711 [Verbose] > │ (System.Convert.ToInt32(v193))                                               │

00:00:27 #2712 [Verbose] > │         let v195 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:27 #2713 [Verbose] > │         while method4(v193, v195) do                                         │

00:00:27 #2714 [Verbose] > │             let v197 : uint64 = v195.l0                                      │

00:00:27 #2715 [Verbose] > │             let v198 : string = v192.[int v197]                              │

00:00:27 #2716 [Verbose] > │             let v199 : int64 = System.Convert.ToInt64 v198.Length            │

00:00:27 #2717 [Verbose] > │             v194.[int v197] <- v199                                          │

00:00:27 #2718 [Verbose] > │             let v200 : uint64 = v197 + 1UL                                   │

00:00:27 #2719 [Verbose] > │             v195.l0 <- v200                                                  │

00:00:27 #2720 [Verbose] > │             ()                                                               │

00:00:27 #2721 [Verbose] > │         let v201 : (int64 []) = v194 |> Array.sortDescending                 │

00:00:27 #2722 [Verbose] > │         let v202 : int64 option = v201 |> Array.tryItem 0                    │

00:00:27 #2723 [Verbose] > │         let v203 : (int64 -> US1) = closure6()                               │

00:00:27 #2724 [Verbose] > │         let v204 : US1 = US1_0                                               │

00:00:27 #2725 [Verbose] > │         let v205 : US1 = v202 |> Option.map v203 |> Option.defaultValue v204 │

00:00:27 #2726 [Verbose] > │         let v208 : int64 =                                                   │

00:00:27 #2727 [Verbose] > │             match v205 with                                                  │

00:00:27 #2728 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:27 #2729 [Verbose] > │                 0L                                                           │

00:00:27 #2730 [Verbose] > │             | US1_1(v206) -> (* Some *)                                      │

00:00:27 #2731 [Verbose] > │                 v206                                                         │

00:00:27 #2732 [Verbose] > │         v188.[int v191] <- v208                                              │

00:00:27 #2733 [Verbose] > │         let v209 : uint64 = v191 + 1UL                                       │

00:00:27 #2734 [Verbose] > │         v189.l0 <- v209                                                      │

00:00:27 #2735 [Verbose] > │         ()                                                                   │

00:00:27 #2736 [Verbose] > │     let v210 : uint64 = System.Convert.ToUInt64 v188.Length                  │

00:00:27 #2737 [Verbose] > │     let v211 : UH5 = UH5_1                                                   │

00:00:27 #2738 [Verbose] > │     let v212 : Mut3 = {l0 = 0UL; l1 = v211; l2 = 0} : Mut3                   │

00:00:27 #2739 [Verbose] > │     while method22(v210, v212) do                                            │

00:00:27 #2740 [Verbose] > │         let v214 : uint64 = v212.l0                                          │

00:00:27 #2741 [Verbose] > │         let struct (v215 : UH5, v216 : int32) = v212.l1, v212.l2             │

00:00:27 #2742 [Verbose] > │         let v217 : int64 = v188.[int v214]                                   │

00:00:27 #2743 [Verbose] > │         let v218 : int32 = v216 + 1                                          │

00:00:27 #2744 [Verbose] > │         let v219 : uint64 = v214 + 1UL                                       │

00:00:27 #2745 [Verbose] > │         let v220 : UH5 = UH5_0(v216, v217, v215)                             │

00:00:27 #2746 [Verbose] > │         v212.l0 <- v219                                                      │

00:00:27 #2747 [Verbose] > │         v212.l1 <- v220                                                      │

00:00:27 #2748 [Verbose] > │         v212.l2 <- v218                                                      │

00:00:27 #2749 [Verbose] > │         ()                                                                   │

00:00:27 #2750 [Verbose] > │     let struct (v221 : UH5, v222 : int32) = v212.l1, v212.l2                 │

00:00:27 #2751 [Verbose] > │     let v223 : UH5 = UH5_1                                                   │

00:00:27 #2752 [Verbose] > │     let v224 : UH5 = method23(v221, v223)                                    │

00:00:27 #2753 [Verbose] > │     let v225 : (struct (int32 * int64) []) = method24(v224)                  │

00:00:27 #2754 [Verbose] > │     let v226 : Map<int32, int64> = v225 |> Array.map (fun (struct (a, b)) -> │

00:00:27 #2755 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:00:27 #2756 [Verbose] > │     let v227 : (struct ((string []) * US0) []) = Array.zeroCreate<struct     │

00:00:27 #2757 [Verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v177))                          │

00:00:27 #2758 [Verbose] > │     let v228 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2759 [Verbose] > │     while method4(v177, v228) do                                             │

00:00:27 #2760 [Verbose] > │         let v230 : uint64 = v228.l0                                          │

00:00:27 #2761 [Verbose] > │         let struct (v231 : UH2, v232 : US0) = v164.[int v230]                │

00:00:27 #2762 [Verbose] > │         let v233 : UH6 = UH6_1                                               │

00:00:27 #2763 [Verbose] > │         let v234 : int32 = 0                                                 │

00:00:27 #2764 [Verbose] > │         let struct (v235 : UH6, v236 : int32) = method27(v231, v233, v234)   │

00:00:27 #2765 [Verbose] > │         let v237 : UH6 = UH6_1                                               │

00:00:27 #2766 [Verbose] > │         let v238 : UH6 = method28(v235, v237)                                │

00:00:27 #2767 [Verbose] > │         let v239 : UH2 = UH2_1                                               │

00:00:27 #2768 [Verbose] > │         let v240 : UH2 = method29(v226, v238, v239)                          │

00:00:27 #2769 [Verbose] > │         let v241 : (string []) = method30(v240)                              │

00:00:27 #2770 [Verbose] > │         v227.[int v230] <- struct (v241, v232)                               │

00:00:27 #2771 [Verbose] > │         let v242 : uint64 = v230 + 1UL                                       │

00:00:27 #2772 [Verbose] > │         v228.l0 <- v242                                                      │

00:00:27 #2773 [Verbose] > │         ()                                                                   │

00:00:27 #2774 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2775 [Verbose] > │     let v243 : uint64 = System.Convert.ToUInt64 v227.Length                  │

00:00:27 #2776 [Verbose] > │     let v244 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2777 [Verbose] > │     while method4(v243, v244) do                                             │

00:00:27 #2778 [Verbose] > │         let v246 : uint64 = v244.l0                                          │

00:00:27 #2779 [Verbose] > │         let struct (v247 : (string []), v248 : US0) = v227.[int v246]        │

00:00:27 #2780 [Verbose] > │         match v248 with                                                      │

00:00:27 #2781 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:27 #2782 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:27 #2783 [Verbose] > │             let v252 : (unit -> unit) = closure7()                           │

00:00:27 #2784 [Verbose] > │             v252 ()                                                          │

00:00:27 #2785 [Verbose] > │             #else                                                            │

00:00:27 #2786 [Verbose] > │             let v253 : (unit -> unit) = closure8()                           │

00:00:27 #2787 [Verbose] > │             v253 ()                                                          │

00:00:27 #2788 [Verbose] > │             #endif                                                           │

00:00:27 #2789 [Verbose] > │             ()                                                               │

00:00:27 #2790 [Verbose] > │         | US0_1(v249) -> (* Some *)                                          │

00:00:27 #2791 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:27 #2792 [Verbose] > │             let v250 : (unit -> unit) = closure9()                           │

00:00:27 #2793 [Verbose] > │             v250 ()                                                          │

00:00:27 #2794 [Verbose] > │             #else                                                            │

00:00:27 #2795 [Verbose] > │             let v251 : (unit -> unit) = closure10(v249)                      │

00:00:27 #2796 [Verbose] > │             v251 ()                                                          │

00:00:27 #2797 [Verbose] > │             #endif                                                           │

00:00:27 #2798 [Verbose] > │             ()                                                               │

00:00:27 #2799 [Verbose] > │         let v254 : string = "\t| "                                           │

00:00:27 #2800 [Verbose] > │         let v255 : string = System.String.Join (v254, v247)                  │

00:00:27 #2801 [Verbose] > │         System.Console.WriteLine v255                                        │

00:00:27 #2802 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:00:27 #2803 [Verbose] > │         let v256 : (unit -> unit) = closure7()                               │

00:00:27 #2804 [Verbose] > │         v256 ()                                                              │

00:00:27 #2805 [Verbose] > │         #else                                                                │

00:00:27 #2806 [Verbose] > │         let v257 : (unit -> unit) = closure8()                               │

00:00:27 #2807 [Verbose] > │         v257 ()                                                              │

00:00:27 #2808 [Verbose] > │         #endif                                                               │

00:00:27 #2809 [Verbose] > │         let v258 : uint64 = v246 + 1UL                                       │

00:00:27 #2810 [Verbose] > │         v244.l0 <- v258                                                      │

00:00:27 #2811 [Verbose] > │         ()                                                                   │

00:00:27 #2812 [Verbose] > │     let v259 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:00:27 #2813 [Verbose] > │ (System.Convert.ToInt32(v89))                                                │

00:00:27 #2814 [Verbose] > │     let v260 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2815 [Verbose] > │     while method4(v89, v260) do                                              │

00:00:27 #2816 [Verbose] > │         let v262 : uint64 = v260.l0                                          │

00:00:27 #2817 [Verbose] > │         let struct (v263 : string, v264 : string, v265 : string, v266 :      │

00:00:27 #2818 [Verbose] > │ (int64 [])) = v16.[int v262]                                                 │

00:00:27 #2819 [Verbose] > │         let v267 : (int64 -> float) = float                                  │

00:00:27 #2820 [Verbose] > │         let v268 : uint64 = System.Convert.ToUInt64 v266.Length              │

00:00:27 #2821 [Verbose] > │         let v269 : (float []) = Array.zeroCreate<float>                      │

00:00:27 #2822 [Verbose] > │ (System.Convert.ToInt32(v268))                                               │

00:00:27 #2823 [Verbose] > │         let v270 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:27 #2824 [Verbose] > │         while method4(v268, v270) do                                         │

00:00:27 #2825 [Verbose] > │             let v272 : uint64 = v270.l0                                      │

00:00:27 #2826 [Verbose] > │             let v273 : int64 = v266.[int v272]                               │

00:00:27 #2827 [Verbose] > │             let v274 : float = v267 v273                                     │

00:00:27 #2828 [Verbose] > │             v269.[int v272] <- v274                                          │

00:00:27 #2829 [Verbose] > │             let v275 : uint64 = v272 + 1UL                                   │

00:00:27 #2830 [Verbose] > │             v270.l0 <- v275                                                  │

00:00:27 #2831 [Verbose] > │             ()                                                               │

00:00:27 #2832 [Verbose] > │         v259.[int v262] <- v269                                              │

00:00:27 #2833 [Verbose] > │         let v276 : uint64 = v262 + 1UL                                       │

00:00:27 #2834 [Verbose] > │         v260.l0 <- v276                                                      │

00:00:27 #2835 [Verbose] > │         ()                                                                   │

00:00:27 #2836 [Verbose] > │     let v277 : ((float []) []) = v259 |> Array.transpose                     │

00:00:27 #2837 [Verbose] > │     let v278 : uint64 = System.Convert.ToUInt64 v277.Length                  │

00:00:27 #2838 [Verbose] > │     let v279 : (float []) = Array.zeroCreate<float>                          │

00:00:27 #2839 [Verbose] > │ (System.Convert.ToInt32(v278))                                               │

00:00:27 #2840 [Verbose] > │     let v280 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2841 [Verbose] > │     while method4(v278, v280) do                                             │

00:00:27 #2842 [Verbose] > │         let v282 : uint64 = v280.l0                                          │

00:00:27 #2843 [Verbose] > │         let v283 : (float []) = v277.[int v282]                              │

00:00:27 #2844 [Verbose] > │         let v284 : float = v283 |> Array.average                             │

00:00:27 #2845 [Verbose] > │         v279.[int v282] <- v284                                              │

00:00:27 #2846 [Verbose] > │         let v285 : uint64 = v282 + 1UL                                       │

00:00:27 #2847 [Verbose] > │         v280.l0 <- v285                                                      │

00:00:27 #2848 [Verbose] > │         ()                                                                   │

00:00:27 #2849 [Verbose] > │     let v286 : (float -> int64) = int64                                      │

00:00:27 #2850 [Verbose] > │     let v287 : uint64 = System.Convert.ToUInt64 v279.Length                  │

00:00:27 #2851 [Verbose] > │     let v288 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:27 #2852 [Verbose] > │ (System.Convert.ToInt32(v287))                                               │

00:00:27 #2853 [Verbose] > │     let v289 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2854 [Verbose] > │     while method4(v287, v289) do                                             │

00:00:27 #2855 [Verbose] > │         let v291 : uint64 = v289.l0                                          │

00:00:27 #2856 [Verbose] > │         let v292 : float = v279.[int v291]                                   │

00:00:27 #2857 [Verbose] > │         let v293 : int64 = v286 v292                                         │

00:00:27 #2858 [Verbose] > │         v288.[int v291] <- v293                                              │

00:00:27 #2859 [Verbose] > │         let v294 : uint64 = v291 + 1UL                                       │

00:00:27 #2860 [Verbose] > │         v289.l0 <- v294                                                      │

00:00:27 #2861 [Verbose] > │         ()                                                                   │

00:00:27 #2862 [Verbose] > │     let v295 : uint64 = System.Convert.ToUInt64 v288.Length                  │

00:00:27 #2863 [Verbose] > │     let v296 : UH5 = UH5_1                                                   │

00:00:27 #2864 [Verbose] > │     let v297 : Mut3 = {l0 = 0UL; l1 = v296; l2 = 0} : Mut3                   │

00:00:27 #2865 [Verbose] > │     while method22(v295, v297) do                                            │

00:00:27 #2866 [Verbose] > │         let v299 : uint64 = v297.l0                                          │

00:00:27 #2867 [Verbose] > │         let struct (v300 : UH5, v301 : int32) = v297.l1, v297.l2             │

00:00:27 #2868 [Verbose] > │         let v302 : int64 = v288.[int v299]                                   │

00:00:27 #2869 [Verbose] > │         let v303 : int32 = v301 + 1                                          │

00:00:27 #2870 [Verbose] > │         let v304 : uint64 = v299 + 1UL                                       │

00:00:27 #2871 [Verbose] > │         let v305 : UH5 = UH5_0(v301, v302, v300)                             │

00:00:27 #2872 [Verbose] > │         v297.l0 <- v304                                                      │

00:00:27 #2873 [Verbose] > │         v297.l1 <- v305                                                      │

00:00:27 #2874 [Verbose] > │         v297.l2 <- v303                                                      │

00:00:27 #2875 [Verbose] > │         ()                                                                   │

00:00:27 #2876 [Verbose] > │     let struct (v306 : UH5, v307 : int32) = v297.l1, v297.l2                 │

00:00:27 #2877 [Verbose] > │     let v308 : UH5 = UH5_1                                                   │

00:00:27 #2878 [Verbose] > │     let v309 : UH5 = method23(v306, v308)                                    │

00:00:27 #2879 [Verbose] > │     let v310 : (struct (int32 * int64) []) = method33(v309)                  │

00:00:27 #2880 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:27 #2881 [Verbose] > │     let v311 : string = "Average Ranking  "                                  │

00:00:27 #2882 [Verbose] > │     System.Console.WriteLine v311                                            │

00:00:27 #2883 [Verbose] > │     let v312 : (struct (int32 * int64) -> int64) = closure11()               │

00:00:27 #2884 [Verbose] > │     let v313 : (struct (int32 * int64) []) = v310 |> Array.sortBy v312       │

00:00:27 #2885 [Verbose] > │     let v314 : uint64 = System.Convert.ToUInt64 v313.Length                  │

00:00:27 #2886 [Verbose] > │     let v315 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:27 #2887 [Verbose] > │     while method4(v314, v315) do                                             │

00:00:27 #2888 [Verbose] > │         let v317 : uint64 = v315.l0                                          │

00:00:27 #2889 [Verbose] > │         let struct (v318 : int32, v319 : int64) = v313.[int v317]            │

00:00:27 #2890 [Verbose] > │         let v320 : string = $"Test case %d{v318 + 1}. Average Time: %A{v319} │

00:00:27 #2891 [Verbose] > │ "                                                                            │

00:00:27 #2892 [Verbose] > │         System.Console.WriteLine v320                                        │

00:00:27 #2893 [Verbose] > │         let v321 : uint64 = v317 + 1UL                                       │

00:00:27 #2894 [Verbose] > │         v315.l0 <- v321                                                      │

00:00:27 #2895 [Verbose] > │         ()                                                                   │

00:00:27 #2896 [Verbose] > │     ()                                                                       │

00:00:27 #2897 [Verbose] > │ method0()                                                                    │

00:00:27 #2898 [Verbose] > │                                                                              │

00:00:27 #2899 [Verbose] > │                                                                              │

00:00:27 #2900 [Verbose] > │                                                                              │

00:00:27 #2901 [Verbose] > │ Test: v0                                                                     │

00:00:27 #2902 [Verbose] > │                                                                              │

00:00:27 #2903 [Verbose] > │ Solution: 0.0                                                                │

00:00:27 #2904 [Verbose] > │ Test case 1. A. Time: 23                                                     │

00:00:27 #2905 [Verbose] > │                                                                              │

00:00:27 #2906 [Verbose] > │ Solution: 2.0                                                                │

00:00:27 #2907 [Verbose] > │ Test case 1. A. Time: 11                                                     │

00:00:27 #2908 [Verbose] > │                                                                              │

00:00:27 #2909 [Verbose] > │ Solution: 5.0                                                                │

00:00:27 #2910 [Verbose] > │ Test case 1. A. Time: 10                                                     │

00:00:27 #2911 [Verbose] > │                                                                              │

00:00:27 #2912 [Verbose] > │ Input	| Expected	| Result	| Best                                                   │

00:00:27 #2913 [Verbose] > │ ---  	| ---     	| ---   	| ---                                                    │

00:00:27 #2914 [Verbose] > │ 0.0  	| 1.0     	| 1.0   	| struct (1L, 23L)                                       │

00:00:27 #2915 [Verbose] > │ 2.0  	| 3.0     	| 3.0   	| struct (1L, 11L)                                       │

00:00:27 #2916 [Verbose] > │ 5.0  	| 6.0     	| 6.0   	| struct (1L, 10L)                                       │

00:00:27 #2917 [Verbose] > │                                                                              │

00:00:27 #2918 [Verbose] > │ Average Ranking                                                              │

00:00:27 #2919 [Verbose] > │ Test case 1. Average Time: 14L                                               │

00:00:27 #2920 [Verbose] > │                                                                              │

00:00:27 #2921 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2922 [Verbose] > [NbConvertApp] Converting notebook benchmark.dib.ipynb to html

00:00:29 #2923 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:29 #2924 [Verbose] >   validate(nb)

00:00:29 #2925 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:29 #2926 [Verbose] >   return _pygments_highlight(

00:00:30 #2927 [Verbose] > [NbConvertApp] Writing 410202 bytes to benchmark.dib.html

00:00:30 #2928 [Debug] executeAsync / exitCode: 0 / output.Length: 217442

00:00:30 #2929 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 stream.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # stream                                                                     │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-2909-0962-020e55c34fbc\main.spi

00:00:08 #22 [Verbose] >

00:00:08 #23 [Verbose] > ╭─[ 5.07s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #24 [Verbose] > │ ()                                                                           │

00:00:08 #25 [Verbose] > │                                                                              │

00:00:08 #26 [Verbose] > │                                                                              │

00:00:08 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #28 [Verbose] >

00:00:08 #29 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #30 [Verbose] > union rec stream t =

00:00:08 #31 [Verbose] >     | StreamCons : t * (() -> stream t)

00:00:09 #32 [Verbose] >     | StreamNil

00:00:09 #33 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3194-9478-9d23c8b8da45\main.spi

00:00:09 #34 [Verbose] >

00:00:09 #35 [Verbose] > ╭─[ 201.40ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #36 [Verbose] > │ ()                                                                           │

00:00:09 #37 [Verbose] > │                                                                              │

00:00:09 #38 [Verbose] > │                                                                              │

00:00:09 #39 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #40 [Verbose] >

00:00:09 #41 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #42 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #43 [Verbose] > │ ## fold                                                                      │

00:00:09 #44 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #45 [Verbose] >

00:00:09 #46 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #47 [Verbose] > inl fold fn init s =

00:00:09 #48 [Verbose] >     inl rec body acc = function

00:00:09 #49 [Verbose] >         | StreamCons (st, fn') => loop (fn acc st) (fn' ())

00:00:09 #50 [Verbose] >         | StreamNil => acc

00:00:09 #51 [Verbose] >     and inl loop acc = join_body body acc

00:00:09 #52 [Verbose] >     loop init s

00:00:09 #53 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3215-1521-1ce44f5d03c2\main.spi

00:00:09 #54 [Verbose] >

00:00:09 #55 [Verbose] > ╭─[ 166.24ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #56 [Verbose] > │ ()                                                                           │

00:00:09 #57 [Verbose] > │                                                                              │

00:00:09 #58 [Verbose] > │                                                                              │

00:00:09 #59 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #60 [Verbose] >

00:00:09 #61 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #62 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #63 [Verbose] > │ ## fold_back                                                                 │

00:00:09 #64 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #65 [Verbose] >

00:00:09 #66 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #67 [Verbose] > inl fold_back fn s init =

00:00:09 #68 [Verbose] >     inl rec body acc = function

00:00:09 #69 [Verbose] >         | StreamCons (st, fn') => fn st (loop acc (fn' ()))

00:00:09 #70 [Verbose] >         | StreamNil => acc

00:00:09 #71 [Verbose] >     and inl loop acc = join_body body acc

00:00:09 #72 [Verbose] >     loop init s

00:00:09 #73 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3232-3233-30dfb0e1de4f\main.spi

00:00:09 #74 [Verbose] >

00:00:09 #75 [Verbose] > ╭─[ 145.84ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #76 [Verbose] > │ ()                                                                           │

00:00:09 #77 [Verbose] > │                                                                              │

00:00:09 #78 [Verbose] > │                                                                              │

00:00:09 #79 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #80 [Verbose] >

00:00:09 #81 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #82 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #83 [Verbose] > │ ## to_list                                                                   │

00:00:09 #84 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #85 [Verbose] >

00:00:09 #86 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #87 [Verbose] > inl to_list s =

00:00:09 #88 [Verbose] >     (s, [[]])

00:00:09 #89 [Verbose] >     ||> fold_back fun x acc =>

00:00:09 #90 [Verbose] >         x :: acc

00:00:09 #91 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3247-4730-48f376c49205\main.spi

00:00:09 #92 [Verbose] >

00:00:09 #93 [Verbose] > ╭─[ 138.54ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #94 [Verbose] > │ ()                                                                           │

00:00:09 #95 [Verbose] > │                                                                              │

00:00:09 #96 [Verbose] > │                                                                              │

00:00:09 #97 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #98 [Verbose] >

00:00:09 #99 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #100 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #101 [Verbose] > │ ## rev                                                                       │

00:00:09 #102 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #103 [Verbose] >

00:00:09 #104 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #105 [Verbose] > inl rev s =

00:00:09 #106 [Verbose] >     (StreamNil, s)

00:00:09 #107 [Verbose] >     ||> fold fun s x =>

00:00:09 #108 [Verbose] >         StreamCons (x, fun () => s)

00:00:09 #109 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3261-6183-6616adfbc343\main.spi

00:00:09 #110 [Verbose] >

00:00:09 #111 [Verbose] > ╭─[ 169.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #112 [Verbose] > │ ()                                                                           │

00:00:09 #113 [Verbose] > │                                                                              │

00:00:09 #114 [Verbose] > │                                                                              │

00:00:09 #115 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #116 [Verbose] >

00:00:09 #117 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #118 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #119 [Verbose] > │ ## from_list                                                                 │

00:00:09 #120 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #121 [Verbose] >

00:00:09 #122 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #123 [Verbose] > inl from_list list =

00:00:09 #124 [Verbose] >     (list, StreamNil)

00:00:09 #125 [Verbose] >     ||> listm.foldBack fun x acc =>

00:00:09 #126 [Verbose] >         StreamCons (x, fun () => acc)

00:00:09 #127 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3279-7933-7ef3ec97817c\main.spi

00:00:10 #128 [Verbose] >

00:00:10 #129 [Verbose] > ╭─[ 178.34ms - stdout ]────────────────────────────────────────────────────────╮

00:00:10 #130 [Verbose] > │ ()                                                                           │

00:00:10 #131 [Verbose] > │                                                                              │

00:00:10 #132 [Verbose] > │                                                                              │

00:00:10 #133 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #134 [Verbose] >

00:00:10 #135 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #136 [Verbose] > // // test

00:00:10 #137 [Verbose] >

00:00:10 #138 [Verbose] > listm.init 3i32 id

00:00:10 #139 [Verbose] > |> from_list

00:00:10 #140 [Verbose] > |> rev

00:00:10 #141 [Verbose] > |> to_list

00:00:10 #142 [Verbose] > |> _equal [[ 2; 1; 0 ]]

00:00:10 #143 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3297-9746-91809ced527b\main.spi

00:00:11 #144 [Verbose] >

00:00:11 #145 [Verbose] > ╭─[ 1.28s - stdout ]───────────────────────────────────────────────────────────╮

00:00:11 #146 [Verbose] > │ type UH0 =                                                                   │

00:00:11 #147 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:11 #148 [Verbose] > │     | UH0_1                                                                  │

00:00:11 #149 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #150 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:11 #151 [Verbose] > │     let v19 : UH0 = UH0_0(0, v18)                                            │

00:00:11 #152 [Verbose] > │     let v20 : UH0 = UH0_0(1, v19)                                            │

00:00:11 #153 [Verbose] > │     let v21 : UH0 = UH0_0(2, v20)                                            │

00:00:11 #154 [Verbose] > │     let v22 : UH0 = UH0_1                                                    │

00:00:11 #155 [Verbose] > │     let v23 : UH0 = UH0_0(0, v22)                                            │

00:00:11 #156 [Verbose] > │     let v24 : UH0 = UH0_0(1, v23)                                            │

00:00:11 #157 [Verbose] > │     let v25 : UH0 = UH0_0(2, v24)                                            │

00:00:11 #158 [Verbose] > │     let v26 : string = $"_equal / actual: %A{v21} / expected: %A{v25}"       │

00:00:11 #159 [Verbose] > │     ()                                                                       │

00:00:11 #160 [Verbose] > │ method0()                                                                    │

00:00:11 #161 [Verbose] > │                                                                              │

00:00:11 #162 [Verbose] > │                                                                              │

00:00:11 #163 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #164 [Verbose] >

00:00:11 #165 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #166 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #167 [Verbose] > │ ## try_item                                                                  │

00:00:11 #168 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #169 [Verbose] >

00:00:11 #170 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #171 [Verbose] > inl try_item i s =

00:00:11 #172 [Verbose] >     inl rec body i = function

00:00:11 #173 [Verbose] >         | StreamCons (x, _) when i <= 0 => Some x

00:00:11 #174 [Verbose] >         | StreamCons (_, fn) => loop (i - 1) (fn ())

00:00:11 #175 [Verbose] >         | StreamNil => None

00:00:11 #176 [Verbose] >     and inl loop acc s' =

00:00:11 #177 [Verbose] >         match var_is acc, var_is s' with

00:00:11 #178 [Verbose] >         | false, false => body acc s'

00:00:11 #179 [Verbose] >         | _ =>

00:00:11 #180 [Verbose] >             inl acc = dyn acc

00:00:11 #181 [Verbose] >             inl s' = dyn s'

00:00:11 #182 [Verbose] >             join body acc s'

00:00:11 #183 [Verbose] >     loop i s

00:00:11 #184 [Verbose] >

00:00:11 #185 [Verbose] > inl item i =

00:00:11 #186 [Verbose] >     try_item i >> optionm.value

00:00:11 #187 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3426-2688-2b4e7179403d\main.spi

00:00:11 #188 [Verbose] >

00:00:11 #189 [Verbose] > ╭─[ 176.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #190 [Verbose] > │ ()                                                                           │

00:00:11 #191 [Verbose] > │                                                                              │

00:00:11 #192 [Verbose] > │                                                                              │

00:00:11 #193 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #194 [Verbose] >

00:00:11 #195 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #196 [Verbose] > // // test

00:00:11 #197 [Verbose] >

00:00:11 #198 [Verbose] > listm.init 10i32 id

00:00:11 #199 [Verbose] > |> from_list

00:00:11 #200 [Verbose] > |> item 9i32

00:00:11 #201 [Verbose] > |> _equal 9

00:00:11 #202 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3444-4442-4e15f615442d\main.spi

00:00:11 #203 [Verbose] >

00:00:11 #204 [Verbose] > ╭─[ 173.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #205 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #206 [Verbose] > │     let v0 : string = $"_equal / actual: %A{9} / expected: %A{9}"            │

00:00:11 #207 [Verbose] > │     ()                                                                       │

00:00:11 #208 [Verbose] > │ method0()                                                                    │

00:00:11 #209 [Verbose] > │                                                                              │

00:00:11 #210 [Verbose] > │                                                                              │

00:00:11 #211 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #212 [Verbose] >

00:00:11 #213 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #214 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #215 [Verbose] > │ ## new_infinite_stream                                                       │

00:00:11 #216 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #217 [Verbose] >

00:00:11 #218 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #219 [Verbose] > inl new_infinite_stream fn =

00:00:11 #220 [Verbose] >     inl rec loop n =

00:00:11 #221 [Verbose] >         StreamCons (fn n, fun () => loop (n + 1))

00:00:11 #222 [Verbose] >     loop 0

00:00:11 #223 [Verbose] >

00:00:11 #224 [Verbose] > inl new_infinite_stream_ fn =

00:00:11 #225 [Verbose] >     let rec loop n =

00:00:11 #226 [Verbose] >         StreamCons (fn n, fun () => loop (n + 1))

00:00:11 #227 [Verbose] >     loop 0

00:00:11 #228 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3462-6239-6b65c9a4955f\main.spi

00:00:11 #229 [Verbose] >

00:00:11 #230 [Verbose] > ╭─[ 194.39ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #231 [Verbose] > │ ()                                                                           │

00:00:11 #232 [Verbose] > │                                                                              │

00:00:11 #233 [Verbose] > │                                                                              │

00:00:11 #234 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #235 [Verbose] >

00:00:11 #236 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #237 [Verbose] > // // test

00:00:11 #238 [Verbose] >

00:00:11 #239 [Verbose] > new_infinite_stream print_and_return

00:00:11 #240 [Verbose] > |> item 4i32

00:00:11 #241 [Verbose] > |> _equal 4i32

00:00:11 #242 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3482-8212-84e5db752374\main.spi

00:00:12 #243 [Verbose] >

00:00:12 #244 [Verbose] > ╭─[ 211.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #245 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #246 [Verbose] > │     printfn $"print_and_return / x: {0}"                                     │

00:00:12 #247 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:12 #248 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:12 #249 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:12 #250 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:12 #251 [Verbose] > │     let v0 : string = $"_equal / actual: %A{4} / expected: %A{4}"            │

00:00:12 #252 [Verbose] > │     ()                                                                       │

00:00:12 #253 [Verbose] > │ method0()                                                                    │

00:00:12 #254 [Verbose] > │                                                                              │

00:00:12 #255 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:12 #256 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:12 #257 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:12 #258 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:12 #259 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:12 #260 [Verbose] > │                                                                              │

00:00:12 #261 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #262 [Verbose] >

00:00:12 #263 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #264 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #265 [Verbose] > │ ## new_finite_stream                                                         │

00:00:12 #266 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #267 [Verbose] >

00:00:12 #268 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #269 [Verbose] > inl new_finite_stream fn max =

00:00:12 #270 [Verbose] >     inl rec loop n =

00:00:12 #271 [Verbose] >         if n >= max

00:00:12 #272 [Verbose] >         then StreamNil

00:00:12 #273 [Verbose] >         else StreamCons (fn n, fun () => loop (n + 1))

00:00:12 #274 [Verbose] >     loop 0

00:00:12 #275 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3504-0433-0fb95860cbd8\main.spi

00:00:12 #276 [Verbose] >

00:00:12 #277 [Verbose] > ╭─[ 177.87ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #278 [Verbose] > │ ()                                                                           │

00:00:12 #279 [Verbose] > │                                                                              │

00:00:12 #280 [Verbose] > │                                                                              │

00:00:12 #281 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #282 [Verbose] >

00:00:12 #283 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #284 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #285 [Verbose] > │ ## memoize                                                                   │

00:00:12 #286 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #287 [Verbose] >

00:00:12 #288 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #289 [Verbose] > union memoized_stream t =

00:00:12 #290 [Verbose] >     | NotComputed : () -> stream t

00:00:12 #291 [Verbose] >     | Computed : stream t

00:00:12 #292 [Verbose] >

00:00:12 #293 [Verbose] > inl memoize s =

00:00:12 #294 [Verbose] >     inl rec body s =

00:00:12 #295 [Verbose] >         inl state = mut (NotComputed s)

00:00:12 #296 [Verbose] >         fun () =>

00:00:12 #297 [Verbose] >             match *state with

00:00:12 #298 [Verbose] >             | Computed x => x

00:00:12 #299 [Verbose] >             | NotComputed fn =>

00:00:12 #300 [Verbose] >                 inl new_state =

00:00:12 #301 [Verbose] >                     match fn () with

00:00:12 #302 [Verbose] >                     | StreamNil => StreamNil

00:00:12 #303 [Verbose] >                     | StreamCons (x, fn) => StreamCons (x, loop fn)

00:00:12 #304 [Verbose] >                 state <- Computed new_state

00:00:12 #305 [Verbose] >                 new_state

00:00:12 #306 [Verbose] >     and inl loop s' = join_body_unit body s s'

00:00:12 #307 [Verbose] >     loop (fun () => s)

00:00:12 #308 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3522-2290-25d586921d83\main.spi

00:00:12 #309 [Verbose] >

00:00:12 #310 [Verbose] > ╭─[ 188.51ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #311 [Verbose] > │ ()                                                                           │

00:00:12 #312 [Verbose] > │                                                                              │

00:00:12 #313 [Verbose] > │                                                                              │

00:00:12 #314 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #315 [Verbose] >

00:00:12 #316 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #317 [Verbose] > // // test

00:00:12 #318 [Verbose] >

00:00:12 #319 [Verbose] > inl memo_stream = new_finite_stream print_and_return 10 |> memoize

00:00:12 #320 [Verbose] >

00:00:12 #321 [Verbose] > memo_stream ()

00:00:12 #322 [Verbose] > |> item 3i32

00:00:12 #323 [Verbose] > |> _equal 3i32

00:00:12 #324 [Verbose] >

00:00:12 #325 [Verbose] > memo_stream ()

00:00:12 #326 [Verbose] > |> item 5i32

00:00:12 #327 [Verbose] > |> _equal 5i32

00:00:12 #328 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3541-4189-497b00bac733\main.spi

00:00:13 #329 [Verbose] >

00:00:13 #330 [Verbose] > ╭─[ 816.48ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #331 [Verbose] > │ type UH0 =                                                                   │

00:00:13 #332 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:13 #333 [Verbose] > │     | UH0_1                                                                  │

00:00:13 #334 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:13 #335 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:13 #336 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:13 #337 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:13 #338 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:13 #339 [Verbose] > │     | US1_0                                                                  │

00:00:13 #340 [Verbose] > │     | US1_1 of f1_0 : int32                                                  │

00:00:13 #341 [Verbose] > │ let rec closure10 () () : UH0 =                                              │

00:00:13 #342 [Verbose] > │     UH0_1                                                                    │

00:00:13 #343 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:13 #344 [Verbose] > │     printfn $"print_and_return / x: {9}"                                     │

00:00:13 #345 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:13 #346 [Verbose] > │     UH0_0(9, v0)                                                             │

00:00:13 #347 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:13 #348 [Verbose] > │     printfn $"print_and_return / x: {8}"                                     │

00:00:13 #349 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:13 #350 [Verbose] > │     UH0_0(8, v0)                                                             │

00:00:13 #351 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:13 #352 [Verbose] > │     printfn $"print_and_return / x: {7}"                                     │

00:00:13 #353 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:13 #354 [Verbose] > │     UH0_0(7, v0)                                                             │

00:00:13 #355 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:13 #356 [Verbose] > │     printfn $"print_and_return / x: {6}"                                     │

00:00:13 #357 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:13 #358 [Verbose] > │     UH0_0(6, v0)                                                             │

00:00:13 #359 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:13 #360 [Verbose] > │     printfn $"print_and_return / x: {5}"                                     │

00:00:13 #361 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:13 #362 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:13 #363 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:13 #364 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:13 #365 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:13 #366 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:13 #367 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:13 #368 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:13 #369 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:13 #370 [Verbose] > │     UH0_0(3, v0)                                                             │

00:00:13 #371 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:13 #372 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:13 #373 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:13 #374 [Verbose] > │     UH0_0(2, v0)                                                             │

00:00:13 #375 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:13 #376 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:13 #377 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:13 #378 [Verbose] > │     UH0_0(1, v0)                                                             │

00:00:13 #379 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:13 #380 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:13 #381 [Verbose] > │     UH0_0(0, v0)                                                             │

00:00:13 #382 [Verbose] > │ and closure11 (v0 : Mut0) () : UH0 =                                         │

00:00:13 #383 [Verbose] > │     let v1 : US0 = v0.l0                                                     │

00:00:13 #384 [Verbose] > │     match v1 with                                                            │

00:00:13 #385 [Verbose] > │     | US0_0(v2) -> (* Computed *)                                            │

00:00:13 #386 [Verbose] > │         v2                                                                   │

00:00:13 #387 [Verbose] > │     | US0_1(v3) -> (* NotComputed *)                                         │

00:00:13 #388 [Verbose] > │         let v4 : UH0 = v3 ()                                                 │

00:00:13 #389 [Verbose] > │         let v13 : UH0 =                                                      │

00:00:13 #390 [Verbose] > │             match v4 with                                                    │

00:00:13 #391 [Verbose] > │             | UH0_0(v6, v7) -> (* StreamCons *)                              │

00:00:13 #392 [Verbose] > │                 let v8 : US0 = US0_1(v7)                                     │

00:00:13 #393 [Verbose] > │                 let v9 : Mut0 = {l0 = v8} : Mut0                             │

00:00:13 #394 [Verbose] > │                 let v10 : (unit -> UH0) = closure11(v9)                      │

00:00:13 #395 [Verbose] > │                 UH0_0(v6, v10)                                               │

00:00:13 #396 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:13 #397 [Verbose] > │                 UH0_1                                                        │

00:00:13 #398 [Verbose] > │         let v14 : US0 = US0_0(v13)                                           │

00:00:13 #399 [Verbose] > │         v0.l0 <- v14                                                         │

00:00:13 #400 [Verbose] > │         v13                                                                  │

00:00:13 #401 [Verbose] > │ and method1 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:13 #402 [Verbose] > │     match v1 with                                                            │

00:00:13 #403 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:13 #404 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:13 #405 [Verbose] > │         if v4 then                                                           │

00:00:13 #406 [Verbose] > │             US1_1(v2)                                                        │

00:00:13 #407 [Verbose] > │         else                                                                 │

00:00:13 #408 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:13 #409 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:13 #410 [Verbose] > │             method1(v6, v7)                                                  │

00:00:13 #411 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:13 #412 [Verbose] > │         US1_0                                                                │

00:00:13 #413 [Verbose] > │ and method0 () : unit =                                                      │

00:00:13 #414 [Verbose] > │     printfn $"print_and_return / x: {0}"                                     │

00:00:13 #415 [Verbose] > │     let v0 : (unit -> UH0) = closure0()                                      │

00:00:13 #416 [Verbose] > │     let v1 : US0 = US0_1(v0)                                                 │

00:00:13 #417 [Verbose] > │     let v2 : Mut0 = {l0 = v1} : Mut0                                         │

00:00:13 #418 [Verbose] > │     let v3 : US0 = v2.l0                                                     │

00:00:13 #419 [Verbose] > │     let v18 : UH0 =                                                          │

00:00:13 #420 [Verbose] > │         match v3 with                                                        │

00:00:13 #421 [Verbose] > │         | US0_0(v4) -> (* Computed *)                                        │

00:00:13 #422 [Verbose] > │             v4                                                               │

00:00:13 #423 [Verbose] > │         | US0_1(v5) -> (* NotComputed *)                                     │

00:00:13 #424 [Verbose] > │             let v6 : UH0 = v5 ()                                             │

00:00:13 #425 [Verbose] > │             let v15 : UH0 =                                                  │

00:00:13 #426 [Verbose] > │                 match v6 with                                                │

00:00:13 #427 [Verbose] > │                 | UH0_0(v8, v9) -> (* StreamCons *)                          │

00:00:13 #428 [Verbose] > │                     let v10 : US0 = US0_1(v9)                                │

00:00:13 #429 [Verbose] > │                     let v11 : Mut0 = {l0 = v10} : Mut0                       │

00:00:13 #430 [Verbose] > │                     let v12 : (unit -> UH0) = closure11(v11)                 │

00:00:13 #431 [Verbose] > │                     UH0_0(v8, v12)                                           │

00:00:13 #432 [Verbose] > │                 | UH0_1 -> (* StreamNil *)                                   │

00:00:13 #433 [Verbose] > │                     UH0_1                                                    │

00:00:13 #434 [Verbose] > │             let v16 : US0 = US0_0(v15)                                       │

00:00:13 #435 [Verbose] > │             v2.l0 <- v16                                                     │

00:00:13 #436 [Verbose] > │             v15                                                              │

00:00:13 #437 [Verbose] > │     let v19 : int32 = 3                                                      │

00:00:13 #438 [Verbose] > │     let v20 : US1 = method1(v19, v18)                                        │

00:00:13 #439 [Verbose] > │     let v24 : int32 =                                                        │

00:00:13 #440 [Verbose] > │         match v20 with                                                       │

00:00:13 #441 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:00:13 #442 [Verbose] > │             failwith<int32> "Option does not have a value."                  │

00:00:13 #443 [Verbose] > │         | US1_1(v21) -> (* Some *)                                           │

00:00:13 #444 [Verbose] > │             v21                                                              │

00:00:13 #445 [Verbose] > │     let v25 : bool = v24 = 3                                                 │

00:00:13 #446 [Verbose] > │     let v26 : string = $"_equal / actual: %A{v24} / expected: %A{3}"         │

00:00:13 #447 [Verbose] > │     let v27 : bool = v25 = false                                             │

00:00:13 #448 [Verbose] > │     if v27 then                                                              │

00:00:13 #449 [Verbose] > │         failwith<unit> v26                                                   │

00:00:13 #450 [Verbose] > │     let v28 : US0 = v2.l0                                                    │

00:00:13 #451 [Verbose] > │     let v43 : UH0 =                                                          │

00:00:13 #452 [Verbose] > │         match v28 with                                                       │

00:00:13 #453 [Verbose] > │         | US0_0(v29) -> (* Computed *)                                       │

00:00:13 #454 [Verbose] > │             v29                                                              │

00:00:13 #455 [Verbose] > │         | US0_1(v30) -> (* NotComputed *)                                    │

00:00:13 #456 [Verbose] > │             let v31 : UH0 = v30 ()                                           │

00:00:13 #457 [Verbose] > │             let v40 : UH0 =                                                  │

00:00:13 #458 [Verbose] > │                 match v31 with                                               │

00:00:13 #459 [Verbose] > │                 | UH0_0(v33, v34) -> (* StreamCons *)                        │

00:00:13 #460 [Verbose] > │                     let v35 : US0 = US0_1(v34)                               │

00:00:13 #461 [Verbose] > │                     let v36 : Mut0 = {l0 = v35} : Mut0                       │

00:00:13 #462 [Verbose] > │                     let v37 : (unit -> UH0) = closure11(v36)                 │

00:00:13 #463 [Verbose] > │                     UH0_0(v33, v37)                                          │

00:00:13 #464 [Verbose] > │                 | UH0_1 -> (* StreamNil *)                                   │

00:00:13 #465 [Verbose] > │                     UH0_1                                                    │

00:00:13 #466 [Verbose] > │             let v41 : US0 = US0_0(v40)                                       │

00:00:13 #467 [Verbose] > │             v2.l0 <- v41                                                     │

00:00:13 #468 [Verbose] > │             v40                                                              │

00:00:13 #469 [Verbose] > │     let v44 : int32 = 5                                                      │

00:00:13 #470 [Verbose] > │     let v45 : US1 = method1(v44, v43)                                        │

00:00:13 #471 [Verbose] > │     let v49 : int32 =                                                        │

00:00:13 #472 [Verbose] > │         match v45 with                                                       │

00:00:13 #473 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:00:13 #474 [Verbose] > │             failwith<int32> "Option does not have a value."                  │

00:00:13 #475 [Verbose] > │         | US1_1(v46) -> (* Some *)                                           │

00:00:13 #476 [Verbose] > │             v46                                                              │

00:00:13 #477 [Verbose] > │     let v50 : bool = v49 = 5                                                 │

00:00:13 #478 [Verbose] > │     let v51 : string = $"_equal / actual: %A{v49} / expected: %A{5}"         │

00:00:13 #479 [Verbose] > │     let v52 : bool = v50 = false                                             │

00:00:13 #480 [Verbose] > │     if v52 then                                                              │

00:00:13 #481 [Verbose] > │         failwith<unit> v51                                                   │

00:00:13 #482 [Verbose] > │ method0()                                                                    │

00:00:13 #483 [Verbose] > │                                                                              │

00:00:13 #484 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:13 #485 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:13 #486 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:13 #487 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:13 #488 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:13 #489 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:13 #490 [Verbose] > │                                                                              │

00:00:13 #491 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #492 [Verbose] >

00:00:13 #493 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #494 [Verbose] > // // test

00:00:13 #495 [Verbose] >

00:00:13 #496 [Verbose] > inl memo_stream = new_infinite_stream_ print_and_return |> memoize

00:00:13 #497 [Verbose] >

00:00:13 #498 [Verbose] > memo_stream ()

00:00:13 #499 [Verbose] > |> item 3i32

00:00:13 #500 [Verbose] > |> _equal 3i32

00:00:13 #501 [Verbose] >

00:00:13 #502 [Verbose] > memo_stream ()

00:00:13 #503 [Verbose] > |> item 5i32

00:00:13 #504 [Verbose] > |> _equal 5i32

00:00:13 #505 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3629-2999-284b0f205f7a\main.spi

00:00:13 #506 [Verbose] >

00:00:13 #507 [Verbose] > ╭─[ 207.94ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #508 [Verbose] > │ type UH0 =                                                                   │

00:00:13 #509 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:13 #510 [Verbose] > │     | UH0_1                                                                  │

00:00:13 #511 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:13 #512 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:13 #513 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:13 #514 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:13 #515 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:13 #516 [Verbose] > │     | US1_0                                                                  │

00:00:13 #517 [Verbose] > │     | US1_1 of f1_0 : int32                                                  │

00:00:13 #518 [Verbose] > │ let rec closure0 (v0 : int32) () : UH0 =                                     │

00:00:13 #519 [Verbose] > │     let v1 : int32 = v0 + 1                                                  │

00:00:13 #520 [Verbose] > │     method1(v1)                                                              │

00:00:13 #521 [Verbose] > │ and method1 (v0 : int32) : UH0 =                                             │

00:00:13 #522 [Verbose] > │     printfn $"print_and_return / x: {v0}"                                    │

00:00:13 #523 [Verbose] > │     let v1 : (unit -> UH0) = closure0(v0)                                    │

00:00:13 #524 [Verbose] > │     UH0_0(v0, v1)                                                            │

00:00:13 #525 [Verbose] > │ and closure1 (v0 : UH0) () : UH0 =                                           │

00:00:13 #526 [Verbose] > │     v0                                                                       │

00:00:13 #527 [Verbose] > │ and closure2 (v0 : UH0, v1 : Mut0) () : UH0 =                                │

00:00:13 #528 [Verbose] > │     let v2 : US0 = v1.l0                                                     │

00:00:13 #529 [Verbose] > │     match v2 with                                                            │

00:00:13 #530 [Verbose] > │     | US0_0(v3) -> (* Computed *)                                            │

00:00:13 #531 [Verbose] > │         v3                                                                   │

00:00:13 #532 [Verbose] > │     | US0_1(v4) -> (* NotComputed *)                                         │

00:00:13 #533 [Verbose] > │         let v5 : UH0 = v4 ()                                                 │

00:00:13 #534 [Verbose] > │         let v12 : UH0 =                                                      │

00:00:13 #535 [Verbose] > │             match v5 with                                                    │

00:00:13 #536 [Verbose] > │             | UH0_0(v7, v8) -> (* StreamCons *)                              │

00:00:13 #537 [Verbose] > │                 let v9 : (unit -> UH0) = method2(v0, v8)                     │

00:00:13 #538 [Verbose] > │                 UH0_0(v7, v9)                                                │

00:00:13 #539 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:13 #540 [Verbose] > │                 UH0_1                                                        │

00:00:13 #541 [Verbose] > │         let v13 : US0 = US0_0(v12)                                           │

00:00:13 #542 [Verbose] > │         v1.l0 <- v13                                                         │

00:00:13 #543 [Verbose] > │         v12                                                                  │

00:00:13 #544 [Verbose] > │ and method2 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) =                 │

00:00:13 #545 [Verbose] > │     let v2 : US0 = US0_1(v1)                                                 │

00:00:13 #546 [Verbose] > │     let v3 : Mut0 = {l0 = v2} : Mut0                                         │

00:00:13 #547 [Verbose] > │     closure2(v0, v3)                                                         │

00:00:13 #548 [Verbose] > │ and method3 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:13 #549 [Verbose] > │     match v1 with                                                            │

00:00:13 #550 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:13 #551 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:13 #552 [Verbose] > │         if v4 then                                                           │

00:00:13 #553 [Verbose] > │             US1_1(v2)                                                        │

00:00:13 #554 [Verbose] > │         else                                                                 │

00:00:13 #555 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:13 #556 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:13 #557 [Verbose] > │             method3(v6, v7)                                                  │

00:00:13 #558 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:13 #559 [Verbose] > │         US1_0                                                                │

00:00:13 #560 [Verbose] > │ and method0 () : unit =                                                      │

00:00:13 #561 [Verbose] > │     let v0 : int32 = 0                                                       │

00:00:13 #562 [Verbose] > │     let v1 : UH0 = method1(v0)                                               │

00:00:13 #563 [Verbose] > │     let v2 : (unit -> UH0) = closure1(v1)                                    │

00:00:13 #564 [Verbose] > │     let v3 : (unit -> UH0) = method2(v1, v2)                                 │

00:00:13 #565 [Verbose] > │     let v4 : UH0 = v3 ()                                                     │

00:00:13 #566 [Verbose] > │     let v5 : int32 = 3                                                       │

00:00:13 #567 [Verbose] > │     let v6 : US1 = method3(v5, v4)                                           │

00:00:13 #568 [Verbose] > │     let v10 : int32 =                                                        │

00:00:13 #569 [Verbose] > │         match v6 with                                                        │

00:00:13 #570 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:00:13 #571 [Verbose] > │             failwith<int32> "Option does not have a value."                  │

00:00:13 #572 [Verbose] > │         | US1_1(v7) -> (* Some *)                                            │

00:00:13 #573 [Verbose] > │             v7                                                               │

00:00:13 #574 [Verbose] > │     let v11 : bool = v10 = 3                                                 │

00:00:13 #575 [Verbose] > │     let v12 : string = $"_equal / actual: %A{v10} / expected: %A{3}"         │

00:00:13 #576 [Verbose] > │     let v13 : bool = v11 = false                                             │

00:00:13 #577 [Verbose] > │     if v13 then                                                              │

00:00:13 #578 [Verbose] > │         failwith<unit> v12                                                   │

00:00:13 #579 [Verbose] > │     let v14 : UH0 = v3 ()                                                    │

00:00:13 #580 [Verbose] > │     let v15 : int32 = 5                                                      │

00:00:13 #581 [Verbose] > │     let v16 : US1 = method3(v15, v14)                                        │

00:00:13 #582 [Verbose] > │     let v20 : int32 =                                                        │

00:00:13 #583 [Verbose] > │         match v16 with                                                       │

00:00:13 #584 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:00:13 #585 [Verbose] > │             failwith<int32> "Option does not have a value."                  │

00:00:13 #586 [Verbose] > │         | US1_1(v17) -> (* Some *)                                           │

00:00:13 #587 [Verbose] > │             v17                                                              │

00:00:13 #588 [Verbose] > │     let v21 : bool = v20 = 5                                                 │

00:00:13 #589 [Verbose] > │     let v22 : string = $"_equal / actual: %A{v20} / expected: %A{5}"         │

00:00:13 #590 [Verbose] > │     let v23 : bool = v21 = false                                             │

00:00:13 #591 [Verbose] > │     if v23 then                                                              │

00:00:13 #592 [Verbose] > │         failwith<unit> v22                                                   │

00:00:13 #593 [Verbose] > │ method0()                                                                    │

00:00:13 #594 [Verbose] > │                                                                              │

00:00:13 #595 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:13 #596 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:13 #597 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:13 #598 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:13 #599 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:13 #600 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:13 #601 [Verbose] > │                                                                              │

00:00:13 #602 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #603 [Verbose] >

00:00:13 #604 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #605 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #606 [Verbose] > │ ## unfold                                                                    │

00:00:13 #607 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #608 [Verbose] >

00:00:13 #609 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #610 [Verbose] > inl unfold f x0 =

00:00:13 #611 [Verbose] >     inl rec body x =

00:00:13 #612 [Verbose] >         match f x with

00:00:13 #613 [Verbose] >         | Some (x', y) => StreamCons (x', fun () => loop y)

00:00:13 #614 [Verbose] >         | None => StreamNil

00:00:13 #615 [Verbose] >     and inl loop x = join_body_unit body x0 x

00:00:13 #616 [Verbose] >     loop x0

00:00:13 #617 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3654-5454-5e030d2fbdb7\main.spi

00:00:13 #618 [Verbose] >

00:00:13 #619 [Verbose] > ╭─[ 148.36ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #620 [Verbose] > │ ()                                                                           │

00:00:13 #621 [Verbose] > │                                                                              │

00:00:13 #622 [Verbose] > │                                                                              │

00:00:13 #623 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #624 [Verbose] >

00:00:13 #625 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #626 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #627 [Verbose] > │ ## iterate                                                                   │

00:00:13 #628 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #629 [Verbose] >

00:00:13 #630 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #631 [Verbose] > inl iterate f =

00:00:13 #632 [Verbose] >     unfold (fun x => Some (x, f x))

00:00:13 #633 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3669-6976-686597feb7ca\main.spi

00:00:13 #634 [Verbose] >

00:00:13 #635 [Verbose] > ╭─[ 185.03ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #636 [Verbose] > │ ()                                                                           │

00:00:13 #637 [Verbose] > │                                                                              │

00:00:13 #638 [Verbose] > │                                                                              │

00:00:13 #639 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #640 [Verbose] >

00:00:13 #641 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #642 [Verbose] > // // test

00:00:13 #643 [Verbose] >

00:00:13 #644 [Verbose] > iterate ((*) 2) 1i32

00:00:13 #645 [Verbose] > |> item 10i32

00:00:13 #646 [Verbose] > |> _equal 1024

00:00:14 #647 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3688-8847-842b79204c92\main.spi

00:00:14 #648 [Verbose] >

00:00:14 #649 [Verbose] > ╭─[ 159.33ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #650 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #651 [Verbose] > │     let v0 : string = $"_equal / actual: %A{1024} / expected: %A{1024}"      │

00:00:14 #652 [Verbose] > │     ()                                                                       │

00:00:14 #653 [Verbose] > │ method0()                                                                    │

00:00:14 #654 [Verbose] > │                                                                              │

00:00:14 #655 [Verbose] > │                                                                              │

00:00:14 #656 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #657 [Verbose] >

00:00:14 #658 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:14 #659 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:14 #660 [Verbose] > │ ## take_while                                                                │

00:00:14 #661 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #662 [Verbose] >

00:00:14 #663 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #664 [Verbose] > inl take_while cond s =

00:00:14 #665 [Verbose] >     inl rec body i = function

00:00:14 #666 [Verbose] >         | StreamCons (st, fn) when cond st i => StreamCons (st, fun () => loop

00:00:14 #667 [Verbose] > (i + 1) (fn ()))

00:00:14 #668 [Verbose] >         | _ => StreamNil

00:00:14 #669 [Verbose] >     and inl loop i = join_body body i

00:00:14 #670 [Verbose] >     loop 0 s

00:00:14 #671 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3705-0519-0f218b61814e\main.spi

00:00:14 #672 [Verbose] >

00:00:14 #673 [Verbose] > ╭─[ 192.26ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #674 [Verbose] > │ ()                                                                           │

00:00:14 #675 [Verbose] > │                                                                              │

00:00:14 #676 [Verbose] > │                                                                              │

00:00:14 #677 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #678 [Verbose] >

00:00:14 #679 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:14 #680 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:14 #681 [Verbose] > │ ## sum                                                                       │

00:00:14 #682 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #683 [Verbose] >

00:00:14 #684 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #685 [Verbose] > inl sum seq =

00:00:14 #686 [Verbose] >     seq |> fold (+) 0

00:00:14 #687 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3725-2520-2bc256e5f06f\main.spi

00:00:14 #688 [Verbose] >

00:00:14 #689 [Verbose] > ╭─[ 157.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #690 [Verbose] > │ ()                                                                           │

00:00:14 #691 [Verbose] > │                                                                              │

00:00:14 #692 [Verbose] > │                                                                              │

00:00:14 #693 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #694 [Verbose] >

00:00:14 #695 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #696 [Verbose] > // // test

00:00:14 #697 [Verbose] >

00:00:14 #698 [Verbose] > listm.init 10i32 id

00:00:14 #699 [Verbose] > |> from_list

00:00:14 #700 [Verbose] > |> sum

00:00:14 #701 [Verbose] > |> _equal 45

00:00:14 #702 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3740-4088-42a3674acd26\main.spi

00:00:14 #703 [Verbose] >

00:00:14 #704 [Verbose] > ╭─[ 159.43ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #705 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #706 [Verbose] > │     let v0 : string = $"_equal / actual: %A{45} / expected: %A{45}"          │

00:00:14 #707 [Verbose] > │     ()                                                                       │

00:00:14 #708 [Verbose] > │ method0()                                                                    │

00:00:14 #709 [Verbose] > │                                                                              │

00:00:14 #710 [Verbose] > │                                                                              │

00:00:14 #711 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #712 [Verbose] >

00:00:14 #713 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #714 [Verbose] > // // test

00:00:14 #715 [Verbose] >

00:00:14 #716 [Verbose] > new_finite_stream print_and_return 10i32

00:00:14 #717 [Verbose] > |> take_while (fun n (_ : i32) => n < 5)

00:00:14 #718 [Verbose] > |> sum

00:00:14 #719 [Verbose] > |> _equal 10

00:00:14 #720 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3757-5720-51d360ba0610\main.spi

00:00:14 #721 [Verbose] >

00:00:14 #722 [Verbose] > ╭─[ 172.19ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #723 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #724 [Verbose] > │     printfn $"print_and_return / x: {0}"                                     │

00:00:14 #725 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:14 #726 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:14 #727 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:14 #728 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:14 #729 [Verbose] > │     printfn $"print_and_return / x: {5}"                                     │

00:00:14 #730 [Verbose] > │     let v0 : string = $"_equal / actual: %A{10} / expected: %A{10}"          │

00:00:14 #731 [Verbose] > │     ()                                                                       │

00:00:14 #732 [Verbose] > │ method0()                                                                    │

00:00:14 #733 [Verbose] > │                                                                              │

00:00:14 #734 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:14 #735 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:14 #736 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:14 #737 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:14 #738 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:14 #739 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:14 #740 [Verbose] > │                                                                              │

00:00:14 #741 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #742 [Verbose] >

00:00:14 #743 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #744 [Verbose] > // // test

00:00:14 #745 [Verbose] >

00:00:14 #746 [Verbose] > new_infinite_stream print_and_return

00:00:14 #747 [Verbose] > |> take_while (fun n (_ : i32) => n < 5i32)

00:00:14 #748 [Verbose] > |> sum

00:00:14 #749 [Verbose] > |> _equal 10

00:00:14 #750 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3775-7545-7e34ca259c79\main.spi

00:00:15 #751 [Verbose] >

00:00:15 #752 [Verbose] > ╭─[ 201.69ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #753 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:15 #754 [Verbose] > │     printfn $"print_and_return / x: {0}"                                     │

00:00:15 #755 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:15 #756 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:15 #757 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:15 #758 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:15 #759 [Verbose] > │     printfn $"print_and_return / x: {5}"                                     │

00:00:15 #760 [Verbose] > │     let v0 : string = $"_equal / actual: %A{10} / expected: %A{10}"          │

00:00:15 #761 [Verbose] > │     ()                                                                       │

00:00:15 #762 [Verbose] > │ method0()                                                                    │

00:00:15 #763 [Verbose] > │                                                                              │

00:00:15 #764 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:15 #765 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:15 #766 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:15 #767 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:15 #768 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:15 #769 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:15 #770 [Verbose] > │                                                                              │

00:00:15 #771 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #772 [Verbose] >

00:00:15 #773 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #774 [Verbose] > // // test

00:00:15 #775 [Verbose] >

00:00:15 #776 [Verbose] > iterate ((*) 6) 1i32

00:00:15 #777 [Verbose] > |> take_while (fun _ i => i <= 7i32)

00:00:15 #778 [Verbose] > |> to_list

00:00:15 #779 [Verbose] > |> _equal [[ 1i32; 6; 36; 216; 1296; 7776; 46656; 279936 ]]

00:00:15 #780 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3796-9672-9bdb5062a7c9\main.spi

00:00:15 #781 [Verbose] >

00:00:15 #782 [Verbose] > ╭─[ 213.00ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #783 [Verbose] > │ type UH0 =                                                                   │

00:00:15 #784 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:15 #785 [Verbose] > │     | UH0_1                                                                  │

00:00:15 #786 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:15 #787 [Verbose] > │     let v63 : UH0 = UH0_1                                                    │

00:00:15 #788 [Verbose] > │     let v64 : UH0 = UH0_0(279936, v63)                                       │

00:00:15 #789 [Verbose] > │     let v65 : UH0 = UH0_0(46656, v64)                                        │

00:00:15 #790 [Verbose] > │     let v66 : UH0 = UH0_0(7776, v65)                                         │

00:00:15 #791 [Verbose] > │     let v67 : UH0 = UH0_0(1296, v66)                                         │

00:00:15 #792 [Verbose] > │     let v68 : UH0 = UH0_0(216, v67)                                          │

00:00:15 #793 [Verbose] > │     let v69 : UH0 = UH0_0(36, v68)                                           │

00:00:15 #794 [Verbose] > │     let v70 : UH0 = UH0_0(6, v69)                                            │

00:00:15 #795 [Verbose] > │     let v71 : UH0 = UH0_0(1, v70)                                            │

00:00:15 #796 [Verbose] > │     let v72 : UH0 = UH0_1                                                    │

00:00:15 #797 [Verbose] > │     let v73 : UH0 = UH0_0(279936, v72)                                       │

00:00:15 #798 [Verbose] > │     let v74 : UH0 = UH0_0(46656, v73)                                        │

00:00:15 #799 [Verbose] > │     let v75 : UH0 = UH0_0(7776, v74)                                         │

00:00:15 #800 [Verbose] > │     let v76 : UH0 = UH0_0(1296, v75)                                         │

00:00:15 #801 [Verbose] > │     let v77 : UH0 = UH0_0(216, v76)                                          │

00:00:15 #802 [Verbose] > │     let v78 : UH0 = UH0_0(36, v77)                                           │

00:00:15 #803 [Verbose] > │     let v79 : UH0 = UH0_0(6, v78)                                            │

00:00:15 #804 [Verbose] > │     let v80 : UH0 = UH0_0(1, v79)                                            │

00:00:15 #805 [Verbose] > │     let v81 : string = $"_equal / actual: %A{v71} / expected: %A{v80}"       │

00:00:15 #806 [Verbose] > │     ()                                                                       │

00:00:15 #807 [Verbose] > │ method0()                                                                    │

00:00:15 #808 [Verbose] > │                                                                              │

00:00:15 #809 [Verbose] > │                                                                              │

00:00:15 #810 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #811 [Verbose] >

00:00:15 #812 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #813 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #814 [Verbose] > │ ## indexed                                                                   │

00:00:15 #815 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #816 [Verbose] >

00:00:15 #817 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #818 [Verbose] > inl indexed s =

00:00:15 #819 [Verbose] >     ((StreamNil, 0), s)

00:00:15 #820 [Verbose] >     ||> fold fun (acc, i) x =>

00:00:15 #821 [Verbose] >         StreamCons ((i, x), fun () => acc), i + 1

00:00:15 #822 [Verbose] >     |> fst

00:00:15 #823 [Verbose] >     |> rev

00:00:15 #824 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3819-1989-1cc45af180cc\main.spi

00:00:15 #825 [Verbose] >

00:00:15 #826 [Verbose] > ╭─[ 165.74ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #827 [Verbose] > │ ()                                                                           │

00:00:15 #828 [Verbose] > │                                                                              │

00:00:15 #829 [Verbose] > │                                                                              │

00:00:15 #830 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #831 [Verbose] >

00:00:15 #832 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #833 [Verbose] > // // test

00:00:15 #834 [Verbose] >

00:00:15 #835 [Verbose] > listm.init 10i32 ((*) 2)

00:00:15 #836 [Verbose] > |> from_list

00:00:15 #837 [Verbose] > |> indexed

00:00:15 #838 [Verbose] > |> item 5i32

00:00:15 #839 [Verbose] > |> _equal (5i32, 10i32)

00:00:15 #840 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3836-3647-3af180645333\main.spi

00:00:15 #841 [Verbose] >

00:00:15 #842 [Verbose] > ╭─[ 153.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #843 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:15 #844 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5, 10)} / expected:      │

00:00:15 #845 [Verbose] > │ %A{struct (5, 10)}"                                                          │

00:00:15 #846 [Verbose] > │     ()                                                                       │

00:00:15 #847 [Verbose] > │ method0()                                                                    │

00:00:15 #848 [Verbose] > │                                                                              │

00:00:15 #849 [Verbose] > │                                                                              │

00:00:15 #850 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #851 [Verbose] >

00:00:15 #852 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #853 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #854 [Verbose] > │ ## map                                                                       │

00:00:15 #855 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #856 [Verbose] >

00:00:15 #857 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #858 [Verbose] > inl map fn s =

00:00:15 #859 [Verbose] >     (s, StreamNil)

00:00:15 #860 [Verbose] >     ||> fold_back fun x acc =>

00:00:15 #861 [Verbose] >         StreamCons (fn x, fun () => acc)

00:00:15 #862 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3852-5257-5b02241e57e1\main.spi

00:00:15 #863 [Verbose] >

00:00:15 #864 [Verbose] > ╭─[ 166.11ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #865 [Verbose] > │ ()                                                                           │

00:00:15 #866 [Verbose] > │                                                                              │

00:00:15 #867 [Verbose] > │                                                                              │

00:00:15 #868 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #869 [Verbose] >

00:00:15 #870 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #871 [Verbose] > // // test

00:00:15 #872 [Verbose] >

00:00:15 #873 [Verbose] > listm.init 10i32 id

00:00:15 #874 [Verbose] > |> from_list

00:00:15 #875 [Verbose] > |> map ((*) 2)

00:00:15 #876 [Verbose] > |> item 5i32

00:00:15 #877 [Verbose] > |> _equal 10i32

00:00:15 #878 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3869-6949-659212e8a6eb\main.spi

00:00:15 #879 [Verbose] >

00:00:15 #880 [Verbose] > ╭─[ 164.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #881 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:15 #882 [Verbose] > │     let v0 : string = $"_equal / actual: %A{10} / expected: %A{10}"          │

00:00:15 #883 [Verbose] > │     ()                                                                       │

00:00:15 #884 [Verbose] > │ method0()                                                                    │

00:00:15 #885 [Verbose] > │                                                                              │

00:00:15 #886 [Verbose] > │                                                                              │

00:00:15 #887 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #888 [Verbose] >

00:00:15 #889 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #890 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #891 [Verbose] > │ ## zip_with                                                                  │

00:00:15 #892 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #893 [Verbose] >

00:00:15 #894 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #895 [Verbose] > inl zip_with fn s1 s2 =

00:00:15 #896 [Verbose] >     inl rec loop s1 s2 =

00:00:15 #897 [Verbose] >         match s1, s2 with

00:00:15 #898 [Verbose] >         | StreamCons (st1, fn1), StreamCons (st2, fn2) =>

00:00:15 #899 [Verbose] >             StreamCons (fn st1 st2, fun () => loop (fn1 ()) (fn2 ()))

00:00:15 #900 [Verbose] >         | StreamNil, _ | _, StreamNil => StreamNil

00:00:15 #901 [Verbose] >     loop s1 s2

00:00:15 #902 [Verbose] >

00:00:15 #903 [Verbose] > inl zip_with_ fn s1 s2 =

00:00:15 #904 [Verbose] >     let rec loop s1 s2 =

00:00:15 #905 [Verbose] >         match s1, s2 with

00:00:15 #906 [Verbose] >         | StreamCons (st1, fn1), StreamCons (st2, fn2) =>

00:00:15 #907 [Verbose] >             StreamCons (fn st1 st2, fun () => loop (fn1 ()) (fn2 ()))

00:00:15 #908 [Verbose] >         | StreamNil, _ | _, StreamNil => StreamNil

00:00:15 #909 [Verbose] >     loop s1 s2

00:00:16 #910 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3886-8651-8b42a4c7ce9b\main.spi

00:00:16 #911 [Verbose] >

00:00:16 #912 [Verbose] > ╭─[ 171.46ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #913 [Verbose] > │ ()                                                                           │

00:00:16 #914 [Verbose] > │                                                                              │

00:00:16 #915 [Verbose] > │                                                                              │

00:00:16 #916 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #917 [Verbose] >

00:00:16 #918 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #919 [Verbose] > // // test

00:00:16 #920 [Verbose] >

00:00:16 #921 [Verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))

00:00:16 #922 [Verbose] > ||> zip_with (+)

00:00:16 #923 [Verbose] > |> item 2i32

00:00:16 #924 [Verbose] > |> _equal 6

00:00:16 #925 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3904-0475-051d8676be1a\main.spi

00:00:16 #926 [Verbose] >

00:00:16 #927 [Verbose] > ╭─[ 163.82ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #928 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:16 #929 [Verbose] > │     let v0 : string = $"_equal / actual: %A{6} / expected: %A{6}"            │

00:00:16 #930 [Verbose] > │     ()                                                                       │

00:00:16 #931 [Verbose] > │ method0()                                                                    │

00:00:16 #932 [Verbose] > │                                                                              │

00:00:16 #933 [Verbose] > │                                                                              │

00:00:16 #934 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #935 [Verbose] >

00:00:16 #936 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:16 #937 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:16 #938 [Verbose] > │ ## zip                                                                       │

00:00:16 #939 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #940 [Verbose] >

00:00:16 #941 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #942 [Verbose] > inl zip s1 s2 =

00:00:16 #943 [Verbose] >     zip_with pair s1 s2

00:00:16 #944 [Verbose] >

00:00:16 #945 [Verbose] > inl zip_ s1 s2 =

00:00:16 #946 [Verbose] >     zip_with_ pair s1 s2

00:00:16 #947 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3921-2128-20cad737d991\main.spi

00:00:16 #948 [Verbose] >

00:00:16 #949 [Verbose] > ╭─[ 159.81ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #950 [Verbose] > │ ()                                                                           │

00:00:16 #951 [Verbose] > │                                                                              │

00:00:16 #952 [Verbose] > │                                                                              │

00:00:16 #953 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #954 [Verbose] >

00:00:16 #955 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #956 [Verbose] > // // test

00:00:16 #957 [Verbose] >

00:00:16 #958 [Verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))

00:00:16 #959 [Verbose] > ||> zip

00:00:16 #960 [Verbose] > |> item 5i32

00:00:16 #961 [Verbose] > |> _equal (5, 10)

00:00:16 #962 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3937-3749-3dd99eef6d07\main.spi

00:00:16 #963 [Verbose] >

00:00:16 #964 [Verbose] > ╭─[ 164.55ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #965 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:16 #966 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5, 10)} / expected:      │

00:00:16 #967 [Verbose] > │ %A{struct (5, 10)}"                                                          │

00:00:16 #968 [Verbose] > │     ()                                                                       │

00:00:16 #969 [Verbose] > │ method0()                                                                    │

00:00:16 #970 [Verbose] > │                                                                              │

00:00:16 #971 [Verbose] > │                                                                              │

00:00:16 #972 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #973 [Verbose] >

00:00:16 #974 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:16 #975 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:16 #976 [Verbose] > │ ## unzip                                                                     │

00:00:16 #977 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #978 [Verbose] >

00:00:16 #979 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #980 [Verbose] > inl unzip s =

00:00:16 #981 [Verbose] >     inl rec body s =

00:00:16 #982 [Verbose] >         match s with

00:00:16 #983 [Verbose] >         | StreamCons ((x, y), fn) =>

00:00:16 #984 [Verbose] >             inl xs, ys = loop (fn ())

00:00:16 #985 [Verbose] >             StreamCons (x, fun () => xs), StreamCons (y, fun () => ys)

00:00:16 #986 [Verbose] >         | StreamNil => pair StreamNil StreamNil

00:00:16 #987 [Verbose] >     and inl loop x =

00:00:16 #988 [Verbose] >         if var_is x |> not

00:00:16 #989 [Verbose] >         then body x

00:00:16 #990 [Verbose] >         else

00:00:16 #991 [Verbose] >             inl x = dyn x

00:00:16 #992 [Verbose] >             join body x

00:00:16 #993 [Verbose] >     loop s

00:00:16 #994 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3954-5459-5abb5668d941\main.spi

00:00:16 #995 [Verbose] >

00:00:16 #996 [Verbose] > ╭─[ 189.28ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #997 [Verbose] > │ ()                                                                           │

00:00:16 #998 [Verbose] > │                                                                              │

00:00:16 #999 [Verbose] > │                                                                              │

00:00:16 #1000 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #1001 [Verbose] >

00:00:16 #1002 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #1003 [Verbose] > // // test

00:00:16 #1004 [Verbose] >

00:00:16 #1005 [Verbose] > listm.init 10i32 id

00:00:16 #1006 [Verbose] > |> listm.map (fun x => x, x)

00:00:16 #1007 [Verbose] > |> from_list

00:00:16 #1008 [Verbose] > |> unzip

00:00:16 #1009 [Verbose] > |> fun x, y =>

00:00:16 #1010 [Verbose] >     x |> sum

00:00:16 #1011 [Verbose] >     |> _equal 45

00:00:16 #1012 [Verbose] >

00:00:16 #1013 [Verbose] >     y |> sum

00:00:16 #1014 [Verbose] >     |> _equal 45

00:00:16 #1015 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-3973-7380-7c2c7b6b97b4\main.spi

00:00:16 #1016 [Verbose] >

00:00:16 #1017 [Verbose] > ╭─[ 164.00ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #1018 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:16 #1019 [Verbose] > │     let v0 : string = $"_equal / actual: %A{45} / expected: %A{45}"          │

00:00:16 #1020 [Verbose] > │     let v1 : string = $"_equal / actual: %A{45} / expected: %A{45}"          │

00:00:16 #1021 [Verbose] > │     ()                                                                       │

00:00:16 #1022 [Verbose] > │ method0()                                                                    │

00:00:16 #1023 [Verbose] > │                                                                              │

00:00:16 #1024 [Verbose] > │                                                                              │

00:00:16 #1025 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #1026 [Verbose] > [NbConvertApp] Converting notebook stream.dib.ipynb to html

00:00:18 #1027 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:18 #1028 [Verbose] >   validate(nb)

00:00:19 #1029 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:19 #1030 [Verbose] >   return _pygments_highlight(

00:00:19 #1031 [Verbose] > [NbConvertApp] Writing 357092 bytes to stream.dib.html

00:00:20 #1032 [Debug] executeAsync / exitCode: 0 / output.Length: 58505

00:00:20 #1033 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 seq.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # seq                                                                        │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5022-2258-2cd789dd9f31\main.spi

00:00:09 #22 [Verbose] >

00:00:09 #23 [Verbose] > ╭─[ 5.27s - stdout ]───────────────────────────────────────────────────────────╮

00:00:09 #24 [Verbose] > │ ()                                                                           │

00:00:09 #25 [Verbose] > │                                                                              │

00:00:09 #26 [Verbose] > │                                                                              │

00:00:09 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #28 [Verbose] >

00:00:09 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #31 [Verbose] > │ ## seq                                                                       │

00:00:09 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #33 [Verbose] >

00:00:09 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #35 [Verbose] > type seq dim el = dim -> option el

00:00:09 #36 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5323-2312-2bb4c59dd2dc\main.spi

00:00:09 #37 [Verbose] >

00:00:09 #38 [Verbose] > ╭─[ 188.38ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #39 [Verbose] > │ ()                                                                           │

00:00:09 #40 [Verbose] > │                                                                              │

00:00:09 #41 [Verbose] > │                                                                              │

00:00:09 #42 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #43 [Verbose] >

00:00:09 #44 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #45 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #46 [Verbose] > │ ## item                                                                      │

00:00:09 #47 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #48 [Verbose] >

00:00:09 #49 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #50 [Verbose] > inl item n seq =

00:00:09 #51 [Verbose] >     seq n

00:00:09 #52 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5342-4215-485ae3556130\main.spi

00:00:09 #53 [Verbose] >

00:00:09 #54 [Verbose] > ╭─[ 150.89ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #55 [Verbose] > │ ()                                                                           │

00:00:09 #56 [Verbose] > │                                                                              │

00:00:09 #57 [Verbose] > │                                                                              │

00:00:09 #58 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #59 [Verbose] >

00:00:09 #60 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #61 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #62 [Verbose] > │ ## from_list                                                                 │

00:00:09 #63 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #64 [Verbose] >

00:00:09 #65 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #66 [Verbose] > inl from_list list =

00:00:09 #67 [Verbose] >     fun n =>

00:00:09 #68 [Verbose] >         list |> listm'.try_item n

00:00:09 #69 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5357-5765-5bf49a8f8483\main.spi

00:00:09 #70 [Verbose] >

00:00:09 #71 [Verbose] > ╭─[ 203.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #72 [Verbose] > │ ()                                                                           │

00:00:09 #73 [Verbose] > │                                                                              │

00:00:09 #74 [Verbose] > │                                                                              │

00:00:09 #75 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #76 [Verbose] >

00:00:09 #77 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #78 [Verbose] > // // test

00:00:09 #79 [Verbose] >

00:00:09 #80 [Verbose] > listm.init 10i32 print_and_return

00:00:09 #81 [Verbose] > |> from_list

00:00:09 #82 [Verbose] > |> item 5i32

00:00:09 #83 [Verbose] > |> _equal (Some 5i32)

00:00:09 #84 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5378-7827-7cb7a48716d0\main.spi

00:00:11 #85 [Verbose] >

00:00:11 #86 [Verbose] > ╭─[ 1.46s - stdout ]───────────────────────────────────────────────────────────╮

00:00:11 #87 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:11 #88 [Verbose] > │     | US0_0                                                                  │

00:00:11 #89 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:11 #90 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #91 [Verbose] > │     printfn $"print_and_return / x: {0}"                                     │

00:00:11 #92 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:11 #93 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:11 #94 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:11 #95 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:11 #96 [Verbose] > │     printfn $"print_and_return / x: {5}"                                     │

00:00:11 #97 [Verbose] > │     printfn $"print_and_return / x: {6}"                                     │

00:00:11 #98 [Verbose] > │     printfn $"print_and_return / x: {7}"                                     │

00:00:11 #99 [Verbose] > │     printfn $"print_and_return / x: {8}"                                     │

00:00:11 #100 [Verbose] > │     printfn $"print_and_return / x: {9}"                                     │

00:00:11 #101 [Verbose] > │     let v3 : US0 = US0_1(5)                                                  │

00:00:11 #102 [Verbose] > │     let v4 : US0 = US0_1(5)                                                  │

00:00:11 #103 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:11 #104 [Verbose] > │     ()                                                                       │

00:00:11 #105 [Verbose] > │ method0()                                                                    │

00:00:11 #106 [Verbose] > │                                                                              │

00:00:11 #107 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:11 #108 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:11 #109 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:11 #110 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:11 #111 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:11 #112 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:11 #113 [Verbose] > │ print_and_return / x: 6                                                      │

00:00:11 #114 [Verbose] > │ print_and_return / x: 7                                                      │

00:00:11 #115 [Verbose] > │ print_and_return / x: 8                                                      │

00:00:11 #116 [Verbose] > │ print_and_return / x: 9                                                      │

00:00:11 #117 [Verbose] > │                                                                              │

00:00:11 #118 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #119 [Verbose] >

00:00:11 #120 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #121 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #122 [Verbose] > │ ## indexed                                                                   │

00:00:11 #123 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #124 [Verbose] >

00:00:11 #125 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #126 [Verbose] > inl indexed s =

00:00:11 #127 [Verbose] >     fun n =>

00:00:11 #128 [Verbose] >         s |> item n |> optionm.map (fun x => n, x)

00:00:11 #129 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5526-2617-2674721a434d\main.spi

00:00:11 #130 [Verbose] >

00:00:11 #131 [Verbose] > ╭─[ 153.08ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #132 [Verbose] > │ ()                                                                           │

00:00:11 #133 [Verbose] > │                                                                              │

00:00:11 #134 [Verbose] > │                                                                              │

00:00:11 #135 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #136 [Verbose] >

00:00:11 #137 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #138 [Verbose] > // // test

00:00:11 #139 [Verbose] >

00:00:11 #140 [Verbose] > listm.init 10i32 ((*) 2)

00:00:11 #141 [Verbose] > |> from_list

00:00:11 #142 [Verbose] > |> indexed

00:00:11 #143 [Verbose] > |> item 5i32

00:00:11 #144 [Verbose] > |> _equal (Some (5i32, 10i32))

00:00:11 #145 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5541-4152-44c015272b65\main.spi

00:00:11 #146 [Verbose] >

00:00:11 #147 [Verbose] > ╭─[ 225.84ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #148 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:11 #149 [Verbose] > │     | US0_0                                                                  │

00:00:11 #150 [Verbose] > │     | US0_1 of f1_0 : int32 * f1_1 : int32                                   │

00:00:11 #151 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #152 [Verbose] > │     let v3 : US0 = US0_1(5, 10)                                              │

00:00:11 #153 [Verbose] > │     let v4 : US0 = US0_1(5, 10)                                              │

00:00:11 #154 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:11 #155 [Verbose] > │     ()                                                                       │

00:00:11 #156 [Verbose] > │ method0()                                                                    │

00:00:11 #157 [Verbose] > │                                                                              │

00:00:11 #158 [Verbose] > │                                                                              │

00:00:11 #159 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #160 [Verbose] >

00:00:11 #161 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #162 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #163 [Verbose] > │ ## zip                                                                       │

00:00:11 #164 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #165 [Verbose] >

00:00:11 #166 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #167 [Verbose] > inl zip n seq1 seq2 =

00:00:11 #168 [Verbose] >     seq1 n, seq2 n

00:00:11 #169 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5564-6486-652cd339f5af\main.spi

00:00:11 #170 [Verbose] >

00:00:11 #171 [Verbose] > ╭─[ 129.12ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #172 [Verbose] > │ ()                                                                           │

00:00:11 #173 [Verbose] > │                                                                              │

00:00:11 #174 [Verbose] > │                                                                              │

00:00:11 #175 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #176 [Verbose] >

00:00:11 #177 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #178 [Verbose] > // // test

00:00:11 #179 [Verbose] >

00:00:11 #180 [Verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))

00:00:11 #181 [Verbose] > ||> zip 5i32

00:00:11 #182 [Verbose] > |> _equal (Some 5, Some 10)

00:00:11 #183 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5577-7799-7a3bb6e13d82\main.spi

00:00:11 #184 [Verbose] >

00:00:11 #185 [Verbose] > ╭─[ 217.42ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #186 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:11 #187 [Verbose] > │     | US0_0                                                                  │

00:00:11 #188 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:11 #189 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #190 [Verbose] > │     let v6 : US0 = US0_1(5)                                                  │

00:00:11 #191 [Verbose] > │     let v7 : US0 = US0_1(10)                                                 │

00:00:11 #192 [Verbose] > │     let v8 : US0 = US0_1(5)                                                  │

00:00:11 #193 [Verbose] > │     let v9 : US0 = US0_1(10)                                                 │

00:00:11 #194 [Verbose] > │     let v10 : string = $"_equal / actual: %A{struct (v6, v7)} / expected:    │

00:00:11 #195 [Verbose] > │ %A{struct (v8, v9)}"                                                         │

00:00:11 #196 [Verbose] > │     ()                                                                       │

00:00:11 #197 [Verbose] > │ method0()                                                                    │

00:00:11 #198 [Verbose] > │                                                                              │

00:00:11 #199 [Verbose] > │                                                                              │

00:00:11 #200 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #201 [Verbose] >

00:00:11 #202 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #203 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #204 [Verbose] > │ ## zip_with                                                                  │

00:00:11 #205 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #206 [Verbose] >

00:00:11 #207 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #208 [Verbose] > inl zip_with fn seq1 seq2 =

00:00:11 #209 [Verbose] >     fun n =>

00:00:11 #210 [Verbose] >         fn (seq1 n) (seq2 n)

00:00:11 #211 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5601-0105-00e75f5b5e0b\main.spi

00:00:11 #212 [Verbose] >

00:00:11 #213 [Verbose] > ╭─[ 131.76ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #214 [Verbose] > │ ()                                                                           │

00:00:11 #215 [Verbose] > │                                                                              │

00:00:11 #216 [Verbose] > │                                                                              │

00:00:11 #217 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #218 [Verbose] >

00:00:11 #219 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #220 [Verbose] > // // test

00:00:11 #221 [Verbose] >

00:00:11 #222 [Verbose] > ((listm.init 10i32 id |> from_list), (listm.init 10i32 ((*) 2) |> from_list))

00:00:11 #223 [Verbose] > ||> zip_with (optionm'.choose (+))

00:00:11 #224 [Verbose] > |> item 2i32

00:00:11 #225 [Verbose] > |> _equal (Some 6)

00:00:12 #226 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5614-1433-1c9812e66e77\main.spi

00:00:12 #227 [Verbose] >

00:00:12 #228 [Verbose] > ╭─[ 169.79ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #229 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:12 #230 [Verbose] > │     | US0_0                                                                  │

00:00:12 #231 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:12 #232 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #233 [Verbose] > │     let v3 : US0 = US0_1(6)                                                  │

00:00:12 #234 [Verbose] > │     let v4 : US0 = US0_1(6)                                                  │

00:00:12 #235 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:12 #236 [Verbose] > │     ()                                                                       │

00:00:12 #237 [Verbose] > │ method0()                                                                    │

00:00:12 #238 [Verbose] > │                                                                              │

00:00:12 #239 [Verbose] > │                                                                              │

00:00:12 #240 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #241 [Verbose] >

00:00:12 #242 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #243 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #244 [Verbose] > │ ## fold                                                                      │

00:00:12 #245 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #246 [Verbose] >

00:00:12 #247 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #248 [Verbose] > inl fold fn init seq =

00:00:12 #249 [Verbose] >     inl rec loop acc n =

00:00:12 #250 [Verbose] >         match seq n with

00:00:12 #251 [Verbose] >         | Some x => loop (fn acc x) (n + 1)

00:00:12 #252 [Verbose] >         | None => acc

00:00:12 #253 [Verbose] >     loop init 0

00:00:12 #254 [Verbose] >

00:00:12 #255 [Verbose] > inl fold_ fn init seq =

00:00:12 #256 [Verbose] >     let rec loop acc n =

00:00:12 #257 [Verbose] >         match seq n with

00:00:12 #258 [Verbose] >         | Some x => loop (fn acc x) (n + 1)

00:00:12 #259 [Verbose] >         | None => acc

00:00:12 #260 [Verbose] >     loop init 0

00:00:12 #261 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5632-3233-39b6210f10af\main.spi

00:00:12 #262 [Verbose] >

00:00:12 #263 [Verbose] > ╭─[ 142.70ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #264 [Verbose] > │ ()                                                                           │

00:00:12 #265 [Verbose] > │                                                                              │

00:00:12 #266 [Verbose] > │                                                                              │

00:00:12 #267 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #268 [Verbose] >

00:00:12 #269 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #270 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #271 [Verbose] > │ ## sum                                                                       │

00:00:12 #272 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #273 [Verbose] >

00:00:12 #274 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #275 [Verbose] > inl sum seq =

00:00:12 #276 [Verbose] >     seq |> fold (+) 0

00:00:12 #277 [Verbose] >

00:00:12 #278 [Verbose] > inl sum_ seq =

00:00:12 #279 [Verbose] >     seq |> fold_ (+) 0

00:00:12 #280 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5647-4737-48cd7f9eb159\main.spi

00:00:12 #281 [Verbose] >

00:00:12 #282 [Verbose] > ╭─[ 151.03ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #283 [Verbose] > │ ()                                                                           │

00:00:12 #284 [Verbose] > │                                                                              │

00:00:12 #285 [Verbose] > │                                                                              │

00:00:12 #286 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #287 [Verbose] >

00:00:12 #288 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #289 [Verbose] > // // test

00:00:12 #290 [Verbose] >

00:00:12 #291 [Verbose] > listm.init 10i32 id

00:00:12 #292 [Verbose] > |> from_list

00:00:12 #293 [Verbose] > |> fun f (n : i32) => f n

00:00:12 #294 [Verbose] > |> sum

00:00:12 #295 [Verbose] > |> _equal 45

00:00:12 #296 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5662-6239-683626966776\main.spi

00:00:12 #297 [Verbose] >

00:00:12 #298 [Verbose] > ╭─[ 162.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #299 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #300 [Verbose] > │     let v0 : string = $"_equal / actual: %A{45} / expected: %A{45}"          │

00:00:12 #301 [Verbose] > │     ()                                                                       │

00:00:12 #302 [Verbose] > │ method0()                                                                    │

00:00:12 #303 [Verbose] > │                                                                              │

00:00:12 #304 [Verbose] > │                                                                              │

00:00:12 #305 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #306 [Verbose] >

00:00:12 #307 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #308 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #309 [Verbose] > │ ## to_list                                                                   │

00:00:12 #310 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #311 [Verbose] >

00:00:12 #312 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #313 [Verbose] > inl to_list seq =

00:00:12 #314 [Verbose] >     seq

00:00:12 #315 [Verbose] >     |> fold (fun acc x => x :: acc) [[]]

00:00:12 #316 [Verbose] >     |> listm.rev

00:00:12 #317 [Verbose] >

00:00:12 #318 [Verbose] > inl to_list_ seq =

00:00:12 #319 [Verbose] >     seq

00:00:12 #320 [Verbose] >     |> fold_ (fun acc x => x :: acc) [[]]

00:00:12 #321 [Verbose] >     |> listm.rev

00:00:12 #322 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5679-7922-7e12573c5c50\main.spi

00:00:12 #323 [Verbose] >

00:00:12 #324 [Verbose] > ╭─[ 173.91ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #325 [Verbose] > │ ()                                                                           │

00:00:12 #326 [Verbose] > │                                                                              │

00:00:12 #327 [Verbose] > │                                                                              │

00:00:12 #328 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #329 [Verbose] >

00:00:12 #330 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #331 [Verbose] > // // test

00:00:12 #332 [Verbose] >

00:00:12 #333 [Verbose] > listm.init 10i32 id

00:00:12 #334 [Verbose] > |> from_list

00:00:12 #335 [Verbose] > |> fun f (n : i32) => f n

00:00:12 #336 [Verbose] > |> to_list

00:00:12 #337 [Verbose] > |> _equal (listm.init 10i32 id)

00:00:12 #338 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5696-9691-9e286ce1f214\main.spi

00:00:12 #339 [Verbose] >

00:00:12 #340 [Verbose] > ╭─[ 211.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #341 [Verbose] > │ type UH0 =                                                                   │

00:00:12 #342 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:12 #343 [Verbose] > │     | UH0_1                                                                  │

00:00:12 #344 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #345 [Verbose] > │     let v88 : UH0 = UH0_1                                                    │

00:00:12 #346 [Verbose] > │     let v89 : UH0 = UH0_0(9, v88)                                            │

00:00:12 #347 [Verbose] > │     let v90 : UH0 = UH0_0(8, v89)                                            │

00:00:12 #348 [Verbose] > │     let v91 : UH0 = UH0_0(7, v90)                                            │

00:00:12 #349 [Verbose] > │     let v92 : UH0 = UH0_0(6, v91)                                            │

00:00:12 #350 [Verbose] > │     let v93 : UH0 = UH0_0(5, v92)                                            │

00:00:12 #351 [Verbose] > │     let v94 : UH0 = UH0_0(4, v93)                                            │

00:00:12 #352 [Verbose] > │     let v95 : UH0 = UH0_0(3, v94)                                            │

00:00:12 #353 [Verbose] > │     let v96 : UH0 = UH0_0(2, v95)                                            │

00:00:12 #354 [Verbose] > │     let v97 : UH0 = UH0_0(1, v96)                                            │

00:00:12 #355 [Verbose] > │     let v98 : UH0 = UH0_0(0, v97)                                            │

00:00:12 #356 [Verbose] > │     let v99 : UH0 = UH0_1                                                    │

00:00:12 #357 [Verbose] > │     let v100 : UH0 = UH0_0(9, v99)                                           │

00:00:12 #358 [Verbose] > │     let v101 : UH0 = UH0_0(8, v100)                                          │

00:00:12 #359 [Verbose] > │     let v102 : UH0 = UH0_0(7, v101)                                          │

00:00:12 #360 [Verbose] > │     let v103 : UH0 = UH0_0(6, v102)                                          │

00:00:12 #361 [Verbose] > │     let v104 : UH0 = UH0_0(5, v103)                                          │

00:00:12 #362 [Verbose] > │     let v105 : UH0 = UH0_0(4, v104)                                          │

00:00:12 #363 [Verbose] > │     let v106 : UH0 = UH0_0(3, v105)                                          │

00:00:12 #364 [Verbose] > │     let v107 : UH0 = UH0_0(2, v106)                                          │

00:00:12 #365 [Verbose] > │     let v108 : UH0 = UH0_0(1, v107)                                          │

00:00:12 #366 [Verbose] > │     let v109 : UH0 = UH0_0(0, v108)                                          │

00:00:12 #367 [Verbose] > │     let v110 : string = $"_equal / actual: %A{v98} / expected: %A{v109}"     │

00:00:12 #368 [Verbose] > │     ()                                                                       │

00:00:12 #369 [Verbose] > │ method0()                                                                    │

00:00:12 #370 [Verbose] > │                                                                              │

00:00:12 #371 [Verbose] > │                                                                              │

00:00:12 #372 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #373 [Verbose] >

00:00:12 #374 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #375 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #376 [Verbose] > │ ## take_while                                                                │

00:00:12 #377 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #378 [Verbose] >

00:00:12 #379 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #380 [Verbose] > inl take_while cond seq =

00:00:12 #381 [Verbose] >     inl rec loop acc i =

00:00:12 #382 [Verbose] >         match seq i with

00:00:12 #383 [Verbose] >         | Some st when cond st i => loop (st :: acc) (i + 1)

00:00:12 #384 [Verbose] >         | _ => acc |> listm.rev

00:00:12 #385 [Verbose] >     loop [[]] 0

00:00:13 #386 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5719-1991-1aeb5327f503\main.spi

00:00:13 #387 [Verbose] >

00:00:13 #388 [Verbose] > ╭─[ 154.72ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #389 [Verbose] > │ ()                                                                           │

00:00:13 #390 [Verbose] > │                                                                              │

00:00:13 #391 [Verbose] > │                                                                              │

00:00:13 #392 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #393 [Verbose] >

00:00:13 #394 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #395 [Verbose] > // // test

00:00:13 #396 [Verbose] >

00:00:13 #397 [Verbose] > listm.init 10i32 id

00:00:13 #398 [Verbose] > |> from_list

00:00:13 #399 [Verbose] > |> take_while (fun n (_ : i32) => n < 5)

00:00:13 #400 [Verbose] > |> listm'.sum

00:00:13 #401 [Verbose] > |> _equal 10

00:00:13 #402 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5735-3553-3cff1232911a\main.spi

00:00:13 #403 [Verbose] >

00:00:13 #404 [Verbose] > ╭─[ 157.64ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #405 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:13 #406 [Verbose] > │     let v0 : string = $"_equal / actual: %A{10} / expected: %A{10}"          │

00:00:13 #407 [Verbose] > │     ()                                                                       │

00:00:13 #408 [Verbose] > │ method0()                                                                    │

00:00:13 #409 [Verbose] > │                                                                              │

00:00:13 #410 [Verbose] > │                                                                              │

00:00:13 #411 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #412 [Verbose] >

00:00:13 #413 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #414 [Verbose] > // // test

00:00:13 #415 [Verbose] >

00:00:13 #416 [Verbose] > stream.new_finite_stream print_and_return 10i32

00:00:13 #417 [Verbose] > |> flip stream.try_item

00:00:13 #418 [Verbose] > |> take_while (fun n (_ : i32) => n < 5)

00:00:13 #419 [Verbose] > |> listm'.sum

00:00:13 #420 [Verbose] > |> _equal 10

00:00:13 #421 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5751-5175-54b8950429ef\main.spi

00:00:13 #422 [Verbose] >

00:00:13 #423 [Verbose] > ╭─[ 201.30ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #424 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:13 #425 [Verbose] > │     printfn $"print_and_return / x: {0}"                                     │

00:00:13 #426 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:13 #427 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:13 #428 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:13 #429 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:13 #430 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:13 #431 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:13 #432 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:13 #433 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:13 #434 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:13 #435 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:13 #436 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:13 #437 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:13 #438 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:13 #439 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:13 #440 [Verbose] > │     printfn $"print_and_return / x: {5}"                                     │

00:00:13 #441 [Verbose] > │     let v0 : string = $"_equal / actual: %A{10} / expected: %A{10}"          │

00:00:13 #442 [Verbose] > │     ()                                                                       │

00:00:13 #443 [Verbose] > │ method0()                                                                    │

00:00:13 #444 [Verbose] > │                                                                              │

00:00:13 #445 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:13 #446 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:13 #447 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:13 #448 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:13 #449 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:13 #450 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:13 #451 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:13 #452 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:13 #453 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:13 #454 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:13 #455 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:13 #456 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:13 #457 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:13 #458 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:13 #459 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:13 #460 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:13 #461 [Verbose] > │                                                                              │

00:00:13 #462 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #463 [Verbose] >

00:00:13 #464 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #465 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #466 [Verbose] > │ ## take_while_                                                               │

00:00:13 #467 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #468 [Verbose] >

00:00:13 #469 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #470 [Verbose] > inl take_while_ cond seq =

00:00:13 #471 [Verbose] >     let rec loop acc i =

00:00:13 #472 [Verbose] >         match seq i with

00:00:13 #473 [Verbose] >         | Some st when cond st i => loop (st :: acc) (i + 1)

00:00:13 #474 [Verbose] >         | _ => acc |> listm.rev

00:00:13 #475 [Verbose] >     loop [[]] 0

00:00:13 #476 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5773-7390-7816f7cbfa98\main.spi

00:00:13 #477 [Verbose] >

00:00:13 #478 [Verbose] > ╭─[ 201.05ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #479 [Verbose] > │ ()                                                                           │

00:00:13 #480 [Verbose] > │                                                                              │

00:00:13 #481 [Verbose] > │                                                                              │

00:00:13 #482 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #483 [Verbose] >

00:00:13 #484 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #485 [Verbose] > // // test

00:00:13 #486 [Verbose] >

00:00:13 #487 [Verbose] > stream.new_infinite_stream_ print_and_return

00:00:13 #488 [Verbose] > |> flip stream.try_item

00:00:13 #489 [Verbose] > |> take_while_ (fun n (_ : i32) => n < 5i32)

00:00:13 #490 [Verbose] > |> listm'.sum

00:00:13 #491 [Verbose] > |> _equal 10

00:00:13 #492 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5794-9419-9fe7b2fe1f68\main.spi

00:00:14 #493 [Verbose] >

00:00:14 #494 [Verbose] > ╭─[ 502.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #495 [Verbose] > │ type UH0 =                                                                   │

00:00:14 #496 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:14 #497 [Verbose] > │     | UH0_1                                                                  │

00:00:14 #498 [Verbose] > │ and UH1 =                                                                    │

00:00:14 #499 [Verbose] > │     | UH1_0 of int32 * UH1                                                   │

00:00:14 #500 [Verbose] > │     | UH1_1                                                                  │

00:00:14 #501 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:14 #502 [Verbose] > │     | US0_0                                                                  │

00:00:14 #503 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:14 #504 [Verbose] > │ let rec closure0 (v0 : int32) () : UH0 =                                     │

00:00:14 #505 [Verbose] > │     let v1 : int32 = v0 + 1                                                  │

00:00:14 #506 [Verbose] > │     method1(v1)                                                              │

00:00:14 #507 [Verbose] > │ and method1 (v0 : int32) : UH0 =                                             │

00:00:14 #508 [Verbose] > │     printfn $"print_and_return / x: {v0}"                                    │

00:00:14 #509 [Verbose] > │     let v1 : (unit -> UH0) = closure0(v0)                                    │

00:00:14 #510 [Verbose] > │     UH0_0(v0, v1)                                                            │

00:00:14 #511 [Verbose] > │ and method3 (v0 : int32, v1 : UH0) : US0 =                                   │

00:00:14 #512 [Verbose] > │     match v1 with                                                            │

00:00:14 #513 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:14 #514 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:14 #515 [Verbose] > │         if v4 then                                                           │

00:00:14 #516 [Verbose] > │             US0_1(v2)                                                        │

00:00:14 #517 [Verbose] > │         else                                                                 │

00:00:14 #518 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:14 #519 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:14 #520 [Verbose] > │             method3(v6, v7)                                                  │

00:00:14 #521 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:14 #522 [Verbose] > │         US0_0                                                                │

00:00:14 #523 [Verbose] > │ and method4 (v0 : UH1, v1 : UH1) : UH1 =                                     │

00:00:14 #524 [Verbose] > │     match v0 with                                                            │

00:00:14 #525 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:14 #526 [Verbose] > │         let v4 : UH1 = UH1_0(v2, v1)                                         │

00:00:14 #527 [Verbose] > │         method4(v3, v4)                                                      │

00:00:14 #528 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:14 #529 [Verbose] > │         v1                                                                   │

00:00:14 #530 [Verbose] > │ and method2 (v0 : UH0, v1 : UH1, v2 : int32) : UH1 =                         │

00:00:14 #531 [Verbose] > │     let v3 : US0 = method3(v2, v0)                                           │

00:00:14 #532 [Verbose] > │     match v3 with                                                            │

00:00:14 #533 [Verbose] > │     | US0_1(v4) -> (* Some *)                                                │

00:00:14 #534 [Verbose] > │         let v5 : bool = v4 < 5                                               │

00:00:14 #535 [Verbose] > │         if v5 then                                                           │

00:00:14 #536 [Verbose] > │             let v6 : UH1 = UH1_0(v4, v1)                                     │

00:00:14 #537 [Verbose] > │             let v7 : int32 = v2 + 1                                          │

00:00:14 #538 [Verbose] > │             method2(v0, v6, v7)                                              │

00:00:14 #539 [Verbose] > │         else                                                                 │

00:00:14 #540 [Verbose] > │             let v9 : UH1 = UH1_1                                             │

00:00:14 #541 [Verbose] > │             method4(v1, v9)                                                  │

00:00:14 #542 [Verbose] > │     | _ ->                                                                   │

00:00:14 #543 [Verbose] > │         let v12 : UH1 = UH1_1                                                │

00:00:14 #544 [Verbose] > │         method4(v1, v12)                                                     │

00:00:14 #545 [Verbose] > │ and method5 (v0 : UH1, v1 : int32) : int32 =                                 │

00:00:14 #546 [Verbose] > │     match v0 with                                                            │

00:00:14 #547 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:14 #548 [Verbose] > │         let v4 : int32 = v1 + v2                                             │

00:00:14 #549 [Verbose] > │         method5(v3, v4)                                                      │

00:00:14 #550 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:14 #551 [Verbose] > │         v1                                                                   │

00:00:14 #552 [Verbose] > │ and method0 () : unit =                                                      │

00:00:14 #553 [Verbose] > │     let v0 : int32 = 0                                                       │

00:00:14 #554 [Verbose] > │     let v1 : UH0 = method1(v0)                                               │

00:00:14 #555 [Verbose] > │     let v2 : UH1 = UH1_1                                                     │

00:00:14 #556 [Verbose] > │     let v3 : int32 = 0                                                       │

00:00:14 #557 [Verbose] > │     let v4 : UH1 = method2(v1, v2, v3)                                       │

00:00:14 #558 [Verbose] > │     let v5 : int32 = 0                                                       │

00:00:14 #559 [Verbose] > │     let v6 : int32 = method5(v4, v5)                                         │

00:00:14 #560 [Verbose] > │     let v7 : bool = v6 = 10                                                  │

00:00:14 #561 [Verbose] > │     let v8 : string = $"_equal / actual: %A{v6} / expected: %A{10}"          │

00:00:14 #562 [Verbose] > │     let v9 : bool = v7 = false                                               │

00:00:14 #563 [Verbose] > │     if v9 then                                                               │

00:00:14 #564 [Verbose] > │         failwith<unit> v8                                                    │

00:00:14 #565 [Verbose] > │ method0()                                                                    │

00:00:14 #566 [Verbose] > │                                                                              │

00:00:14 #567 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:14 #568 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:14 #569 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:14 #570 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:14 #571 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:14 #572 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:14 #573 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:14 #574 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:14 #575 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:14 #576 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:14 #577 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:14 #578 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:14 #579 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:14 #580 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:14 #581 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:14 #582 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:14 #583 [Verbose] > │                                                                              │

00:00:14 #584 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #585 [Verbose] >

00:00:14 #586 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #587 [Verbose] > // // test

00:00:14 #588 [Verbose] >

00:00:14 #589 [Verbose] > stream.new_infinite_stream_ print_and_return

00:00:14 #590 [Verbose] > |> stream.memoize

00:00:14 #591 [Verbose] > |> fun list =>

00:00:14 #592 [Verbose] >     inl list = list ()

00:00:14 #593 [Verbose] >     fun n =>

00:00:14 #594 [Verbose] >         list |> stream.try_item n

00:00:14 #595 [Verbose] > |> take_while_ (fun n (_ : i32) => n < 5i32)

00:00:14 #596 [Verbose] > |> listm'.sum

00:00:14 #597 [Verbose] > |> _equal 10

00:00:14 #598 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5848-4820-484a2d585c21\main.spi

00:00:14 #599 [Verbose] >

00:00:14 #600 [Verbose] > ╭─[ 338.78ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #601 [Verbose] > │ type UH0 =                                                                   │

00:00:14 #602 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:14 #603 [Verbose] > │     | UH0_1                                                                  │

00:00:14 #604 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:14 #605 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:14 #606 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:14 #607 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:14 #608 [Verbose] > │ and UH1 =                                                                    │

00:00:14 #609 [Verbose] > │     | UH1_0 of int32 * UH1                                                   │

00:00:14 #610 [Verbose] > │     | UH1_1                                                                  │

00:00:14 #611 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:14 #612 [Verbose] > │     | US1_0                                                                  │

00:00:14 #613 [Verbose] > │     | US1_1 of f1_0 : int32                                                  │

00:00:14 #614 [Verbose] > │ let rec closure0 (v0 : int32) () : UH0 =                                     │

00:00:14 #615 [Verbose] > │     let v1 : int32 = v0 + 1                                                  │

00:00:14 #616 [Verbose] > │     method1(v1)                                                              │

00:00:14 #617 [Verbose] > │ and method1 (v0 : int32) : UH0 =                                             │

00:00:14 #618 [Verbose] > │     printfn $"print_and_return / x: {v0}"                                    │

00:00:14 #619 [Verbose] > │     let v1 : (unit -> UH0) = closure0(v0)                                    │

00:00:14 #620 [Verbose] > │     UH0_0(v0, v1)                                                            │

00:00:14 #621 [Verbose] > │ and closure1 (v0 : UH0) () : UH0 =                                           │

00:00:14 #622 [Verbose] > │     v0                                                                       │

00:00:14 #623 [Verbose] > │ and closure2 (v0 : UH0, v1 : Mut0) () : UH0 =                                │

00:00:14 #624 [Verbose] > │     let v2 : US0 = v1.l0                                                     │

00:00:14 #625 [Verbose] > │     match v2 with                                                            │

00:00:14 #626 [Verbose] > │     | US0_0(v3) -> (* Computed *)                                            │

00:00:14 #627 [Verbose] > │         v3                                                                   │

00:00:14 #628 [Verbose] > │     | US0_1(v4) -> (* NotComputed *)                                         │

00:00:14 #629 [Verbose] > │         let v5 : UH0 = v4 ()                                                 │

00:00:14 #630 [Verbose] > │         let v12 : UH0 =                                                      │

00:00:14 #631 [Verbose] > │             match v5 with                                                    │

00:00:14 #632 [Verbose] > │             | UH0_0(v7, v8) -> (* StreamCons *)                              │

00:00:14 #633 [Verbose] > │                 let v9 : (unit -> UH0) = method2(v0, v8)                     │

00:00:14 #634 [Verbose] > │                 UH0_0(v7, v9)                                                │

00:00:14 #635 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:14 #636 [Verbose] > │                 UH0_1                                                        │

00:00:14 #637 [Verbose] > │         let v13 : US0 = US0_0(v12)                                           │

00:00:14 #638 [Verbose] > │         v1.l0 <- v13                                                         │

00:00:14 #639 [Verbose] > │         v12                                                                  │

00:00:14 #640 [Verbose] > │ and method2 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) =                 │

00:00:14 #641 [Verbose] > │     let v2 : US0 = US0_1(v1)                                                 │

00:00:14 #642 [Verbose] > │     let v3 : Mut0 = {l0 = v2} : Mut0                                         │

00:00:14 #643 [Verbose] > │     closure2(v0, v3)                                                         │

00:00:14 #644 [Verbose] > │ and method4 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:14 #645 [Verbose] > │     match v1 with                                                            │

00:00:14 #646 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:14 #647 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:14 #648 [Verbose] > │         if v4 then                                                           │

00:00:14 #649 [Verbose] > │             US1_1(v2)                                                        │

00:00:14 #650 [Verbose] > │         else                                                                 │

00:00:14 #651 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:14 #652 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:14 #653 [Verbose] > │             method4(v6, v7)                                                  │

00:00:14 #654 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:14 #655 [Verbose] > │         US1_0                                                                │

00:00:14 #656 [Verbose] > │ and method5 (v0 : UH1, v1 : UH1) : UH1 =                                     │

00:00:14 #657 [Verbose] > │     match v0 with                                                            │

00:00:14 #658 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:14 #659 [Verbose] > │         let v4 : UH1 = UH1_0(v2, v1)                                         │

00:00:14 #660 [Verbose] > │         method5(v3, v4)                                                      │

00:00:14 #661 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:14 #662 [Verbose] > │         v1                                                                   │

00:00:14 #663 [Verbose] > │ and method3 (v0 : UH0, v1 : UH1, v2 : int32) : UH1 =                         │

00:00:14 #664 [Verbose] > │     let v3 : US1 = method4(v2, v0)                                           │

00:00:14 #665 [Verbose] > │     match v3 with                                                            │

00:00:14 #666 [Verbose] > │     | US1_1(v4) -> (* Some *)                                                │

00:00:14 #667 [Verbose] > │         let v5 : bool = v4 < 5                                               │

00:00:14 #668 [Verbose] > │         if v5 then                                                           │

00:00:14 #669 [Verbose] > │             let v6 : UH1 = UH1_0(v4, v1)                                     │

00:00:14 #670 [Verbose] > │             let v7 : int32 = v2 + 1                                          │

00:00:14 #671 [Verbose] > │             method3(v0, v6, v7)                                              │

00:00:14 #672 [Verbose] > │         else                                                                 │

00:00:14 #673 [Verbose] > │             let v9 : UH1 = UH1_1                                             │

00:00:14 #674 [Verbose] > │             method5(v1, v9)                                                  │

00:00:14 #675 [Verbose] > │     | _ ->                                                                   │

00:00:14 #676 [Verbose] > │         let v12 : UH1 = UH1_1                                                │

00:00:14 #677 [Verbose] > │         method5(v1, v12)                                                     │

00:00:14 #678 [Verbose] > │ and method6 (v0 : UH1, v1 : int32) : int32 =                                 │

00:00:14 #679 [Verbose] > │     match v0 with                                                            │

00:00:14 #680 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:14 #681 [Verbose] > │         let v4 : int32 = v1 + v2                                             │

00:00:14 #682 [Verbose] > │         method6(v3, v4)                                                      │

00:00:14 #683 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:14 #684 [Verbose] > │         v1                                                                   │

00:00:14 #685 [Verbose] > │ and method0 () : unit =                                                      │

00:00:14 #686 [Verbose] > │     let v0 : int32 = 0                                                       │

00:00:14 #687 [Verbose] > │     let v1 : UH0 = method1(v0)                                               │

00:00:14 #688 [Verbose] > │     let v2 : (unit -> UH0) = closure1(v1)                                    │

00:00:14 #689 [Verbose] > │     let v3 : (unit -> UH0) = method2(v1, v2)                                 │

00:00:14 #690 [Verbose] > │     let v4 : UH0 = v3 ()                                                     │

00:00:14 #691 [Verbose] > │     let v5 : UH1 = UH1_1                                                     │

00:00:14 #692 [Verbose] > │     let v6 : int32 = 0                                                       │

00:00:14 #693 [Verbose] > │     let v7 : UH1 = method3(v4, v5, v6)                                       │

00:00:14 #694 [Verbose] > │     let v8 : int32 = 0                                                       │

00:00:14 #695 [Verbose] > │     let v9 : int32 = method6(v7, v8)                                         │

00:00:14 #696 [Verbose] > │     let v10 : bool = v9 = 10                                                 │

00:00:14 #697 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v9} / expected: %A{10}"         │

00:00:14 #698 [Verbose] > │     let v12 : bool = v10 = false                                             │

00:00:14 #699 [Verbose] > │     if v12 then                                                              │

00:00:14 #700 [Verbose] > │         failwith<unit> v11                                                   │

00:00:14 #701 [Verbose] > │ method0()                                                                    │

00:00:14 #702 [Verbose] > │                                                                              │

00:00:14 #703 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:14 #704 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:14 #705 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:14 #706 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:14 #707 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:14 #708 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:14 #709 [Verbose] > │                                                                              │

00:00:14 #710 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #711 [Verbose] >

00:00:14 #712 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #713 [Verbose] > // // test

00:00:14 #714 [Verbose] >

00:00:14 #715 [Verbose] > stream.new_finite_stream print_and_return 10i32

00:00:14 #716 [Verbose] > |> stream.memoize

00:00:14 #717 [Verbose] > |> fun list =>

00:00:14 #718 [Verbose] >     inl list = list ()

00:00:14 #719 [Verbose] >     fun n =>

00:00:14 #720 [Verbose] >         list |> stream.try_item n

00:00:14 #721 [Verbose] > |> take_while_ (fun n (_ : i32) => n < 5)

00:00:14 #722 [Verbose] > |> listm'.sum

00:00:14 #723 [Verbose] > |> _equal 10

00:00:14 #724 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5886-8679-88c1a5988535\main.spi

00:00:14 #725 [Verbose] >

00:00:14 #726 [Verbose] > ╭─[ 288.86ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #727 [Verbose] > │ type UH0 =                                                                   │

00:00:14 #728 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:14 #729 [Verbose] > │     | UH0_1                                                                  │

00:00:14 #730 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:14 #731 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:14 #732 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:14 #733 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:14 #734 [Verbose] > │ and UH1 =                                                                    │

00:00:14 #735 [Verbose] > │     | UH1_0 of int32 * UH1                                                   │

00:00:14 #736 [Verbose] > │     | UH1_1                                                                  │

00:00:14 #737 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:14 #738 [Verbose] > │     | US1_0                                                                  │

00:00:14 #739 [Verbose] > │     | US1_1 of f1_0 : int32                                                  │

00:00:14 #740 [Verbose] > │ let rec closure10 () () : UH0 =                                              │

00:00:14 #741 [Verbose] > │     UH0_1                                                                    │

00:00:14 #742 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:14 #743 [Verbose] > │     printfn $"print_and_return / x: {9}"                                     │

00:00:14 #744 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:14 #745 [Verbose] > │     UH0_0(9, v0)                                                             │

00:00:14 #746 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:14 #747 [Verbose] > │     printfn $"print_and_return / x: {8}"                                     │

00:00:14 #748 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:14 #749 [Verbose] > │     UH0_0(8, v0)                                                             │

00:00:14 #750 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:14 #751 [Verbose] > │     printfn $"print_and_return / x: {7}"                                     │

00:00:14 #752 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:14 #753 [Verbose] > │     UH0_0(7, v0)                                                             │

00:00:14 #754 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:14 #755 [Verbose] > │     printfn $"print_and_return / x: {6}"                                     │

00:00:14 #756 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:14 #757 [Verbose] > │     UH0_0(6, v0)                                                             │

00:00:14 #758 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:14 #759 [Verbose] > │     printfn $"print_and_return / x: {5}"                                     │

00:00:14 #760 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:14 #761 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:14 #762 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:14 #763 [Verbose] > │     printfn $"print_and_return / x: {4}"                                     │

00:00:14 #764 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:14 #765 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:14 #766 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:14 #767 [Verbose] > │     printfn $"print_and_return / x: {3}"                                     │

00:00:14 #768 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:14 #769 [Verbose] > │     UH0_0(3, v0)                                                             │

00:00:14 #770 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:14 #771 [Verbose] > │     printfn $"print_and_return / x: {2}"                                     │

00:00:14 #772 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:14 #773 [Verbose] > │     UH0_0(2, v0)                                                             │

00:00:14 #774 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:14 #775 [Verbose] > │     printfn $"print_and_return / x: {1}"                                     │

00:00:14 #776 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:14 #777 [Verbose] > │     UH0_0(1, v0)                                                             │

00:00:14 #778 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:14 #779 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:14 #780 [Verbose] > │     UH0_0(0, v0)                                                             │

00:00:14 #781 [Verbose] > │ and closure11 (v0 : Mut0) () : UH0 =                                         │

00:00:14 #782 [Verbose] > │     let v1 : US0 = v0.l0                                                     │

00:00:14 #783 [Verbose] > │     match v1 with                                                            │

00:00:14 #784 [Verbose] > │     | US0_0(v2) -> (* Computed *)                                            │

00:00:14 #785 [Verbose] > │         v2                                                                   │

00:00:14 #786 [Verbose] > │     | US0_1(v3) -> (* NotComputed *)                                         │

00:00:14 #787 [Verbose] > │         let v4 : UH0 = v3 ()                                                 │

00:00:14 #788 [Verbose] > │         let v13 : UH0 =                                                      │

00:00:14 #789 [Verbose] > │             match v4 with                                                    │

00:00:14 #790 [Verbose] > │             | UH0_0(v6, v7) -> (* StreamCons *)                              │

00:00:14 #791 [Verbose] > │                 let v8 : US0 = US0_1(v7)                                     │

00:00:14 #792 [Verbose] > │                 let v9 : Mut0 = {l0 = v8} : Mut0                             │

00:00:14 #793 [Verbose] > │                 let v10 : (unit -> UH0) = closure11(v9)                      │

00:00:14 #794 [Verbose] > │                 UH0_0(v6, v10)                                               │

00:00:14 #795 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:14 #796 [Verbose] > │                 UH0_1                                                        │

00:00:14 #797 [Verbose] > │         let v14 : US0 = US0_0(v13)                                           │

00:00:14 #798 [Verbose] > │         v0.l0 <- v14                                                         │

00:00:14 #799 [Verbose] > │         v13                                                                  │

00:00:14 #800 [Verbose] > │ and method2 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:14 #801 [Verbose] > │     match v1 with                                                            │

00:00:14 #802 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:14 #803 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:14 #804 [Verbose] > │         if v4 then                                                           │

00:00:14 #805 [Verbose] > │             US1_1(v2)                                                        │

00:00:14 #806 [Verbose] > │         else                                                                 │

00:00:14 #807 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:14 #808 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:14 #809 [Verbose] > │             method2(v6, v7)                                                  │

00:00:14 #810 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:14 #811 [Verbose] > │         US1_0                                                                │

00:00:14 #812 [Verbose] > │ and method3 (v0 : UH1, v1 : UH1) : UH1 =                                     │

00:00:14 #813 [Verbose] > │     match v0 with                                                            │

00:00:14 #814 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:14 #815 [Verbose] > │         let v4 : UH1 = UH1_0(v2, v1)                                         │

00:00:14 #816 [Verbose] > │         method3(v3, v4)                                                      │

00:00:14 #817 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:14 #818 [Verbose] > │         v1                                                                   │

00:00:14 #819 [Verbose] > │ and method1 (v0 : UH0, v1 : UH1, v2 : int32) : UH1 =                         │

00:00:14 #820 [Verbose] > │     let v3 : US1 = method2(v2, v0)                                           │

00:00:14 #821 [Verbose] > │     match v3 with                                                            │

00:00:14 #822 [Verbose] > │     | US1_1(v4) -> (* Some *)                                                │

00:00:14 #823 [Verbose] > │         let v5 : bool = v4 < 5                                               │

00:00:14 #824 [Verbose] > │         if v5 then                                                           │

00:00:14 #825 [Verbose] > │             let v6 : UH1 = UH1_0(v4, v1)                                     │

00:00:14 #826 [Verbose] > │             let v7 : int32 = v2 + 1                                          │

00:00:14 #827 [Verbose] > │             method1(v0, v6, v7)                                              │

00:00:14 #828 [Verbose] > │         else                                                                 │

00:00:14 #829 [Verbose] > │             let v9 : UH1 = UH1_1                                             │

00:00:14 #830 [Verbose] > │             method3(v1, v9)                                                  │

00:00:14 #831 [Verbose] > │     | _ ->                                                                   │

00:00:14 #832 [Verbose] > │         let v12 : UH1 = UH1_1                                                │

00:00:14 #833 [Verbose] > │         method3(v1, v12)                                                     │

00:00:14 #834 [Verbose] > │ and method4 (v0 : UH1, v1 : int32) : int32 =                                 │

00:00:14 #835 [Verbose] > │     match v0 with                                                            │

00:00:14 #836 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:14 #837 [Verbose] > │         let v4 : int32 = v1 + v2                                             │

00:00:14 #838 [Verbose] > │         method4(v3, v4)                                                      │

00:00:14 #839 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:14 #840 [Verbose] > │         v1                                                                   │

00:00:14 #841 [Verbose] > │ and method0 () : unit =                                                      │

00:00:14 #842 [Verbose] > │     printfn $"print_and_return / x: {0}"                                     │

00:00:14 #843 [Verbose] > │     let v0 : (unit -> UH0) = closure0()                                      │

00:00:14 #844 [Verbose] > │     let v1 : US0 = US0_1(v0)                                                 │

00:00:14 #845 [Verbose] > │     let v2 : Mut0 = {l0 = v1} : Mut0                                         │

00:00:14 #846 [Verbose] > │     let v3 : US0 = v2.l0                                                     │

00:00:14 #847 [Verbose] > │     let v18 : UH0 =                                                          │

00:00:14 #848 [Verbose] > │         match v3 with                                                        │

00:00:14 #849 [Verbose] > │         | US0_0(v4) -> (* Computed *)                                        │

00:00:14 #850 [Verbose] > │             v4                                                               │

00:00:14 #851 [Verbose] > │         | US0_1(v5) -> (* NotComputed *)                                     │

00:00:14 #852 [Verbose] > │             let v6 : UH0 = v5 ()                                             │

00:00:14 #853 [Verbose] > │             let v15 : UH0 =                                                  │

00:00:15 #854 [Verbose] > │                 match v6 with                                                │

00:00:15 #855 [Verbose] > │                 | UH0_0(v8, v9) -> (* StreamCons *)                          │

00:00:15 #856 [Verbose] > │                     let v10 : US0 = US0_1(v9)                                │

00:00:15 #857 [Verbose] > │                     let v11 : Mut0 = {l0 = v10} : Mut0                       │

00:00:15 #858 [Verbose] > │                     let v12 : (unit -> UH0) = closure11(v11)                 │

00:00:15 #859 [Verbose] > │                     UH0_0(v8, v12)                                           │

00:00:15 #860 [Verbose] > │                 | UH0_1 -> (* StreamNil *)                                   │

00:00:15 #861 [Verbose] > │                     UH0_1                                                    │

00:00:15 #862 [Verbose] > │             let v16 : US0 = US0_0(v15)                                       │

00:00:15 #863 [Verbose] > │             v2.l0 <- v16                                                     │

00:00:15 #864 [Verbose] > │             v15                                                              │

00:00:15 #865 [Verbose] > │     let v19 : UH1 = UH1_1                                                    │

00:00:15 #866 [Verbose] > │     let v20 : int32 = 0                                                      │

00:00:15 #867 [Verbose] > │     let v21 : UH1 = method1(v18, v19, v20)                                   │

00:00:15 #868 [Verbose] > │     let v22 : int32 = 0                                                      │

00:00:15 #869 [Verbose] > │     let v23 : int32 = method4(v21, v22)                                      │

00:00:15 #870 [Verbose] > │     let v24 : bool = v23 = 10                                                │

00:00:15 #871 [Verbose] > │     let v25 : string = $"_equal / actual: %A{v23} / expected: %A{10}"        │

00:00:15 #872 [Verbose] > │     let v26 : bool = v24 = false                                             │

00:00:15 #873 [Verbose] > │     if v26 then                                                              │

00:00:15 #874 [Verbose] > │         failwith<unit> v25                                                   │

00:00:15 #875 [Verbose] > │ method0()                                                                    │

00:00:15 #876 [Verbose] > │                                                                              │

00:00:15 #877 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:15 #878 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:15 #879 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:15 #880 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:15 #881 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:15 #882 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:15 #883 [Verbose] > │                                                                              │

00:00:15 #884 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #885 [Verbose] >

00:00:15 #886 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #887 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #888 [Verbose] > │ ## memoize                                                                   │

00:00:15 #889 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #890 [Verbose] >

00:00:15 #891 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #892 [Verbose] > inl memoize seq =

00:00:15 #893 [Verbose] >     inl state = mut [[]]

00:00:15 #894 [Verbose] >     fun n =>

00:00:15 #895 [Verbose] >         match *state |> listm'.try_find (fun (n', _) => n' = n) with

00:00:15 #896 [Verbose] >         | Some (_, v) => v

00:00:15 #897 [Verbose] >         | None =>

00:00:15 #898 [Verbose] >             inl new_state = seq n

00:00:15 #899 [Verbose] >             state <- (n, new_state) :: *state

00:00:15 #900 [Verbose] >             new_state

00:00:15 #901 [Verbose] >

00:00:15 #902 [Verbose] > inl memoize_ seq =

00:00:15 #903 [Verbose] >     inl state = mut [[]]

00:00:15 #904 [Verbose] >     fun n =>

00:00:15 #905 [Verbose] >         match *state |> listm'.try_find_ (fun (n', _) => n' = n) with

00:00:15 #906 [Verbose] >         | Some (_, v) => v

00:00:15 #907 [Verbose] >         | None =>

00:00:15 #908 [Verbose] >             inl new_state = seq n

00:00:15 #909 [Verbose] >             state <- (n, new_state) :: *state

00:00:15 #910 [Verbose] >             new_state

00:00:15 #911 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5922-2250-2b66708e33de\main.spi

00:00:15 #912 [Verbose] >

00:00:15 #913 [Verbose] > ╭─[ 143.05ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #914 [Verbose] > │ ()                                                                           │

00:00:15 #915 [Verbose] > │                                                                              │

00:00:15 #916 [Verbose] > │                                                                              │

00:00:15 #917 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #918 [Verbose] >

00:00:15 #919 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #920 [Verbose] > // // test

00:00:15 #921 [Verbose] >

00:00:15 #922 [Verbose] > inl seq =

00:00:15 #923 [Verbose] >     fun n =>

00:00:15 #924 [Verbose] >         n |> print_and_return |> Some

00:00:15 #925 [Verbose] >     |> memoize_

00:00:15 #926 [Verbose] >

00:00:15 #927 [Verbose] > seq

00:00:15 #928 [Verbose] > |> take_while_ (fun n (_ : i32) => n < 5)

00:00:15 #929 [Verbose] > |> listm'.sum

00:00:15 #930 [Verbose] > |> _equal 10

00:00:15 #931 [Verbose] >

00:00:15 #932 [Verbose] > seq

00:00:15 #933 [Verbose] > |> take_while_ (fun n _ => n < 5)

00:00:15 #934 [Verbose] > |> listm'.sum

00:00:15 #935 [Verbose] > |> _equal 10

00:00:15 #936 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5937-3701-3337003bf857\main.spi

00:00:15 #937 [Verbose] >

00:00:15 #938 [Verbose] > ╭─[ 361.02ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #939 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:15 #940 [Verbose] > │     | US0_0                                                                  │

00:00:15 #941 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:15 #942 [Verbose] > │ and UH0 =                                                                    │

00:00:15 #943 [Verbose] > │     | UH0_0 of int32 * US0 * UH0                                             │

00:00:15 #944 [Verbose] > │     | UH0_1                                                                  │

00:00:15 #945 [Verbose] > │ and Mut0 = {mutable l0 : UH0}                                                │

00:00:15 #946 [Verbose] > │ and UH1 =                                                                    │

00:00:15 #947 [Verbose] > │     | UH1_0 of int32 * UH1                                                   │

00:00:15 #948 [Verbose] > │     | UH1_1                                                                  │

00:00:15 #949 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:15 #950 [Verbose] > │     | US1_0                                                                  │

00:00:15 #951 [Verbose] > │     | US1_1 of f1_0 : int32 * f1_1 : US0                                     │

00:00:15 #952 [Verbose] > │ let rec method2 (v0 : int32, v1 : UH0) : US1 =                               │

00:00:15 #953 [Verbose] > │     match v1 with                                                            │

00:00:15 #954 [Verbose] > │     | UH0_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:15 #955 [Verbose] > │         let v6 : bool = v3 = v0                                              │

00:00:15 #956 [Verbose] > │         if v6 then                                                           │

00:00:15 #957 [Verbose] > │             US1_1(v3, v4)                                                    │

00:00:15 #958 [Verbose] > │         else                                                                 │

00:00:15 #959 [Verbose] > │             method2(v0, v5)                                                  │

00:00:15 #960 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:15 #961 [Verbose] > │         US1_0                                                                │

00:00:15 #962 [Verbose] > │ and method3 (v0 : UH1, v1 : UH1) : UH1 =                                     │

00:00:15 #963 [Verbose] > │     match v0 with                                                            │

00:00:15 #964 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:15 #965 [Verbose] > │         let v4 : UH1 = UH1_0(v2, v1)                                         │

00:00:15 #966 [Verbose] > │         method3(v3, v4)                                                      │

00:00:15 #967 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:15 #968 [Verbose] > │         v1                                                                   │

00:00:15 #969 [Verbose] > │ and method1 (v0 : Mut0, v1 : UH1, v2 : int32) : UH1 =                        │

00:00:15 #970 [Verbose] > │     let v3 : UH0 = v0.l0                                                     │

00:00:15 #971 [Verbose] > │     let v4 : US1 = method2(v2, v3)                                           │

00:00:15 #972 [Verbose] > │     let v12 : US0 =                                                          │

00:00:15 #973 [Verbose] > │         match v4 with                                                        │

00:00:15 #974 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:00:15 #975 [Verbose] > │             printfn $"print_and_return / x: {v2}"                            │

00:00:15 #976 [Verbose] > │             let v7 : UH0 = v0.l0                                             │

00:00:15 #977 [Verbose] > │             let v8 : US0 = US0_1(v2)                                         │

00:00:15 #978 [Verbose] > │             let v9 : UH0 = UH0_0(v2, v8, v7)                                 │

00:00:15 #979 [Verbose] > │             v0.l0 <- v9                                                      │

00:00:15 #980 [Verbose] > │             US0_1(v2)                                                        │

00:00:15 #981 [Verbose] > │         | US1_1(v5, v6) -> (* Some *)                                        │

00:00:15 #982 [Verbose] > │             v6                                                               │

00:00:15 #983 [Verbose] > │     match v12 with                                                           │

00:00:15 #984 [Verbose] > │     | US0_1(v13) -> (* Some *)                                               │

00:00:15 #985 [Verbose] > │         let v14 : bool = v13 < 5                                             │

00:00:15 #986 [Verbose] > │         if v14 then                                                          │

00:00:15 #987 [Verbose] > │             let v15 : UH1 = UH1_0(v13, v1)                                   │

00:00:15 #988 [Verbose] > │             let v16 : int32 = v2 + 1                                         │

00:00:15 #989 [Verbose] > │             method1(v0, v15, v16)                                            │

00:00:15 #990 [Verbose] > │         else                                                                 │

00:00:15 #991 [Verbose] > │             let v18 : UH1 = UH1_1                                            │

00:00:15 #992 [Verbose] > │             method3(v1, v18)                                                 │

00:00:15 #993 [Verbose] > │     | _ ->                                                                   │

00:00:15 #994 [Verbose] > │         let v21 : UH1 = UH1_1                                                │

00:00:15 #995 [Verbose] > │         method3(v1, v21)                                                     │

00:00:15 #996 [Verbose] > │ and method4 (v0 : UH1, v1 : int32) : int32 =                                 │

00:00:15 #997 [Verbose] > │     match v0 with                                                            │

00:00:15 #998 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:15 #999 [Verbose] > │         let v4 : int32 = v1 + v2                                             │

00:00:15 #1000 [Verbose] > │         method4(v3, v4)                                                      │

00:00:15 #1001 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:15 #1002 [Verbose] > │         v1                                                                   │

00:00:15 #1003 [Verbose] > │ and method5 (v0 : Mut0, v1 : UH1, v2 : int32) : UH1 =                        │

00:00:15 #1004 [Verbose] > │     let v3 : UH0 = v0.l0                                                     │

00:00:15 #1005 [Verbose] > │     let v4 : US1 = method2(v2, v3)                                           │

00:00:15 #1006 [Verbose] > │     let v12 : US0 =                                                          │

00:00:15 #1007 [Verbose] > │         match v4 with                                                        │

00:00:15 #1008 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:00:15 #1009 [Verbose] > │             printfn $"print_and_return / x: {v2}"                            │

00:00:15 #1010 [Verbose] > │             let v7 : UH0 = v0.l0                                             │

00:00:15 #1011 [Verbose] > │             let v8 : US0 = US0_1(v2)                                         │

00:00:15 #1012 [Verbose] > │             let v9 : UH0 = UH0_0(v2, v8, v7)                                 │

00:00:15 #1013 [Verbose] > │             v0.l0 <- v9                                                      │

00:00:15 #1014 [Verbose] > │             US0_1(v2)                                                        │

00:00:15 #1015 [Verbose] > │         | US1_1(v5, v6) -> (* Some *)                                        │

00:00:15 #1016 [Verbose] > │             v6                                                               │

00:00:15 #1017 [Verbose] > │     match v12 with                                                           │

00:00:15 #1018 [Verbose] > │     | US0_1(v13) -> (* Some *)                                               │

00:00:15 #1019 [Verbose] > │         let v14 : bool = v13 < 5                                             │

00:00:15 #1020 [Verbose] > │         if v14 then                                                          │

00:00:15 #1021 [Verbose] > │             let v15 : UH1 = UH1_0(v13, v1)                                   │

00:00:15 #1022 [Verbose] > │             let v16 : int32 = v2 + 1                                         │

00:00:15 #1023 [Verbose] > │             method5(v0, v15, v16)                                            │

00:00:15 #1024 [Verbose] > │         else                                                                 │

00:00:15 #1025 [Verbose] > │             let v18 : UH1 = UH1_1                                            │

00:00:15 #1026 [Verbose] > │             method3(v1, v18)                                                 │

00:00:15 #1027 [Verbose] > │     | _ ->                                                                   │

00:00:15 #1028 [Verbose] > │         let v21 : UH1 = UH1_1                                                │

00:00:15 #1029 [Verbose] > │         method3(v1, v21)                                                     │

00:00:15 #1030 [Verbose] > │ and method0 () : unit =                                                      │

00:00:15 #1031 [Verbose] > │     let v0 : UH0 = UH0_1                                                     │

00:00:15 #1032 [Verbose] > │     let v1 : Mut0 = {l0 = v0} : Mut0                                         │

00:00:15 #1033 [Verbose] > │     let v2 : UH1 = UH1_1                                                     │

00:00:15 #1034 [Verbose] > │     let v3 : int32 = 0                                                       │

00:00:15 #1035 [Verbose] > │     let v4 : UH1 = method1(v1, v2, v3)                                       │

00:00:15 #1036 [Verbose] > │     let v5 : int32 = 0                                                       │

00:00:15 #1037 [Verbose] > │     let v6 : int32 = method4(v4, v5)                                         │

00:00:15 #1038 [Verbose] > │     let v7 : bool = v6 = 10                                                  │

00:00:15 #1039 [Verbose] > │     let v8 : string = $"_equal / actual: %A{v6} / expected: %A{10}"          │

00:00:15 #1040 [Verbose] > │     let v9 : bool = v7 = false                                               │

00:00:15 #1041 [Verbose] > │     if v9 then                                                               │

00:00:15 #1042 [Verbose] > │         failwith<unit> v8                                                    │

00:00:15 #1043 [Verbose] > │     let v10 : UH1 = UH1_1                                                    │

00:00:15 #1044 [Verbose] > │     let v11 : int32 = 0                                                      │

00:00:15 #1045 [Verbose] > │     let v12 : UH1 = method5(v1, v10, v11)                                    │

00:00:15 #1046 [Verbose] > │     let v13 : int32 = 0                                                      │

00:00:15 #1047 [Verbose] > │     let v14 : int32 = method4(v12, v13)                                      │

00:00:15 #1048 [Verbose] > │     let v15 : bool = v14 = 10                                                │

00:00:15 #1049 [Verbose] > │     let v16 : string = $"_equal / actual: %A{v14} / expected: %A{10}"        │

00:00:15 #1050 [Verbose] > │     let v17 : bool = v15 = false                                             │

00:00:15 #1051 [Verbose] > │     if v17 then                                                              │

00:00:15 #1052 [Verbose] > │         failwith<unit> v16                                                   │

00:00:15 #1053 [Verbose] > │ method0()                                                                    │

00:00:15 #1054 [Verbose] > │                                                                              │

00:00:15 #1055 [Verbose] > │ print_and_return / x: 0                                                      │

00:00:15 #1056 [Verbose] > │ print_and_return / x: 1                                                      │

00:00:15 #1057 [Verbose] > │ print_and_return / x: 2                                                      │

00:00:15 #1058 [Verbose] > │ print_and_return / x: 3                                                      │

00:00:15 #1059 [Verbose] > │ print_and_return / x: 4                                                      │

00:00:15 #1060 [Verbose] > │ print_and_return / x: 5                                                      │

00:00:15 #1061 [Verbose] > │                                                                              │

00:00:15 #1062 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #1063 [Verbose] >

00:00:15 #1064 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #1065 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #1066 [Verbose] > │ ## iterate                                                                   │

00:00:15 #1067 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #1068 [Verbose] >

00:00:15 #1069 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #1070 [Verbose] > inl iterate f x0 num_steps =

00:00:15 #1071 [Verbose] >     inl rec loop x n =

00:00:15 #1072 [Verbose] >         if n <= 0

00:00:15 #1073 [Verbose] >         then x

00:00:15 #1074 [Verbose] >         else loop (f x) (n - 1)

00:00:15 #1075 [Verbose] >     loop x0 num_steps

00:00:15 #1076 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5979-7925-7fb2be7ee90f\main.spi

00:00:15 #1077 [Verbose] >

00:00:15 #1078 [Verbose] > ╭─[ 184.61ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #1079 [Verbose] > │ ()                                                                           │

00:00:15 #1080 [Verbose] > │                                                                              │

00:00:15 #1081 [Verbose] > │                                                                              │

00:00:15 #1082 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #1083 [Verbose] >

00:00:15 #1084 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #1085 [Verbose] > // // test

00:00:15 #1086 [Verbose] >

00:00:15 #1087 [Verbose] > 10i32 |> iterate ((*) 2) 1i32

00:00:15 #1088 [Verbose] > |> _equal 1024

00:00:15 #1089 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1301-5996-9653-94b58a5cf106\main.spi

00:00:15 #1090 [Verbose] >

00:00:15 #1091 [Verbose] > ╭─[ 151.30ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #1092 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:15 #1093 [Verbose] > │     let v0 : string = $"_equal / actual: %A{1024} / expected: %A{1024}"      │

00:00:15 #1094 [Verbose] > │     ()                                                                       │

00:00:15 #1095 [Verbose] > │ method0()                                                                    │

00:00:15 #1096 [Verbose] > │                                                                              │

00:00:15 #1097 [Verbose] > │                                                                              │

00:00:15 #1098 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #1099 [Verbose] >

00:00:15 #1100 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #1101 [Verbose] > inl iterate_ f x0 num_steps =

00:00:15 #1102 [Verbose] >     let rec loop x n =

00:00:15 #1103 [Verbose] >         if n <= 0

00:00:15 #1104 [Verbose] >         then x

00:00:15 #1105 [Verbose] >         else loop (f x) (n - 1)

00:00:15 #1106 [Verbose] >     loop x0 num_steps

00:00:16 #1107 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-0012-1212-1fcc725f4353\main.spi

00:00:16 #1108 [Verbose] >

00:00:16 #1109 [Verbose] > ╭─[ 159.44ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #1110 [Verbose] > │ ()                                                                           │

00:00:16 #1111 [Verbose] > │                                                                              │

00:00:16 #1112 [Verbose] > │                                                                              │

00:00:16 #1113 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #1114 [Verbose] >

00:00:16 #1115 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #1116 [Verbose] > // // test

00:00:16 #1117 [Verbose] >

00:00:16 #1118 [Verbose] > 10i32 |> iterate_ ((*) 2) 1i32

00:00:16 #1119 [Verbose] > |> _equal 1024

00:00:16 #1120 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-0028-2831-27705027b1b7\main.spi

00:00:16 #1121 [Verbose] >

00:00:16 #1122 [Verbose] > ╭─[ 168.00ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #1123 [Verbose] > │ let rec method1 (v0 : int32, v1 : int32) : int32 =                           │

00:00:16 #1124 [Verbose] > │     let v2 : bool = v1 <= 0                                                  │

00:00:16 #1125 [Verbose] > │     if v2 then                                                               │

00:00:16 #1126 [Verbose] > │         v0                                                                   │

00:00:16 #1127 [Verbose] > │     else                                                                     │

00:00:16 #1128 [Verbose] > │         let v3 : int32 = 2 * v0                                              │

00:00:16 #1129 [Verbose] > │         let v4 : int32 = v1 - 1                                              │

00:00:16 #1130 [Verbose] > │         method1(v3, v4)                                                      │

00:00:16 #1131 [Verbose] > │ and method0 () : unit =                                                      │

00:00:16 #1132 [Verbose] > │     let v0 : int32 = 1                                                       │

00:00:16 #1133 [Verbose] > │     let v1 : int32 = 10                                                      │

00:00:16 #1134 [Verbose] > │     let v2 : int32 = method1(v0, v1)                                         │

00:00:16 #1135 [Verbose] > │     let v3 : bool = v2 = 1024                                                │

00:00:16 #1136 [Verbose] > │     let v4 : string = $"_equal / actual: %A{v2} / expected: %A{1024}"        │

00:00:16 #1137 [Verbose] > │     let v5 : bool = v3 = false                                               │

00:00:16 #1138 [Verbose] > │     if v5 then                                                               │

00:00:16 #1139 [Verbose] > │         failwith<unit> v4                                                    │

00:00:16 #1140 [Verbose] > │ method0()                                                                    │

00:00:16 #1141 [Verbose] > │                                                                              │

00:00:16 #1142 [Verbose] > │                                                                              │

00:00:16 #1143 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #1144 [Verbose] >

00:00:16 #1145 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #1146 [Verbose] > inl iterate' f x0 num_steps =

00:00:16 #1147 [Verbose] >     listm.init num_steps id

00:00:16 #1148 [Verbose] >     |> listm.fold (fun x _ => f x) x0

00:00:16 #1149 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-0045-4597-438c43b77b32\main.spi

00:00:16 #1150 [Verbose] >

00:00:16 #1151 [Verbose] > ╭─[ 136.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #1152 [Verbose] > │ ()                                                                           │

00:00:16 #1153 [Verbose] > │                                                                              │

00:00:16 #1154 [Verbose] > │                                                                              │

00:00:16 #1155 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #1156 [Verbose] >

00:00:16 #1157 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #1158 [Verbose] > // // test

00:00:16 #1159 [Verbose] >

00:00:16 #1160 [Verbose] > 10i32 |> iterate' ((*) 2) 1i32

00:00:16 #1161 [Verbose] > |> _equal 1024

00:00:16 #1162 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-0059-5984-5b815d346b85\main.spi

00:00:16 #1163 [Verbose] >

00:00:16 #1164 [Verbose] > ╭─[ 129.27ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #1165 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:16 #1166 [Verbose] > │     let v0 : string = $"_equal / actual: %A{1024} / expected: %A{1024}"      │

00:00:16 #1167 [Verbose] > │     ()                                                                       │

00:00:16 #1168 [Verbose] > │ method0()                                                                    │

00:00:16 #1169 [Verbose] > │                                                                              │

00:00:16 #1170 [Verbose] > │                                                                              │

00:00:16 #1171 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #1172 [Verbose] > [NbConvertApp] Converting notebook seq.dib.ipynb to html

00:00:18 #1173 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:18 #1174 [Verbose] >   validate(nb)

00:00:18 #1175 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:18 #1176 [Verbose] >   return _pygments_highlight(

00:00:19 #1177 [Verbose] > [NbConvertApp] Writing 350375 bytes to seq.dib.html

00:00:19 #1178 [Debug] executeAsync / exitCode: 0 / output.Length: 74239

00:00:19 #1179 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 util.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # util                                                                       │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-1076-7689-7c1b8e9e0516\main.spi

00:00:09 #22 [Verbose] >

00:00:09 #23 [Verbose] > ╭─[ 5.18s - stdout ]───────────────────────────────────────────────────────────╮

00:00:09 #24 [Verbose] > │ ()                                                                           │

00:00:09 #25 [Verbose] > │                                                                              │

00:00:09 #26 [Verbose] > │                                                                              │

00:00:09 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #28 [Verbose] >

00:00:09 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #31 [Verbose] > │ ## ski                                                                       │

00:00:09 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #33 [Verbose] >

00:00:09 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #35 [Verbose] > union rec ski =

00:00:09 #36 [Verbose] >     | I

00:00:09 #37 [Verbose] >     | K

00:00:09 #38 [Verbose] >     | S

00:00:09 #39 [Verbose] >     | App : ski * ski

00:00:09 #40 [Verbose] >

00:00:09 #41 [Verbose] > inl rec eval ski =

00:00:09 #42 [Verbose] >     match ski with

00:00:09 #43 [Verbose] >     | App (App (K, x), y) => eval x

00:00:09 #44 [Verbose] >     | App (App (App (S, x), y), z) => eval (App (App (x, z), App (y, z)))

00:00:09 #45 [Verbose] >     | App (I, x) => eval x

00:00:09 #46 [Verbose] >     | App (K, x) => App (K, eval x)

00:00:09 #47 [Verbose] >     | App (f, x) => eval (App (eval f, x))

00:00:09 #48 [Verbose] >     | _ => ski

00:00:09 #49 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-1372-7267-745ad7175173\main.spi

00:00:09 #50 [Verbose] >

00:00:09 #51 [Verbose] > ╭─[ 165.23ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #52 [Verbose] > │ ()                                                                           │

00:00:09 #53 [Verbose] > │                                                                              │

00:00:09 #54 [Verbose] > │                                                                              │

00:00:09 #55 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #56 [Verbose] >

00:00:09 #57 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #58 [Verbose] > // // test

00:00:09 #59 [Verbose] >

00:00:09 #60 [Verbose] > eval I

00:00:09 #61 [Verbose] > |> _equal I

00:00:09 #62 [Verbose] >

00:00:09 #63 [Verbose] > eval (App (I, I))

00:00:09 #64 [Verbose] > |> _equal I

00:00:09 #65 [Verbose] >

00:00:09 #66 [Verbose] > eval (App (I, App (I, I)))

00:00:09 #67 [Verbose] > |> _equal I

00:00:09 #68 [Verbose] >

00:00:09 #69 [Verbose] > eval (App (App (I, I), I))

00:00:09 #70 [Verbose] > |> _equal I

00:00:09 #71 [Verbose] >

00:00:09 #72 [Verbose] > eval (App (App (App (I, I), I), I))

00:00:09 #73 [Verbose] > |> _equal I

00:00:09 #74 [Verbose] >

00:00:09 #75 [Verbose] > eval K

00:00:09 #76 [Verbose] > |> _equal K

00:00:09 #77 [Verbose] >

00:00:09 #78 [Verbose] > eval (App (K, I))

00:00:09 #79 [Verbose] > |> _equal (App (K, I))

00:00:09 #80 [Verbose] >

00:00:09 #81 [Verbose] > eval (App (K, K))

00:00:09 #82 [Verbose] > |> _equal (App (K, K))

00:00:09 #83 [Verbose] >

00:00:09 #84 [Verbose] > eval (App (App (K, I), K))

00:00:09 #85 [Verbose] > |> _equal I

00:00:09 #86 [Verbose] >

00:00:09 #87 [Verbose] > eval (App (App (K, K), I))

00:00:09 #88 [Verbose] > |> _equal K

00:00:09 #89 [Verbose] >

00:00:09 #90 [Verbose] > eval (App (App (App (App (K, K), I), S), K))

00:00:09 #91 [Verbose] > |> _equal S

00:00:09 #92 [Verbose] >

00:00:09 #93 [Verbose] > eval S

00:00:09 #94 [Verbose] > |> _equal S

00:00:09 #95 [Verbose] >

00:00:09 #96 [Verbose] > eval (App (App (App (S, I), I), I))

00:00:09 #97 [Verbose] > |> _equal I

00:00:09 #98 [Verbose] >

00:00:09 #99 [Verbose] > eval (App (App (App (S, K), K), I))

00:00:09 #100 [Verbose] > |> _equal I

00:00:09 #101 [Verbose] >

00:00:09 #102 [Verbose] > eval (App (App (App (S, K), I), (App (App (K, I), S))))

00:00:09 #103 [Verbose] > |> _equal I

00:00:09 #104 [Verbose] >

00:00:09 #105 [Verbose] > eval (App (App (K, S), App (I, App (App (App (S, K), S), I))))

00:00:09 #106 [Verbose] > |> _equal S

00:00:09 #107 [Verbose] >

00:00:09 #108 [Verbose] > eval (App (App (App (S, K), I), K))

00:00:09 #109 [Verbose] > |> _equal K

00:00:09 #110 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-1389-8901-82cb55a234a4\main.spi

00:00:10 #111 [Verbose] >

00:00:10 #112 [Verbose] > ╭─[ 1.28s - stdout ]───────────────────────────────────────────────────────────╮

00:00:10 #113 [Verbose] > │ type UH0 =                                                                   │

00:00:10 #114 [Verbose] > │     | UH0_0 of UH0 * UH0                                                     │

00:00:10 #115 [Verbose] > │     | UH0_1                                                                  │

00:00:10 #116 [Verbose] > │     | UH0_2                                                                  │

00:00:10 #117 [Verbose] > │     | UH0_3                                                                  │

00:00:10 #118 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #119 [Verbose] > │     let v3 : UH0 = UH0_1                                                     │

00:00:10 #120 [Verbose] > │     let v4 : UH0 = UH0_1                                                     │

00:00:10 #121 [Verbose] > │     let v5 : string = $"_equal / actual: %A{v3} / expected: %A{v4}"          │

00:00:10 #122 [Verbose] > │     let v9 : UH0 = UH0_1                                                     │

00:00:10 #123 [Verbose] > │     let v10 : UH0 = UH0_1                                                    │

00:00:10 #124 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v9} / expected: %A{v10}"        │

00:00:10 #125 [Verbose] > │     let v15 : UH0 = UH0_1                                                    │

00:00:10 #126 [Verbose] > │     let v16 : UH0 = UH0_1                                                    │

00:00:10 #127 [Verbose] > │     let v17 : string = $"_equal / actual: %A{v15} / expected: %A{v16}"       │

00:00:10 #128 [Verbose] > │     let v21 : UH0 = UH0_1                                                    │

00:00:10 #129 [Verbose] > │     let v22 : UH0 = UH0_1                                                    │

00:00:10 #130 [Verbose] > │     let v23 : string = $"_equal / actual: %A{v21} / expected: %A{v22}"       │

00:00:10 #131 [Verbose] > │     let v27 : UH0 = UH0_1                                                    │

00:00:10 #132 [Verbose] > │     let v28 : UH0 = UH0_1                                                    │

00:00:10 #133 [Verbose] > │     let v29 : string = $"_equal / actual: %A{v27} / expected: %A{v28}"       │

00:00:10 #134 [Verbose] > │     let v33 : UH0 = UH0_2                                                    │

00:00:10 #135 [Verbose] > │     let v34 : UH0 = UH0_2                                                    │

00:00:10 #136 [Verbose] > │     let v35 : string = $"_equal / actual: %A{v33} / expected: %A{v34}"       │

00:00:10 #137 [Verbose] > │     let v47 : UH0 = UH0_2                                                    │

00:00:10 #138 [Verbose] > │     let v48 : UH0 = UH0_1                                                    │

00:00:10 #139 [Verbose] > │     let v49 : UH0 = UH0_0(v47, v48)                                          │

00:00:10 #140 [Verbose] > │     let v50 : UH0 = UH0_2                                                    │

00:00:10 #141 [Verbose] > │     let v51 : UH0 = UH0_1                                                    │

00:00:10 #142 [Verbose] > │     let v52 : UH0 = UH0_0(v50, v51)                                          │

00:00:10 #143 [Verbose] > │     let v53 : string = $"_equal / actual: %A{v49} / expected: %A{v52}"       │

00:00:10 #144 [Verbose] > │     let v65 : UH0 = UH0_2                                                    │

00:00:10 #145 [Verbose] > │     let v66 : UH0 = UH0_2                                                    │

00:00:10 #146 [Verbose] > │     let v67 : UH0 = UH0_0(v65, v66)                                          │

00:00:10 #147 [Verbose] > │     let v68 : UH0 = UH0_2                                                    │

00:00:10 #148 [Verbose] > │     let v69 : UH0 = UH0_2                                                    │

00:00:10 #149 [Verbose] > │     let v70 : UH0 = UH0_0(v68, v69)                                          │

00:00:10 #150 [Verbose] > │     let v71 : string = $"_equal / actual: %A{v67} / expected: %A{v70}"       │

00:00:10 #151 [Verbose] > │     let v75 : UH0 = UH0_1                                                    │

00:00:10 #152 [Verbose] > │     let v76 : UH0 = UH0_1                                                    │

00:00:10 #153 [Verbose] > │     let v77 : string = $"_equal / actual: %A{v75} / expected: %A{v76}"       │

00:00:10 #154 [Verbose] > │     let v81 : UH0 = UH0_2                                                    │

00:00:10 #155 [Verbose] > │     let v82 : UH0 = UH0_2                                                    │

00:00:10 #156 [Verbose] > │     let v83 : string = $"_equal / actual: %A{v81} / expected: %A{v82}"       │

00:00:10 #157 [Verbose] > │     let v87 : UH0 = UH0_3                                                    │

00:00:10 #158 [Verbose] > │     let v88 : UH0 = UH0_3                                                    │

00:00:10 #159 [Verbose] > │     let v89 : string = $"_equal / actual: %A{v87} / expected: %A{v88}"       │

00:00:10 #160 [Verbose] > │     let v93 : UH0 = UH0_3                                                    │

00:00:10 #161 [Verbose] > │     let v94 : UH0 = UH0_3                                                    │

00:00:10 #162 [Verbose] > │     let v95 : string = $"_equal / actual: %A{v93} / expected: %A{v94}"       │

00:00:10 #163 [Verbose] > │     let v99 : UH0 = UH0_1                                                    │

00:00:10 #164 [Verbose] > │     let v100 : UH0 = UH0_1                                                   │

00:00:10 #165 [Verbose] > │     let v101 : string = $"_equal / actual: %A{v99} / expected: %A{v100}"     │

00:00:10 #166 [Verbose] > │     let v105 : UH0 = UH0_1                                                   │

00:00:10 #167 [Verbose] > │     let v106 : UH0 = UH0_1                                                   │

00:00:10 #168 [Verbose] > │     let v107 : string = $"_equal / actual: %A{v105} / expected: %A{v106}"    │

00:00:10 #169 [Verbose] > │     let v111 : UH0 = UH0_1                                                   │

00:00:10 #170 [Verbose] > │     let v112 : UH0 = UH0_1                                                   │

00:00:10 #171 [Verbose] > │     let v113 : string = $"_equal / actual: %A{v111} / expected: %A{v112}"    │

00:00:10 #172 [Verbose] > │     let v117 : UH0 = UH0_3                                                   │

00:00:10 #173 [Verbose] > │     let v118 : UH0 = UH0_3                                                   │

00:00:10 #174 [Verbose] > │     let v119 : string = $"_equal / actual: %A{v117} / expected: %A{v118}"    │

00:00:10 #175 [Verbose] > │     let v123 : UH0 = UH0_2                                                   │

00:00:10 #176 [Verbose] > │     let v124 : UH0 = UH0_2                                                   │

00:00:10 #177 [Verbose] > │     let v125 : string = $"_equal / actual: %A{v123} / expected: %A{v124}"    │

00:00:10 #178 [Verbose] > │     ()                                                                       │

00:00:10 #179 [Verbose] > │ method0()                                                                    │

00:00:10 #180 [Verbose] > │                                                                              │

00:00:10 #181 [Verbose] > │                                                                              │

00:00:10 #182 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #183 [Verbose] > [NbConvertApp] Converting notebook util.dib.ipynb to html

00:00:12 #184 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:12 #185 [Verbose] >   validate(nb)

00:00:12 #186 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:12 #187 [Verbose] >   return _pygments_highlight(

00:00:12 #188 [Verbose] > [NbConvertApp] Writing 285538 bytes to util.dib.html

00:00:13 #189 [Debug] executeAsync / exitCode: 0 / output.Length: 9299

00:00:13 #190 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 physics.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # physics                                                                    │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > #!import ../../lib/fsharp/Plotting.dib

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:03 #21 [Verbose] > #r

00:00:03 #22 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

00:00:03 #23 [Verbose] > spNetCore.Html.Abstractions.dll"

00:00:03 #24 [Verbose] > #r

00:00:03 #25 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #26 [Verbose] > otNet.Interactive.dll"

00:00:03 #27 [Verbose] > #r

00:00:03 #28 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #29 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:03 #30 [Verbose] > #r

00:00:03 #31 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #32 [Verbose] > otNet.Interactive.Formatting.dll"

00:00:03 #33 [Verbose] > open System

00:00:03 #34 [Verbose] > open System.IO

00:00:03 #35 [Verbose] > open System.Text

00:00:03 #36 [Verbose] > open Microsoft.DotNet.Interactive.Formatting

00:00:07 #37 [Verbose] >

00:00:07 #38 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #39 [Verbose] > #r

00:00:07 #40 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:07 #41 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:07 #42 [Verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

00:00:07 #43 [Verbose] > #r

00:00:07 #44 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:07 #45 [Verbose] > otNet.Interactive.dll"

00:00:07 #46 [Verbose] > open type Microsoft.DotNet.Interactive.Kernel

00:00:07 #47 [Verbose] >

00:00:07 #48 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #49 [Verbose] > //// test

00:00:07 #50 [Verbose] >

00:00:07 #51 [Verbose] > Formatter.ListExpansionLimit <- 100

00:00:07 #52 [Verbose] >

00:00:07 #53 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #54 [Verbose] > #r

00:00:07 #55 [Verbose] > @"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

00:00:07 #56 [Verbose] > dard2.1/FSharp.Control.AsyncSeq.dll"

00:00:07 #57 [Verbose] > #r

00:00:07 #58 [Verbose] > @"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

00:00:07 #59 [Verbose] > 0/System.Reactive.dll"

00:00:07 #60 [Verbose] > #r

00:00:07 #61 [Verbose] > @"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib

00:00:07 #62 [Verbose] > netstandard2.0/System.Reactive.Linq.dll"

00:00:07 #63 [Verbose] > #r

00:00:07 #64 [Verbose] > @"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

00:00:07 #65 [Verbose] > #r

00:00:07 #66 [Verbose] > @"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

00:00:07 #67 [Verbose] > b/net6.0/System.CommandLine.dll"

00:00:07 #68 [Verbose] > #r

00:00:07 #69 [Verbose] > @"../../../../../../../.nuget/packages/fsharp.json/0.4.1/lib/netstandard2.0/FSha

00:00:07 #70 [Verbose] > rp.Json.dll"

00:00:08 #71 [Verbose] >

00:00:08 #72 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:08 #73 [Verbose] > #if !INTERACTIVE

00:00:08 #74 [Verbose] > namespace Polyglot

00:00:08 #75 [Verbose] > #endif

00:00:08 #76 [Verbose] >

00:00:08 #77 [Verbose] > module Common =

00:00:08 #78 [Verbose] >

00:00:08 #79 [Verbose] >     let nl = System.Environment.NewLine

00:00:08 #80 [Verbose] >     let q = @""""

00:00:08 #81 [Verbose] >

00:00:08 #82 [Verbose] >     let inline cons head tail = head :: tail

00:00:08 #83 [Verbose] >

00:00:08 #84 [Verbose] >     module String =

00:00:08 #85 [Verbose] >         let inline contains (value : string) (input : string) =

00:00:08 #86 [Verbose] >             input.Contains value

00:00:08 #87 [Verbose] >

00:00:08 #88 [Verbose] >         let inline endsWith (value : string) (input : string) =

00:00:08 #89 [Verbose] >             input.EndsWith value

00:00:08 #90 [Verbose] >

00:00:08 #91 [Verbose] >         let inline padLeft totalWidth paddingChar (input : string) =

00:00:08 #92 [Verbose] >             input.PadLeft (totalWidth, paddingChar)

00:00:08 #93 [Verbose] >

00:00:08 #94 [Verbose] >         let inline replace (oldValue : string) (newValue : string) (input :

00:00:08 #95 [Verbose] > string) =

00:00:08 #96 [Verbose] >             input.Replace (oldValue, newValue)

00:00:08 #97 [Verbose] >

00:00:08 #98 [Verbose] >         let inline split separator (input : string) =

00:00:08 #99 [Verbose] >             input.Split separator

00:00:08 #100 [Verbose] >

00:00:08 #101 [Verbose] >         let inline spli...

00:00:10 #102 [Verbose] >

00:00:10 #103 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #104 [Verbose] > #if !INTERACTIVE

00:00:10 #105 [Verbose] > namespace Polyglot

00:00:10 #106 [Verbose] > #endif

00:00:10 #107 [Verbose] >

00:00:10 #108 [Verbose] > module CommonFSharp =

00:00:10 #109 [Verbose] >

00:00:10 #110 [Verbose] >     open Common

00:00:10 #111 [Verbose] >

00:00:10 #112 [Verbose] >     /// ## getUnionCaseName

00:00:10 #113 [Verbose] >

00:00:10 #114 [Verbose] >     let inline getUnionCaseName<'T> (x: 'T) =

00:00:10 #115 [Verbose] >         match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

00:00:10 #116 [Verbose] >         | case, _ -> case.Name

00:00:10 #117 [Verbose] >

00:00:10 #118 [Verbose] >

00:00:10 #119 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #120 [Verbose] > #if !INTERACTIVE

00:00:10 #121 [Verbose] > namespace Polyglot

00:00:10 #122 [Verbose] > #endif

00:00:10 #123 [Verbose] >

00:00:10 #124 [Verbose] > module Crypto =

00:00:10 #125 [Verbose] >

00:00:10 #126 [Verbose] >     open Common

00:00:10 #127 [Verbose] >

00:00:10 #128 [Verbose] >     /// ## hashText

00:00:10 #129 [Verbose] >

00:00:10 #130 [Verbose] >     let hashText (input : string) =

00:00:10 #131 [Verbose] >         use sha256 = System.Security.Cryptography.SHA256.Create ()

00:00:10 #132 [Verbose] >         input

00:00:10 #133 [Verbose] >         |> System.Text.Encoding.UTF8.GetBytes

00:00:10 #134 [Verbose] >         |> sha256.ComputeHash

00:00:10 #135 [Verbose] >         |> Array.map (fun b -> b.ToString "x2")

00:00:10 #136 [Verbose] >         |> String.concat ""

00:00:10 #137 [Verbose] >

00:00:10 #138 [Verbose] >

00:00:10 #139 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #140 [Verbose] > #if !INTERACTIVE

00:00:10 #141 [Verbose] > namespace Polyglot

00:00:10 #142 [Verbose] > #endif

00:00:10 #143 [Verbose] >

00:00:10 #144 [Verbose] > module Async =

00:00:10 #145 [Verbose] >

00:00:10 #146 [Verbose] >     open Common

00:00:10 #147 [Verbose] >

00:00:10 #148 [Verbose] >     /// ## choice

00:00:10 #149 [Verbose] >

00:00:10 #150 [Verbose] >     let inline choice asyncs = async {

00:00:10 #151 [Verbose] >         let e = Event<_> ()

00:00:10 #152 [Verbose] >         use cts = new System.Threading.CancellationTokenSource ()

00:00:10 #153 [Verbose] >         let fn =

00:00:10 #154 [Verbose] >             asyncs

00:00:10 #155 [Verbose] >             |> Seq.map (fun a -> async {

00:00:10 #156 [Verbose] >                 let! x = a

00:00:10 #157 [Verbose] >                 e.Trigger x

00:00:10 #158 [Verbose] >             })

00:00:10 #159 [Verbose] >             |> Async.Parallel

00:00:10 #160 [Verbose] >             |> Async.Ignore

00:00:10 #161 [Verbose] >         Async.Start (fn, cts.Token)

00:00:10 #162 [Verbose] >         let! result = Async.AwaitEvent e.Publish

00:00:10 #163 [Verbose] >         cts.Cancel ()

00:00:10 #164 [Verbose] >         return result

00:00:10 #165 [Verbose] >     }

00:00:10 #166 [Verbose] >

00:00:10 #167 [Verbose] >     /// ## map

00:00:10 #168 [Verbose] >

00:00:10 #169 [Verbose] >     let inline map fn a = async {

00:00:10 #170 [Verbose] >         let! x = a

00:00:10 #171 [Verbose] >         return fn x

00:00:10 #172 [Verbose] >     }

00:00:10 #173 [Verbose] >

00:00:10 #174 [Verbose] >     /// ## catch

00:00:10 #175 [Verbose] >

00:00:10 #176 [Verbose] >     let inline catch a =

00:00:10 #177 [Verbose] >         a

00:00:10 #178 [Verbose] >         |> Async.Catch

00:00:10 #179 [Verbose] >         ...

00:00:11 #180 [Verbose] >

00:00:11 #181 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:11 #182 [Verbose] > #if !INTERACTIVE

00:00:11 #183 [Verbose] > namespace Polyglot

00:00:11 #184 [Verbose] > #endif

00:00:11 #185 [Verbose] >

00:00:11 #186 [Verbose] > module AsyncSeq =

00:00:11 #187 [Verbose] >

00:00:11 #188 [Verbose] >     open Common

00:00:11 #189 [Verbose] >

00:00:11 #190 [Verbose] >     /// ## subscribeEvent

00:00:11 #191 [Verbose] >

00:00:11 #192 [Verbose] >     let inline subscribeEvent (event: IEvent<'H, 'A>) map =

00:00:11 #193 [Verbose] >         let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,

00:00:11 #194 [Verbose] > 'A>(event.AddHandler, event.RemoveHandler)

00:00:11 #195 [Verbose] >         System.Reactive.Linq.Observable.Select (observable, fun event -> map

00:00:11 #196 [Verbose] > event.EventArgs)

00:00:11 #197 [Verbose] >         |> FSharp.Control.AsyncSeq.ofObservableBuffered

00:00:11 #198 [Verbose] >

00:00:11 #199 [Verbose] >     let subscribeToken (token : System.Threading.CancellationToken) =

00:00:11 #200 [Verbose] >         let tcs = new System.Threading.Tasks.TaskCompletionSource ()

00:00:11 #201 [Verbose] >         System.Action tcs.SetResult |> token.Register |> ignore

00:00:11 #202 [Verbose] >         let start = System.DateTime.Now.Ticks

00:00:11 #203 [Verbose] >         FSharp.Control.AsyncSeq.unfoldAsync

00:00:11 #204 [Verbose] >             (fun (...

00:00:11 #205 [Verbose] >

00:00:11 #206 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:11 #207 [Verbose] > #if !INTERACTIVE

00:00:11 #208 [Verbose] > namespace Polyglot

00:00:11 #209 [Verbose] > #endif

00:00:11 #210 [Verbose] >

00:00:11 #211 [Verbose] > module Networking =

00:00:11 #212 [Verbose] >

00:00:11 #213 [Verbose] >     open Common

00:00:11 #214 [Verbose] >

00:00:11 #215 [Verbose] >     /// ## testPortOpen

00:00:11 #216 [Verbose] >

00:00:11 #217 [Verbose] >     let inline testPortOpen port = async {

00:00:11 #218 [Verbose] >         let! ct = Async.CancellationToken

00:00:11 #219 [Verbose] >         use client = new System.Net.Sockets.TcpClient ()

00:00:11 #220 [Verbose] >         try

00:00:11 #221 [Verbose] >             do! client.ConnectAsync ("127.0.0.1", port, ct) |>

00:00:11 #222 [Verbose] > Async.awaitValueTaskUnit

00:00:11 #223 [Verbose] >             return true

00:00:11 #224 [Verbose] >         with ex ->

00:00:11 #225 [Verbose] >             trace Verbose (fun () -> $"testPortOpen / ex: {ex |>

00:00:11 #226 [Verbose] > printException}") getLocals

00:00:11 #227 [Verbose] >             return false

00:00:11 #228 [Verbose] >     }

00:00:11 #229 [Verbose] >

00:00:11 #230 [Verbose] >     let inline testPortOpenTimeout timeout port = async {

00:00:11 #231 [Verbose] >         let! result =

00:00:11 #232 [Verbose] >             testPortOpen port

00:00:11 #233 [Verbose] >             |> Async.runWithTimeoutAsync timeout

00:00:11 #234 [Verbose] >         return

00:00:11 #235 [Verbose] >             match result with

00:00:11 #236 [Verbose] >             | None -> false

00:00:11 #237 [Verbose] >  ...

00:00:11 #238 [Verbose] >

00:00:11 #239 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:11 #240 [Verbose] > #if !INTERACTIVE

00:00:11 #241 [Verbose] > namespace Polyglot

00:00:11 #242 [Verbose] > #endif

00:00:11 #243 [Verbose] >

00:00:11 #244 [Verbose] > module Runtime =

00:00:11 #245 [Verbose] >

00:00:11 #246 [Verbose] >     open Common

00:00:11 #247 [Verbose] >

00:00:11 #248 [Verbose] >     /// ## isWindows

00:00:11 #249 [Verbose] >

00:00:11 #250 [Verbose] >     let isWindows =

00:00:11 #251 [Verbose] >         fun () ->

00:00:11 #252 [Verbose] >             System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

00:00:11 #253 [Verbose] >                 System.Runtime.InteropServices.OSPlatform.Windows

00:00:11 #254 [Verbose] >         |> memoize

00:00:11 #255 [Verbose] >

00:00:11 #256 [Verbose] >     /// ## getExecutableSuffix

00:00:11 #257 [Verbose] >

00:00:11 #258 [Verbose] >     let inline getExecutableSuffix () =

00:00:11 #259 [Verbose] >         if isWindows ()

00:00:11 #260 [Verbose] >         then ".exe"

00:00:11 #261 [Verbose] >         else ""

00:00:11 #262 [Verbose] >

00:00:11 #263 [Verbose] >     /// ## splitCommand

00:00:11 #264 [Verbose] >

00:00:11 #265 [Verbose] >     type private CommandParseStep =

00:00:11 #266 [Verbose] >         | Start

00:00:11 #267 [Verbose] >         | Path of quoted: bool

00:00:11 #268 [Verbose] >         | Arguments

00:00:11 #269 [Verbose] >

00:00:11 #270 [Verbose] >     let splitCommand (command: string) =

00:00:11 #271 [Verbose] >         let rec loop (path, args) chars step =

00:00:11 #272 [Verbose] >             match chars, step with

00:00:11 #273 [Verbose] >             | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...

00:00:12 #274 [Verbose] >

00:00:12 #275 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:12 #276 [Verbose] > #if !INTERACTIVE

00:00:12 #277 [Verbose] > namespace Polyglot

00:00:12 #278 [Verbose] > #endif

00:00:12 #279 [Verbose] >

00:00:12 #280 [Verbose] > module FileSystem =

00:00:12 #281 [Verbose] >

00:00:12 #282 [Verbose] >     open Common

00:00:12 #283 [Verbose] >

00:00:12 #284 [Verbose] >     /// ## Operators

00:00:12 #285 [Verbose] >

00:00:12 #286 [Verbose] >     module Operators =

00:00:12 #287 [Verbose] >         let inline (</>) a b =

00:00:12 #288 [Verbose] >             System.IO.Path.Combine (a, b)

00:00:12 #289 [Verbose] >

00:00:12 #290 [Verbose] >     open Operators

00:00:12 #291 [Verbose] >

00:00:12 #292 [Verbose] >     /// ## createTempDirectoryName

00:00:12 #293 [Verbose] >

00:00:12 #294 [Verbose] >     let inline createTempDirectoryName () =

00:00:12 #295 [Verbose] >         let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name

00:00:12 #296 [Verbose] >

00:00:12 #297 [Verbose] >         System.IO.Path.GetTempPath ()

00:00:12 #298 [Verbose] >         </> $"!{root}"

00:00:12 #299 [Verbose] >         </> string (newGuidFromDateTime System.DateTime.Now)

00:00:12 #300 [Verbose] >

00:00:12 #301 [Verbose] >     /// ## createTempDirectory

00:00:12 #302 [Verbose] >

00:00:12 #303 [Verbose] >     let inline createTempDirectory () =

00:00:12 #304 [Verbose] >         let tempFolder = createTempDirectoryName ()

00:00:12 #305 [Verbose] >         let result = System.IO.Directory.CreateDirectory tempFolder

00:00:12 #306 [Verbose] >

00:00:12 #307 [Verbose] >         if not result.Exists then

00:00:12 #308 [Verbose] >             let ge...

00:00:15 #309 [Verbose] >

00:00:15 #310 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:15 #311 [Verbose] > open Common

00:00:15 #312 [Verbose] > open FileSystem.Operators

00:00:15 #313 [Verbose] >

00:00:15 #314 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:15 #315 [Verbose] > let tmpSpiralPath = Path.GetTempPath () </> "!dotnet-interactive-spiral"

00:00:15 #316 [Verbose] > let linePlotsDataPath = tmpSpiralPath </> "line-plots-data"

00:00:15 #317 [Verbose] > let linePlotsSvgPath = tmpSpiralPath </> "line-plots-svg"

00:00:15 #318 [Verbose] >

00:00:15 #319 [Verbose] > [[ tmpSpiralPath; linePlotsDataPath; linePlotsSvgPath ]]

00:00:15 #320 [Verbose] > |> List.iter (fun dir -> if Directory.Exists dir |> not then

00:00:15 #321 [Verbose] > Directory.CreateDirectory dir |> ignore)

00:00:15 #322 [Verbose] >

00:00:15 #323 [Verbose] > Formatter.Register<struct (string * string * string * struct (string * float

00:00:15 #324 [Verbose] > array * float array) array)> (

00:00:15 #325 [Verbose] >     (fun struct (caption, x_desc, y_desc, ys) ->

00:00:15 #326 [Verbose] >         let json = (caption, x_desc, y_desc, ys) |> FSharp.Json.Json.serialize

00:00:15 #327 [Verbose] >         async {

00:00:15 #328 [Verbose] >             let hashHex = json |> Crypto.hashText

00:00:15 #329 [Verbose] >             let svgPath = linePlotsSvgPath </> $"{hashHex}.svg"

00:00:15 #330 [Verbose] >

00:00:15 #331 [Verbose] >             if System.IO.File.Exi...

00:00:16 #332 [Verbose] >

00:00:16 #333 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #334 [Verbose] > // // test

00:00:16 #335 [Verbose] >

00:00:16 #336 [Verbose] > open testing

00:00:17 #337 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3563-6396-649308ff3108\main.spi

00:00:18 #338 [Verbose] >

00:00:18 #339 [Verbose] > ╭─[ 2.41s - stdout ]───────────────────────────────────────────────────────────╮

00:00:18 #340 [Verbose] > │ ()                                                                           │

00:00:18 #341 [Verbose] > │                                                                              │

00:00:18 #342 [Verbose] > │                                                                              │

00:00:18 #343 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #344 [Verbose] >

00:00:18 #345 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #346 [Verbose] > inl (/@) x = listm'.(/@) x

00:00:18 #347 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3752-5249-5423c1b82fd8\main.spi

00:00:18 #348 [Verbose] >

00:00:18 #349 [Verbose] > ╭─[ 182.99ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #350 [Verbose] > │ ()                                                                           │

00:00:18 #351 [Verbose] > │                                                                              │

00:00:18 #352 [Verbose] > │                                                                              │

00:00:18 #353 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #354 [Verbose] >

00:00:18 #355 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:18 #356 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:18 #357 [Verbose] > │ ## init_series                                                               │

00:00:18 #358 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #359 [Verbose] >

00:00:18 #360 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #361 [Verbose] > // // test

00:00:18 #362 [Verbose] >

00:00:18 #363 [Verbose] > inl x : a _ f64 = am'.init_series -3 3 0.01

00:00:18 #364 [Verbose] > inl y = x |> am.map math.square

00:00:18 #365 [Verbose] > "square", "x", "y", ;[[ "square", x, y ]]

00:00:18 #366 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3771-7112-7c834137d874\main.spi

00:00:19 #367 [Verbose] >

00:00:19 #368 [Verbose] > ╭─[ 385.23ms - return value ]──────────────────────────────────────────────────╮

00:00:19 #369 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:19 #370 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:19 #371 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:19 #372 [Verbose] > │ stroke="none"/>                                                              │

00:00:19 #373 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:19 #374 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:19 #375 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:19 #376 [Verbose] > │ square                                                                       │

00:00:19 #377 [Verbose] > │ </text>                                                                      │

00:00:19 #378 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:19 #379 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #380 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:19 #381 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #382 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:19 #383 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #384 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:19 #385 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #386 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:19 #387 [Verbose] > │ ...                                                                          │

00:00:19 #388 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #389 [Verbose] >

00:00:19 #390 [Verbose] > ╭─[ 408.62ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #391 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:19 #392 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:19 #393 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:19 #394 [Verbose] > │     let v2 : bool = v1 < 601                                                 │

00:00:19 #395 [Verbose] > │     v2                                                                       │

00:00:19 #396 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:19 #397 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:19 #398 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:19 #399 [Verbose] > │     v3                                                                       │

00:00:19 #400 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:19 #401 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:19 #402 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (601)                      │

00:00:19 #403 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:19 #404 [Verbose] > │     while method1(v1) do                                                     │

00:00:19 #405 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:19 #406 [Verbose] > │         let v4 : float = float v3                                            │

00:00:19 #407 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:19 #408 [Verbose] > │         let v6 : float = -3.0 + v5                                           │

00:00:19 #409 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:19 #410 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:19 #411 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:19 #412 [Verbose] > │         ()                                                                   │

00:00:19 #413 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:19 #414 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:19 #415 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:19 #416 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:19 #417 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:19 #418 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:19 #419 [Verbose] > │         let v14 : float = v13 ** 2.0                                         │

00:00:19 #420 [Verbose] > │         v9.[int v12] <- v14                                                  │

00:00:19 #421 [Verbose] > │         let v15 : int32 = v12 + 1                                            │

00:00:19 #422 [Verbose] > │         v10.l0 <- v15                                                        │

00:00:19 #423 [Verbose] > │         ()                                                                   │

00:00:19 #424 [Verbose] > │     let v16 : string = "square"                                              │

00:00:19 #425 [Verbose] > │     let v17 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:19 #426 [Verbose] > │ (v16, v0, v9)|]                                                              │

00:00:19 #427 [Verbose] > │     let v18 : string = "x"                                                   │

00:00:19 #428 [Verbose] > │     let v19 : string = "y"                                                   │

00:00:19 #429 [Verbose] > │     struct (v16, v18, v19, v17)                                              │

00:00:19 #430 [Verbose] > │ method0()                                                                    │

00:00:19 #431 [Verbose] > │                                                                              │

00:00:19 #432 [Verbose] > │                                                                              │

00:00:19 #433 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #434 [Verbose] >

00:00:19 #435 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #436 [Verbose] > // // test

00:00:19 #437 [Verbose] >

00:00:19 #438 [Verbose] > inl x : a _ f64 = am'.init_series -10 10 0.1

00:00:19 #439 [Verbose] > inl y_sin = x |> am.map sin

00:00:19 #440 [Verbose] > inl y_cos = x |> am.map cos

00:00:19 #441 [Verbose] > "sin cos", "x", "y", ;[[ "sin", x, y_sin; "cos", x, y_cos ]]

00:00:19 #442 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3814-1470-17228ce12241\main.spi

00:00:19 #443 [Verbose] >

00:00:19 #444 [Verbose] > ╭─[ 237.23ms - return value ]──────────────────────────────────────────────────╮

00:00:19 #445 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:19 #446 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:19 #447 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:19 #448 [Verbose] > │ stroke="none"/>                                                              │

00:00:19 #449 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:19 #450 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:19 #451 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:19 #452 [Verbose] > │ sin cos                                                                      │

00:00:19 #453 [Verbose] > │ </text>                                                                      │

00:00:19 #454 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │

00:00:19 #455 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #456 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:19 #457 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #458 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │

00:00:19 #459 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #460 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:19 #461 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #462 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1="424"        │

00:00:19 #463 [Verbose] > │ x2="10...                                                                    │

00:00:19 #464 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #465 [Verbose] >

00:00:19 #466 [Verbose] > ╭─[ 249.84ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #467 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:19 #468 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:19 #469 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:19 #470 [Verbose] > │     let v2 : bool = v1 < 201                                                 │

00:00:19 #471 [Verbose] > │     v2                                                                       │

00:00:19 #472 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:19 #473 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:19 #474 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:19 #475 [Verbose] > │     v3                                                                       │

00:00:19 #476 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:19 #477 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:19 #478 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (201)                      │

00:00:19 #479 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:19 #480 [Verbose] > │     while method1(v1) do                                                     │

00:00:19 #481 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:19 #482 [Verbose] > │         let v4 : float = float v3                                            │

00:00:19 #483 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:19 #484 [Verbose] > │         let v6 : float = -10.0 + v5                                          │

00:00:19 #485 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:19 #486 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:19 #487 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:19 #488 [Verbose] > │         ()                                                                   │

00:00:19 #489 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:19 #490 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:19 #491 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:19 #492 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:19 #493 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:19 #494 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:19 #495 [Verbose] > │         let v14 : float = sin v13                                            │

00:00:19 #496 [Verbose] > │         v9.[int v12] <- v14                                                  │

00:00:19 #497 [Verbose] > │         let v15 : int32 = v12 + 1                                            │

00:00:19 #498 [Verbose] > │         v10.l0 <- v15                                                        │

00:00:19 #499 [Verbose] > │         ()                                                                   │

00:00:19 #500 [Verbose] > │     let v16 : (float []) = Array.zeroCreate<float> (v8)                      │

00:00:19 #501 [Verbose] > │     let v17 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:19 #502 [Verbose] > │     while method2(v8, v17) do                                                │

00:00:19 #503 [Verbose] > │         let v19 : int32 = v17.l0                                             │

00:00:19 #504 [Verbose] > │         let v20 : float = v0.[int v19]                                       │

00:00:19 #505 [Verbose] > │         let v21 : float = cos v20                                            │

00:00:19 #506 [Verbose] > │         v16.[int v19] <- v21                                                 │

00:00:19 #507 [Verbose] > │         let v22 : int32 = v19 + 1                                            │

00:00:19 #508 [Verbose] > │         v17.l0 <- v22                                                        │

00:00:19 #509 [Verbose] > │         ()                                                                   │

00:00:19 #510 [Verbose] > │     let v23 : string = "sin"                                                 │

00:00:19 #511 [Verbose] > │     let v24 : string = "cos"                                                 │

00:00:19 #512 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:19 #513 [Verbose] > │ (v23, v0, v9); struct (v24, v0, v16)|]                                       │

00:00:19 #514 [Verbose] > │     let v26 : string = "sin cos"                                             │

00:00:19 #515 [Verbose] > │     let v27 : string = "x"                                                   │

00:00:19 #516 [Verbose] > │     let v28 : string = "y"                                                   │

00:00:19 #517 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:19 #518 [Verbose] > │ method0()                                                                    │

00:00:19 #519 [Verbose] > │                                                                              │

00:00:19 #520 [Verbose] > │                                                                              │

00:00:19 #521 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #522 [Verbose] >

00:00:19 #523 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #524 [Verbose] > // // test

00:00:19 #525 [Verbose] >

00:00:19 #526 [Verbose] > inl y_pos y0 vy0 ay t =

00:00:19 #527 [Verbose] >     y0 + vy0 * t + ay * (t |> math.square) / 2

00:00:19 #528 [Verbose] >

00:00:19 #529 [Verbose] > inl x : a _ f64 = am'.init_series 0 5 0.01

00:00:19 #530 [Verbose] > inl y = x |> am.map (y_pos 0 20 -9.8)

00:00:19 #531 [Verbose] > "projectile motion", "time (s)", "", ;[[ "height of projectile (m)", x, y ]]

00:00:19 #532 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3841-4187-421066369573\main.spi

00:00:19 #533 [Verbose] >

00:00:19 #534 [Verbose] > ╭─[ 265.21ms - return value ]──────────────────────────────────────────────────╮

00:00:19 #535 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:19 #536 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:19 #537 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:19 #538 [Verbose] > │ stroke="none"/>                                                              │

00:00:19 #539 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:19 #540 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:19 #541 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:19 #542 [Verbose] > │ projectile motion                                                            │

00:00:19 #543 [Verbose] > │ </text>                                                                      │

00:00:19 #544 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:19 #545 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #546 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:19 #547 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #548 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:19 #549 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #550 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:19 #551 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #552 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="99" y1="42...        │

00:00:19 #553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #554 [Verbose] >

00:00:19 #555 [Verbose] > ╭─[ 279.42ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #556 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:19 #557 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:19 #558 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:19 #559 [Verbose] > │     let v2 : bool = v1 < 501                                                 │

00:00:19 #560 [Verbose] > │     v2                                                                       │

00:00:19 #561 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:19 #562 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:19 #563 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:19 #564 [Verbose] > │     v3                                                                       │

00:00:19 #565 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:19 #566 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:19 #567 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (501)                      │

00:00:19 #568 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:19 #569 [Verbose] > │     while method1(v1) do                                                     │

00:00:19 #570 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:19 #571 [Verbose] > │         let v4 : float = float v3                                            │

00:00:19 #572 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:19 #573 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:19 #574 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:19 #575 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:19 #576 [Verbose] > │         ()                                                                   │

00:00:19 #577 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:19 #578 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:19 #579 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:19 #580 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:19 #581 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:19 #582 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:19 #583 [Verbose] > │         let v13 : float = 20.0 * v12                                         │

00:00:19 #584 [Verbose] > │         let v14 : float = v12 ** 2.0                                         │

00:00:19 #585 [Verbose] > │         let v15 : float = -9.8 * v14                                         │

00:00:19 #586 [Verbose] > │         let v16 : float = v15 / 2.0                                          │

00:00:19 #587 [Verbose] > │         let v17 : float = v13 + v16                                          │

00:00:19 #588 [Verbose] > │         v8.[int v11] <- v17                                                  │

00:00:19 #589 [Verbose] > │         let v18 : int32 = v11 + 1                                            │

00:00:19 #590 [Verbose] > │         v9.l0 <- v18                                                         │

00:00:19 #591 [Verbose] > │         ()                                                                   │

00:00:19 #592 [Verbose] > │     let v19 : string = "height of projectile (m)"                            │

00:00:19 #593 [Verbose] > │     let v20 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:19 #594 [Verbose] > │ (v19, v0, v8)|]                                                              │

00:00:19 #595 [Verbose] > │     let v21 : string = "projectile motion"                                   │

00:00:19 #596 [Verbose] > │     let v22 : string = "time (s)"                                            │

00:00:19 #597 [Verbose] > │     let v23 : string = ""                                                    │

00:00:19 #598 [Verbose] > │     struct (v21, v22, v23, v20)                                              │

00:00:19 #599 [Verbose] > │ method0()                                                                    │

00:00:19 #600 [Verbose] > │                                                                              │

00:00:19 #601 [Verbose] > │                                                                              │

00:00:19 #602 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #603 [Verbose] >

00:00:19 #604 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:19 #605 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:19 #606 [Verbose] > │ ## velocity_cf                                                               │

00:00:19 #607 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #608 [Verbose] >

00:00:19 #609 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #610 [Verbose] > type mass = f64

00:00:19 #611 [Verbose] > type time = f64

00:00:19 #612 [Verbose] > type position = f64

00:00:19 #613 [Verbose] > type velocity = f64

00:00:19 #614 [Verbose] > type force = f64

00:00:19 #615 [Verbose] >

00:00:19 #616 [Verbose] > type velocity_cf = mass -> velocity -> list force -> (time -> velocity)

00:00:19 #617 [Verbose] >

00:00:19 #618 [Verbose] > inl velocity_cf m v0 fs =

00:00:19 #619 [Verbose] >     inl f_net = fs |> listm'.sum

00:00:19 #620 [Verbose] >     inl a0 = f_net / m

00:00:19 #621 [Verbose] >     inl v t = v0 + a0 * t

00:00:19 #622 [Verbose] >     v

00:00:19 #623 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3872-7288-7f244ac87738\main.spi

00:00:19 #624 [Verbose] >

00:00:19 #625 [Verbose] > ╭─[ 208.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #626 [Verbose] > │ ()                                                                           │

00:00:19 #627 [Verbose] > │                                                                              │

00:00:19 #628 [Verbose] > │                                                                              │

00:00:19 #629 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #630 [Verbose] >

00:00:19 #631 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #632 [Verbose] > // // test

00:00:19 #633 [Verbose] >

00:00:19 #634 [Verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 0

00:00:19 #635 [Verbose] > |> _equal 0.6

00:00:19 #636 [Verbose] >

00:00:19 #637 [Verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 1

00:00:19 #638 [Verbose] > |> _equal 0.2

00:00:20 #639 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3893-9369-9aef04e0d068\main.spi

00:00:20 #640 [Verbose] >

00:00:20 #641 [Verbose] > ╭─[ 189.37ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #642 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:20 #643 [Verbose] > │     let v0 : string = $"_equal / actual: %A{0.6} / expected: %A{0.6}"        │

00:00:20 #644 [Verbose] > │     let v1 : string = $"_equal / actual: %A{0.2} / expected: %A{0.2}"        │

00:00:20 #645 [Verbose] > │     ()                                                                       │

00:00:20 #646 [Verbose] > │ method0()                                                                    │

00:00:20 #647 [Verbose] > │                                                                              │

00:00:20 #648 [Verbose] > │                                                                              │

00:00:20 #649 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #650 [Verbose] >

00:00:20 #651 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #652 [Verbose] > // // test

00:00:20 #653 [Verbose] >

00:00:20 #654 [Verbose] > inl x = am'.init_series 0 4 0.1

00:00:20 #655 [Verbose] > inl y = x |> am.map (velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]])

00:00:20 #656 [Verbose] > "car on an air track", "time (s)", "", ;[[ "velocity of car (m/s)", x, y ]]

00:00:20 #657 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3913-1313-1e910eff4e95\main.spi

00:00:20 #658 [Verbose] >

00:00:20 #659 [Verbose] > ╭─[ 226.31ms - return value ]──────────────────────────────────────────────────╮

00:00:20 #660 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:20 #661 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:20 #662 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:20 #663 [Verbose] > │ stroke="none"/>                                                              │

00:00:20 #664 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:20 #665 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:20 #666 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:20 #667 [Verbose] > │ car on an air track                                                          │

00:00:20 #668 [Verbose] > │ </text>                                                                      │

00:00:20 #669 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │

00:00:20 #670 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #671 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:20 #672 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #673 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │

00:00:20 #674 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #675 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:20 #676 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #677 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1=...          │

00:00:20 #678 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #679 [Verbose] >

00:00:20 #680 [Verbose] > ╭─[ 237.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #681 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:20 #682 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:20 #683 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:20 #684 [Verbose] > │     let v2 : bool = v1 < 41                                                  │

00:00:20 #685 [Verbose] > │     v2                                                                       │

00:00:20 #686 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:20 #687 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:20 #688 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:20 #689 [Verbose] > │     v3                                                                       │

00:00:20 #690 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:20 #691 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:20 #692 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (41)                       │

00:00:20 #693 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:20 #694 [Verbose] > │     while method1(v1) do                                                     │

00:00:20 #695 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:20 #696 [Verbose] > │         let v4 : float = float v3                                            │

00:00:20 #697 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:20 #698 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:20 #699 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:20 #700 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:20 #701 [Verbose] > │         ()                                                                   │

00:00:20 #702 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:20 #703 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:20 #704 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:20 #705 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:20 #706 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:20 #707 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:20 #708 [Verbose] > │         let v13 : float = -0.39999999999999997 * v12                         │

00:00:20 #709 [Verbose] > │         let v14 : float = 0.6 + v13                                          │

00:00:20 #710 [Verbose] > │         v8.[int v11] <- v14                                                  │

00:00:20 #711 [Verbose] > │         let v15 : int32 = v11 + 1                                            │

00:00:20 #712 [Verbose] > │         v9.l0 <- v15                                                         │

00:00:20 #713 [Verbose] > │         ()                                                                   │

00:00:20 #714 [Verbose] > │     let v16 : string = "velocity of car (m/s)"                               │

00:00:20 #715 [Verbose] > │     let v17 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:20 #716 [Verbose] > │ (v16, v0, v8)|]                                                              │

00:00:20 #717 [Verbose] > │     let v18 : string = "car on an air track"                                 │

00:00:20 #718 [Verbose] > │     let v19 : string = "time (s)"                                            │

00:00:20 #719 [Verbose] > │     let v20 : string = ""                                                    │

00:00:20 #720 [Verbose] > │     struct (v18, v19, v20, v17)                                              │

00:00:20 #721 [Verbose] > │ method0()                                                                    │

00:00:20 #722 [Verbose] > │                                                                              │

00:00:20 #723 [Verbose] > │                                                                              │

00:00:20 #724 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #725 [Verbose] >

00:00:20 #726 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:20 #727 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:20 #728 [Verbose] > │ ## derivative                                                                │

00:00:20 #729 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #730 [Verbose] >

00:00:20 #731 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #732 [Verbose] > type derivative = (f64 -> f64) -> f64 -> f64

00:00:20 #733 [Verbose] >

00:00:20 #734 [Verbose] > inl derivative dt : derivative =

00:00:20 #735 [Verbose] >     fun x t =>

00:00:20 #736 [Verbose] >         (x (t + dt / 2) - x (t - dt / 2)) / dt

00:00:20 #737 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3939-3921-3d9e1cfccd62\main.spi

00:00:20 #738 [Verbose] >

00:00:20 #739 [Verbose] > ╭─[ 151.06ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #740 [Verbose] > │ ()                                                                           │

00:00:20 #741 [Verbose] > │                                                                              │

00:00:20 #742 [Verbose] > │                                                                              │

00:00:20 #743 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #744 [Verbose] >

00:00:20 #745 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #746 [Verbose] > // // test

00:00:20 #747 [Verbose] >

00:00:20 #748 [Verbose] > derivative 1 (fun x => x ** 4 / 4) 1 - 1

00:00:20 #749 [Verbose] > |> _almost_equal 0.25

00:00:20 #750 [Verbose] >

00:00:20 #751 [Verbose] > derivative 0.001 (fun x => x ** 4 / 4) 1 - 1

00:00:20 #752 [Verbose] > |> _almost_equal 0.0000002499998827953931

00:00:20 #753 [Verbose] >

00:00:20 #754 [Verbose] > derivative 0.000001 (fun x => x ** 4 / 4) 1 - 1

00:00:20 #755 [Verbose] > |> _almost_equal 0.000000000001000088900582341

00:00:20 #756 [Verbose] >

00:00:20 #757 [Verbose] > derivative 0.000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:20 #758 [Verbose] > |> _almost_equal 0.00000008274037099909037

00:00:20 #759 [Verbose] >

00:00:20 #760 [Verbose] > derivative 0.000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:20 #761 [Verbose] > |> _almost_equal 0.00008890058234101161

00:00:20 #762 [Verbose] >

00:00:20 #763 [Verbose] > derivative 0.000000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:20 #764 [Verbose] > |> _almost_equal -0.0007992778373592246

00:00:20 #765 [Verbose] >

00:00:20 #766 [Verbose] > derivative 0.000000000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:20 #767 [Verbose] > |> _almost_equal -1

00:00:20 #768 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3954-5448-5d2375bb80dc\main.spi

00:00:20 #769 [Verbose] >

00:00:20 #770 [Verbose] > ╭─[ 189.76ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #771 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:20 #772 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.25} / expected:         │

00:00:20 #773 [Verbose] > │ %A{0.25}"                                                                    │

00:00:20 #774 [Verbose] > │     let v1 : string = $"_almost_equal / actual: %A{2.499998827953931E-07} /  │

00:00:20 #775 [Verbose] > │ expected: %A{2.499998827953931E-07}"                                         │

00:00:20 #776 [Verbose] > │     let v2 : string = $"_almost_equal / actual: %A{1.000088900582341E-12} /  │

00:00:20 #777 [Verbose] > │ expected: %A{1.000088900582341E-12}"                                         │

00:00:20 #778 [Verbose] > │     let v3 : string = $"_almost_equal / actual: %A{8.274037099909037E-08} /  │

00:00:20 #779 [Verbose] > │ expected: %A{8.274037099909037E-08}"                                         │

00:00:20 #780 [Verbose] > │     let v4 : string = $"_almost_equal / actual: %A{8.890058234101161E-05} /  │

00:00:20 #781 [Verbose] > │ expected: %A{8.890058234101161E-05}"                                         │

00:00:20 #782 [Verbose] > │     let v5 : string = $"_almost_equal / actual: %A{-0.0007992778373592246} / │

00:00:20 #783 [Verbose] > │ expected: %A{-0.0007992778373592246}"                                        │

00:00:20 #784 [Verbose] > │     let v6 : string = $"_almost_equal / actual: %A{-1.0} / expected:         │

00:00:20 #785 [Verbose] > │ %A{-1.0}"                                                                    │

00:00:20 #786 [Verbose] > │     ()                                                                       │

00:00:20 #787 [Verbose] > │ method0()                                                                    │

00:00:20 #788 [Verbose] > │                                                                              │

00:00:20 #789 [Verbose] > │                                                                              │

00:00:20 #790 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #791 [Verbose] >

00:00:20 #792 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:20 #793 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:20 #794 [Verbose] > │ ## integration                                                               │

00:00:20 #795 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #796 [Verbose] >

00:00:20 #797 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #798 [Verbose] > type integration = (f64 -> f64) -> f64 -> f64 -> f64

00:00:20 #799 [Verbose] >

00:00:20 #800 [Verbose] > inl integral dt : integration =

00:00:20 #801 [Verbose] >     fun f a b =>

00:00:20 #802 [Verbose] >         inl rec loop t y =

00:00:20 #803 [Verbose] >             if t < b

00:00:20 #804 [Verbose] >             then loop (t + dt) (y + f t * dt)

00:00:20 #805 [Verbose] >             else t, y

00:00:20 #806 [Verbose] >         loop (a + dt / 2) 0

00:00:20 #807 [Verbose] >         |> snd

00:00:20 #808 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3974-7446-7843b6065d8b\main.spi

00:00:20 #809 [Verbose] >

00:00:20 #810 [Verbose] > ╭─[ 153.74ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #811 [Verbose] > │ ()                                                                           │

00:00:20 #812 [Verbose] > │                                                                              │

00:00:20 #813 [Verbose] > │                                                                              │

00:00:20 #814 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #815 [Verbose] >

00:00:20 #816 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #817 [Verbose] > // // test

00:00:20 #818 [Verbose] >

00:00:20 #819 [Verbose] > integral 0.01 math.square 0 1

00:00:20 #820 [Verbose] > |> _almost_equal 0.33332500000000004

00:00:21 #821 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3990-9022-9d082a653bb3\main.spi

00:00:21 #822 [Verbose] >

00:00:21 #823 [Verbose] > ╭─[ 153.12ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #824 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:21 #825 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.3333250000000004} /     │

00:00:21 #826 [Verbose] > │ expected: %A{0.33332500000000004}"                                           │

00:00:21 #827 [Verbose] > │     ()                                                                       │

00:00:21 #828 [Verbose] > │ method0()                                                                    │

00:00:21 #829 [Verbose] > │                                                                              │

00:00:21 #830 [Verbose] > │                                                                              │

00:00:21 #831 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #832 [Verbose] >

00:00:21 #833 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #834 [Verbose] > inl integral' dt : integration =

00:00:21 #835 [Verbose] >     fun f a b =>

00:00:21 #836 [Verbose] >         listm'.init_series (a + dt / 2) (b - dt / 2) dt

00:00:21 #837 [Verbose] >         |> listm.map (f >> (*) dt)

00:00:21 #838 [Verbose] >         |> listm'.sum

00:00:21 #839 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4005-0577-0a28ac0f572a\main.spi

00:00:21 #840 [Verbose] >

00:00:21 #841 [Verbose] > ╭─[ 149.40ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #842 [Verbose] > │ ()                                                                           │

00:00:21 #843 [Verbose] > │                                                                              │

00:00:21 #844 [Verbose] > │                                                                              │

00:00:21 #845 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #846 [Verbose] >

00:00:21 #847 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #848 [Verbose] > // // test

00:00:21 #849 [Verbose] >

00:00:21 #850 [Verbose] > integral' 0.1 math.square 0 1

00:00:21 #851 [Verbose] > |> _almost_equal (integral 0.1 math.square 0 1)

00:00:21 #852 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4020-2090-26526549710d\main.spi

00:00:21 #853 [Verbose] >

00:00:21 #854 [Verbose] > ╭─[ 176.09ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #855 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:21 #856 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.3325000000000001} /     │

00:00:21 #857 [Verbose] > │ expected: %A{0.33249999999999996}"                                           │

00:00:21 #858 [Verbose] > │     ()                                                                       │

00:00:21 #859 [Verbose] > │ method0()                                                                    │

00:00:21 #860 [Verbose] > │                                                                              │

00:00:21 #861 [Verbose] > │                                                                              │

00:00:21 #862 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #863 [Verbose] >

00:00:21 #864 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #865 [Verbose] > inl integral'' dt : integration =

00:00:21 #866 [Verbose] >     fun f a b =>

00:00:21 #867 [Verbose] >         am'.init_series (a + dt / 2) (b - dt / 2) dt

00:00:21 #868 [Verbose] >         |> am.map (f >> (*) dt)

00:00:21 #869 [Verbose] >         |> am'.sum

00:00:21 #870 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4038-3888-3d53436d808d\main.spi

00:00:21 #871 [Verbose] >

00:00:21 #872 [Verbose] > ╭─[ 197.12ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #873 [Verbose] > │ ()                                                                           │

00:00:21 #874 [Verbose] > │                                                                              │

00:00:21 #875 [Verbose] > │                                                                              │

00:00:21 #876 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #877 [Verbose] >

00:00:21 #878 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #879 [Verbose] > // // test

00:00:21 #880 [Verbose] >

00:00:21 #881 [Verbose] > integral'' 0.01 math.square 0 1

00:00:21 #882 [Verbose] > |> _almost_equal (integral 0.01 math.square 0 1)

00:00:21 #883 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4058-5884-5a2a570ca588\main.spi

00:00:21 #884 [Verbose] >

00:00:21 #885 [Verbose] > ╭─[ 266.41ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #886 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:21 #887 [Verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : float}                          │

00:00:21 #888 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:21 #889 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:21 #890 [Verbose] > │     let v2 : bool = v1 < 100                                                 │

00:00:21 #891 [Verbose] > │     v2                                                                       │

00:00:21 #892 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:21 #893 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:21 #894 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #895 [Verbose] > │     v3                                                                       │

00:00:21 #896 [Verbose] > │ and method3 (v0 : int32, v1 : Mut1) : bool =                                 │

00:00:21 #897 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:21 #898 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #899 [Verbose] > │     v3                                                                       │

00:00:21 #900 [Verbose] > │ and method0 () : unit =                                                      │

00:00:21 #901 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (100)                      │

00:00:21 #902 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:21 #903 [Verbose] > │     while method1(v1) do                                                     │

00:00:21 #904 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:21 #905 [Verbose] > │         let v4 : float = float v3                                            │

00:00:21 #906 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:21 #907 [Verbose] > │         let v6 : float = 0.005 + v5                                          │

00:00:21 #908 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:21 #909 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:21 #910 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:21 #911 [Verbose] > │         ()                                                                   │

00:00:21 #912 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:21 #913 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:21 #914 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:21 #915 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:21 #916 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:21 #917 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:21 #918 [Verbose] > │         let v14 : float = v13 ** 2.0                                         │

00:00:21 #919 [Verbose] > │         let v15 : float = 0.01 * v14                                         │

00:00:21 #920 [Verbose] > │         v9.[int v12] <- v15                                                  │

00:00:21 #921 [Verbose] > │         let v16 : int32 = v12 + 1                                            │

00:00:21 #922 [Verbose] > │         v10.l0 <- v16                                                        │

00:00:21 #923 [Verbose] > │         ()                                                                   │

00:00:21 #924 [Verbose] > │     let v17 : int32 = v9.Length                                              │

00:00:21 #925 [Verbose] > │     let v18 : Mut1 = {l0 = 0; l1 = 0.0} : Mut1                               │

00:00:21 #926 [Verbose] > │     while method3(v17, v18) do                                               │

00:00:21 #927 [Verbose] > │         let v20 : int32 = v18.l0                                             │

00:00:21 #928 [Verbose] > │         let v21 : float = v18.l1                                             │

00:00:21 #929 [Verbose] > │         let v22 : float = v9.[int v20]                                       │

00:00:21 #930 [Verbose] > │         let v23 : float = v21 + v22                                          │

00:00:21 #931 [Verbose] > │         let v24 : int32 = v20 + 1                                            │

00:00:21 #932 [Verbose] > │         v18.l0 <- v24                                                        │

00:00:21 #933 [Verbose] > │         v18.l1 <- v23                                                        │

00:00:21 #934 [Verbose] > │         ()                                                                   │

00:00:21 #935 [Verbose] > │     let v25 : float = v18.l1                                                 │

00:00:21 #936 [Verbose] > │     let v26 : float = 0.3333250000000004 - v25                               │

00:00:21 #937 [Verbose] > │     let v27 : float =  -v26                                                  │

00:00:21 #938 [Verbose] > │     let v28 : bool = v26 >= v27                                              │

00:00:21 #939 [Verbose] > │     let v29 : float =                                                        │

00:00:21 #940 [Verbose] > │         if v28 then                                                          │

00:00:21 #941 [Verbose] > │             v26                                                              │

00:00:21 #942 [Verbose] > │         else                                                                 │

00:00:21 #943 [Verbose] > │             v27                                                              │

00:00:21 #944 [Verbose] > │     let v30 : bool = v29 < 1E-08                                             │

00:00:21 #945 [Verbose] > │     let v31 : string = $"_almost_equal / actual: %A{v25} / expected:         │

00:00:21 #946 [Verbose] > │ %A{0.3333250000000004}"                                                      │

00:00:21 #947 [Verbose] > │     let v32 : bool = v30 = false                                             │

00:00:21 #948 [Verbose] > │     if v32 then                                                              │

00:00:21 #949 [Verbose] > │         failwith<unit> v31                                                   │

00:00:21 #950 [Verbose] > │ method0()                                                                    │

00:00:21 #951 [Verbose] > │                                                                              │

00:00:21 #952 [Verbose] > │                                                                              │

00:00:21 #953 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #954 [Verbose] >

00:00:21 #955 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:21 #956 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:21 #957 [Verbose] > │ ## anti_derivative                                                           │

00:00:21 #958 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #959 [Verbose] >

00:00:21 #960 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #961 [Verbose] > inl anti_derivative dt v0 a t =

00:00:21 #962 [Verbose] >     v0 + integral' dt a 0 t

00:00:22 #963 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4088-8844-8c9c9153ebe2\main.spi

00:00:22 #964 [Verbose] >

00:00:22 #965 [Verbose] > ╭─[ 223.67ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #966 [Verbose] > │ ()                                                                           │

00:00:22 #967 [Verbose] > │                                                                              │

00:00:22 #968 [Verbose] > │                                                                              │

00:00:22 #969 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #970 [Verbose] >

00:00:22 #971 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:22 #972 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:22 #973 [Verbose] > │ ## velocity_ft                                                               │

00:00:22 #974 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #975 [Verbose] >

00:00:22 #976 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #977 [Verbose] > type velocity_ft = mass -> velocity -> list (time -> force) -> (time ->

00:00:22 #978 [Verbose] > velocity)

00:00:22 #979 [Verbose] >

00:00:22 #980 [Verbose] > inl velocity_ft dt : velocity_ft =

00:00:22 #981 [Verbose] >     fun m v0 fs =>

00:00:22 #982 [Verbose] >         inl f_net t = fs |> listm.map (fun f => f t) |> listm'.sum

00:00:22 #983 [Verbose] >         inl a t = f_net t / m

00:00:22 #984 [Verbose] >         anti_derivative dt v0 a

00:00:22 #985 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4111-1117-12042f2f6118\main.spi

00:00:22 #986 [Verbose] >

00:00:22 #987 [Verbose] > ╭─[ 149.31ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #988 [Verbose] > │ ()                                                                           │

00:00:22 #989 [Verbose] > │                                                                              │

00:00:22 #990 [Verbose] > │                                                                              │

00:00:22 #991 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #992 [Verbose] >

00:00:22 #993 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:22 #994 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:22 #995 [Verbose] > │ ## position_ft                                                               │

00:00:22 #996 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #997 [Verbose] >

00:00:22 #998 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #999 [Verbose] > type position_ft = mass -> position -> velocity -> list (time -> force) -> (time

00:00:22 #1000 [Verbose] > -> position)

00:00:22 #1001 [Verbose] >

00:00:22 #1002 [Verbose] > inl position_ft dt : position_ft =

00:00:22 #1003 [Verbose] >     fun m x0 v0 fs =>

00:00:22 #1004 [Verbose] >         velocity_ft dt m v0 fs

00:00:22 #1005 [Verbose] >         |> anti_derivative dt x0

00:00:22 #1006 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4126-2654-23e360617ca0\main.spi

00:00:22 #1007 [Verbose] >

00:00:22 #1008 [Verbose] > ╭─[ 152.64ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #1009 [Verbose] > │ ()                                                                           │

00:00:22 #1010 [Verbose] > │                                                                              │

00:00:22 #1011 [Verbose] > │                                                                              │

00:00:22 #1012 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1013 [Verbose] >

00:00:22 #1014 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #1015 [Verbose] > // // test

00:00:22 #1016 [Verbose] >

00:00:22 #1017 [Verbose] > inl pedal_coast (t : time) : force =

00:00:22 #1018 [Verbose] >     inl t_cycle = 20

00:00:22 #1019 [Verbose] >     inl n_complete : i32 = t / t_cycle |> conv

00:00:22 #1020 [Verbose] >     inl remainder = t - conv n_complete * t_cycle

00:00:22 #1021 [Verbose] >     if remainder > 0 && remainder < 10

00:00:22 #1022 [Verbose] >     then 10

00:00:22 #1023 [Verbose] >     else 0

00:00:22 #1024 [Verbose] >

00:00:22 #1025 [Verbose] > inl x = am'.init_series -5 45 0.1

00:00:22 #1026 [Verbose] > inl y = x |> am.map pedal_coast

00:00:22 #1027 [Verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "force on bike (N)", x, y ]]

00:00:22 #1028 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4142-4200-4a9db0945553\main.spi

00:00:22 #1029 [Verbose] >

00:00:22 #1030 [Verbose] > ╭─[ 244.35ms - return value ]──────────────────────────────────────────────────╮

00:00:22 #1031 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:22 #1032 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:22 #1033 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:22 #1034 [Verbose] > │ stroke="none"/>                                                              │

00:00:22 #1035 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:22 #1036 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:22 #1037 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:22 #1038 [Verbose] > │ child pedaling then coasting                                                 │

00:00:22 #1039 [Verbose] > │ </text>                                                                      │

00:00:22 #1040 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:22 #1041 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1042 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:22 #1043 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1044 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:22 #1045 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1046 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:22 #1047 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1048 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:22 #1049 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1050 [Verbose] >

00:00:22 #1051 [Verbose] > ╭─[ 258.91ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #1052 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:22 #1053 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:22 #1054 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:22 #1055 [Verbose] > │     let v2 : bool = v1 < 501                                                 │

00:00:22 #1056 [Verbose] > │     v2                                                                       │

00:00:22 #1057 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:22 #1058 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:22 #1059 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:22 #1060 [Verbose] > │     v3                                                                       │

00:00:22 #1061 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:22 #1062 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:22 #1063 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (501)                      │

00:00:22 #1064 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:22 #1065 [Verbose] > │     while method1(v1) do                                                     │

00:00:22 #1066 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:22 #1067 [Verbose] > │         let v4 : float = float v3                                            │

00:00:22 #1068 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:22 #1069 [Verbose] > │         let v6 : float = -5.0 + v5                                           │

00:00:22 #1070 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:22 #1071 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:22 #1072 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:22 #1073 [Verbose] > │         ()                                                                   │

00:00:22 #1074 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:22 #1075 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:22 #1076 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:22 #1077 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:22 #1078 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:22 #1079 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:22 #1080 [Verbose] > │         let v14 : float = v13 / 20.0                                         │

00:00:22 #1081 [Verbose] > │         let v15 : int32 = int32 v14                                          │

00:00:22 #1082 [Verbose] > │         let v16 : float = float v15                                          │

00:00:22 #1083 [Verbose] > │         let v17 : float = v16 * 20.0                                         │

00:00:22 #1084 [Verbose] > │         let v18 : float = v13 - v17                                          │

00:00:22 #1085 [Verbose] > │         let v19 : bool = v18 > 0.0                                           │

00:00:22 #1086 [Verbose] > │         let v21 : bool =                                                     │

00:00:22 #1087 [Verbose] > │             if v19 then                                                      │

00:00:22 #1088 [Verbose] > │                 let v20 : bool = v18 < 10.0                                  │

00:00:22 #1089 [Verbose] > │                 v20                                                          │

00:00:22 #1090 [Verbose] > │             else                                                             │

00:00:22 #1091 [Verbose] > │                 false                                                        │

00:00:22 #1092 [Verbose] > │         let v22 : float =                                                    │

00:00:22 #1093 [Verbose] > │             if v21 then                                                      │

00:00:22 #1094 [Verbose] > │                 10.0                                                         │

00:00:22 #1095 [Verbose] > │             else                                                             │

00:00:22 #1096 [Verbose] > │                 0.0                                                          │

00:00:22 #1097 [Verbose] > │         v9.[int v12] <- v22                                                  │

00:00:22 #1098 [Verbose] > │         let v23 : int32 = v12 + 1                                            │

00:00:22 #1099 [Verbose] > │         v10.l0 <- v23                                                        │

00:00:22 #1100 [Verbose] > │         ()                                                                   │

00:00:22 #1101 [Verbose] > │     let v24 : string = "force on bike (N)"                                   │

00:00:22 #1102 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:22 #1103 [Verbose] > │ (v24, v0, v9)|]                                                              │

00:00:22 #1104 [Verbose] > │     let v26 : string = "child pedaling then coasting"                        │

00:00:22 #1105 [Verbose] > │     let v27 : string = "time (s)"                                            │

00:00:22 #1106 [Verbose] > │     let v28 : string = ""                                                    │

00:00:22 #1107 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:22 #1108 [Verbose] > │ method0()                                                                    │

00:00:22 #1109 [Verbose] > │                                                                              │

00:00:22 #1110 [Verbose] > │                                                                              │

00:00:22 #1111 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1112 [Verbose] >

00:00:22 #1113 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #1114 [Verbose] > // // test

00:00:22 #1115 [Verbose] >

00:00:22 #1116 [Verbose] > inl x = am'.init_series -5 45 1

00:00:22 #1117 [Verbose] > inl y = x |> am.map (position_ft 0.1f64 20 0 0 [[ pedal_coast ]])

00:00:22 #1118 [Verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "position of bike (m)", x, y

00:00:22 #1119 [Verbose] > ]]

00:00:22 #1120 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4170-7065-757a666c4b87\main.spi

00:00:23 #1121 [Verbose] >

00:00:23 #1122 [Verbose] > ╭─[ 495.53ms - return value ]──────────────────────────────────────────────────╮

00:00:23 #1123 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:23 #1124 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:23 #1125 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:23 #1126 [Verbose] > │ stroke="none"/>                                                              │

00:00:23 #1127 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:23 #1128 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:23 #1129 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:23 #1130 [Verbose] > │ child pedaling then coasting                                                 │

00:00:23 #1131 [Verbose] > │ </text>                                                                      │

00:00:23 #1132 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:23 #1133 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1134 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:23 #1135 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1136 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:23 #1137 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1138 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:23 #1139 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1140 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:23 #1141 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1142 [Verbose] >

00:00:23 #1143 [Verbose] > ╭─[ 506.01ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #1144 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:23 #1145 [Verbose] > │ and UH0 =                                                                    │

00:00:23 #1146 [Verbose] > │     | UH0_0 of float * UH0                                                   │

00:00:23 #1147 [Verbose] > │     | UH0_1                                                                  │

00:00:23 #1148 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:23 #1149 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:23 #1150 [Verbose] > │     let v2 : bool = v1 < 51                                                  │

00:00:23 #1151 [Verbose] > │     v2                                                                       │

00:00:23 #1152 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:23 #1153 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:23 #1154 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:23 #1155 [Verbose] > │     v3                                                                       │

00:00:23 #1156 [Verbose] > │ and method3 (v0 : float, v1 : float) : UH0 =                                 │

00:00:23 #1157 [Verbose] > │     let v2 : bool = v1 < v0                                                  │

00:00:23 #1158 [Verbose] > │     if v2 then                                                               │

00:00:23 #1159 [Verbose] > │         let v3 : float = 0.1 * v1                                            │

00:00:23 #1160 [Verbose] > │         let v4 : float = 0.05 + v3                                           │

00:00:23 #1161 [Verbose] > │         let v5 : float = v1 + 1.0                                            │

00:00:23 #1162 [Verbose] > │         let v6 : UH0 = method3(v0, v5)                                       │

00:00:23 #1163 [Verbose] > │         UH0_0(v4, v6)                                                        │

00:00:23 #1164 [Verbose] > │     else                                                                     │

00:00:23 #1165 [Verbose] > │         UH0_1                                                                │

00:00:23 #1166 [Verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:23 #1167 [Verbose] > │     match v0 with                                                            │

00:00:23 #1168 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:23 #1169 [Verbose] > │         let v4 : UH0 = method5(v3, v1)                                       │

00:00:23 #1170 [Verbose] > │         let v5 : float = v2 / 20.0                                           │

00:00:23 #1171 [Verbose] > │         let v6 : int32 = int32 v5                                            │

00:00:23 #1172 [Verbose] > │         let v7 : float = float v6                                            │

00:00:23 #1173 [Verbose] > │         let v8 : float = v7 * 20.0                                           │

00:00:23 #1174 [Verbose] > │         let v9 : float = v2 - v8                                             │

00:00:23 #1175 [Verbose] > │         let v10 : bool = v9 > 0.0                                            │

00:00:23 #1176 [Verbose] > │         let v12 : bool =                                                     │

00:00:23 #1177 [Verbose] > │             if v10 then                                                      │

00:00:23 #1178 [Verbose] > │                 let v11 : bool = v9 < 10.0                                   │

00:00:23 #1179 [Verbose] > │                 v11                                                          │

00:00:23 #1180 [Verbose] > │             else                                                             │

00:00:23 #1181 [Verbose] > │                 false                                                        │

00:00:23 #1182 [Verbose] > │         let v13 : float =                                                    │

00:00:23 #1183 [Verbose] > │             if v12 then                                                      │

00:00:23 #1184 [Verbose] > │                 10.0                                                         │

00:00:23 #1185 [Verbose] > │             else                                                             │

00:00:23 #1186 [Verbose] > │                 0.0                                                          │

00:00:23 #1187 [Verbose] > │         let v14 : float = v13 / 20.0                                         │

00:00:23 #1188 [Verbose] > │         let v15 : float = 0.1 * v14                                          │

00:00:23 #1189 [Verbose] > │         UH0_0(v15, v4)                                                       │

00:00:23 #1190 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:23 #1191 [Verbose] > │         v1                                                                   │

00:00:23 #1192 [Verbose] > │ and method6 (v0 : UH0, v1 : float) : float =                                 │

00:00:23 #1193 [Verbose] > │     match v0 with                                                            │

00:00:23 #1194 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:23 #1195 [Verbose] > │         let v4 : float = v1 + v2                                             │

00:00:23 #1196 [Verbose] > │         method6(v3, v4)                                                      │

00:00:23 #1197 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:23 #1198 [Verbose] > │         v1                                                                   │

00:00:23 #1199 [Verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:23 #1200 [Verbose] > │     match v0 with                                                            │

00:00:23 #1201 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:23 #1202 [Verbose] > │         let v4 : UH0 = method4(v3, v1)                                       │

00:00:23 #1203 [Verbose] > │         let v5 : float = v2 - 0.05                                           │

00:00:23 #1204 [Verbose] > │         let v6 : float = v5 - 0.05                                           │

00:00:23 #1205 [Verbose] > │         let v7 : float = v6 / 0.1                                            │

00:00:23 #1206 [Verbose] > │         let v8 : float = v7 + 1.0                                            │

00:00:23 #1207 [Verbose] > │         let v9 : float = 0.0                                                 │

00:00:23 #1208 [Verbose] > │         let v10 : UH0 = method3(v8, v9)                                      │

00:00:23 #1209 [Verbose] > │         let v11 : UH0 = UH0_1                                                │

00:00:23 #1210 [Verbose] > │         let v12 : UH0 = method5(v10, v11)                                    │

00:00:23 #1211 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:23 #1212 [Verbose] > │         let v14 : float = method6(v12, v13)                                  │

00:00:23 #1213 [Verbose] > │         let v15 : float = 0.1 * v14                                          │

00:00:23 #1214 [Verbose] > │         UH0_0(v15, v4)                                                       │

00:00:23 #1215 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:23 #1216 [Verbose] > │         v1                                                                   │

00:00:23 #1217 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:23 #1218 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:23 #1219 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (51)                       │

00:00:23 #1220 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #1221 [Verbose] > │     while method1(v1) do                                                     │

00:00:23 #1222 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:23 #1223 [Verbose] > │         let v4 : float = float v3                                            │

00:00:23 #1224 [Verbose] > │         let v5 : float = -5.0 + v4                                           │

00:00:23 #1225 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:23 #1226 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:23 #1227 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:23 #1228 [Verbose] > │         ()                                                                   │

00:00:23 #1229 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:23 #1230 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:23 #1231 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #1232 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:23 #1233 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:23 #1234 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:23 #1235 [Verbose] > │         let v13 : float = v12 - 0.05                                         │

00:00:23 #1236 [Verbose] > │         let v14 : float = v13 - 0.05                                         │

00:00:23 #1237 [Verbose] > │         let v15 : float = v14 / 0.1                                          │

00:00:23 #1238 [Verbose] > │         let v16 : float = v15 + 1.0                                          │

00:00:23 #1239 [Verbose] > │         let v17 : float = 0.0                                                │

00:00:23 #1240 [Verbose] > │         let v18 : UH0 = method3(v16, v17)                                    │

00:00:23 #1241 [Verbose] > │         let v19 : UH0 = UH0_1                                                │

00:00:23 #1242 [Verbose] > │         let v20 : UH0 = method4(v18, v19)                                    │

00:00:23 #1243 [Verbose] > │         let v21 : float = 0.0                                                │

00:00:23 #1244 [Verbose] > │         let v22 : float = method6(v20, v21)                                  │

00:00:23 #1245 [Verbose] > │         v8.[int v11] <- v22                                                  │

00:00:23 #1246 [Verbose] > │         let v23 : int32 = v11 + 1                                            │

00:00:23 #1247 [Verbose] > │         v9.l0 <- v23                                                         │

00:00:23 #1248 [Verbose] > │         ()                                                                   │

00:00:23 #1249 [Verbose] > │     let v24 : string = "position of bike (m)"                                │

00:00:23 #1250 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:23 #1251 [Verbose] > │ (v24, v0, v8)|]                                                              │

00:00:23 #1252 [Verbose] > │     let v26 : string = "child pedaling then coasting"                        │

00:00:23 #1253 [Verbose] > │     let v27 : string = "time (s)"                                            │

00:00:23 #1254 [Verbose] > │     let v28 : string = ""                                                    │

00:00:23 #1255 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:23 #1256 [Verbose] > │ method0()                                                                    │

00:00:23 #1257 [Verbose] > │                                                                              │

00:00:23 #1258 [Verbose] > │                                                                              │

00:00:23 #1259 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1260 [Verbose] >

00:00:23 #1261 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:23 #1262 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:23 #1263 [Verbose] > │ ## velocity_fv                                                               │

00:00:23 #1264 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1265 [Verbose] >

00:00:23 #1266 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #1267 [Verbose] > inl newton_second_v m fs v0 =

00:00:23 #1268 [Verbose] >     fs |> listm.map (fun f => f v0) |> listm'.sum |> fun x => x / m

00:00:23 #1269 [Verbose] >

00:00:23 #1270 [Verbose] > inl update_velocity dt m fs v0 =

00:00:23 #1271 [Verbose] >     v0 + newton_second_v m fs v0 * dt

00:00:23 #1272 [Verbose] >

00:00:23 #1273 [Verbose] > inl velocity_fv dt m v0 fs t =

00:00:23 #1274 [Verbose] >     stream.iterate (update_velocity dt m fs) v0

00:00:23 #1275 [Verbose] >     |> stream.try_item (t / dt |> math.round |> abs)

00:00:23 #1276 [Verbose] >     |> optionm'.default_value 0

00:00:23 #1277 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4226-2621-2314474311d7\main.spi

00:00:23 #1278 [Verbose] >

00:00:23 #1279 [Verbose] > ╭─[ 146.00ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #1280 [Verbose] > │ ()                                                                           │

00:00:23 #1281 [Verbose] > │                                                                              │

00:00:23 #1282 [Verbose] > │                                                                              │

00:00:23 #1283 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1284 [Verbose] >

00:00:23 #1285 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #1286 [Verbose] > inl f_air drag rho area v =

00:00:23 #1287 [Verbose] >     -drag * rho * area * abs v * v / 2

00:00:23 #1288 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4240-4092-4ab2ab7ee34d\main.spi

00:00:23 #1289 [Verbose] >

00:00:23 #1290 [Verbose] > ╭─[ 201.04ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #1291 [Verbose] > │ ()                                                                           │

00:00:23 #1292 [Verbose] > │                                                                              │

00:00:23 #1293 [Verbose] > │                                                                              │

00:00:23 #1294 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1295 [Verbose] >

00:00:23 #1296 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #1297 [Verbose] > // // test

00:00:23 #1298 [Verbose] >

00:00:23 #1299 [Verbose] > inl x = am'.init_series 0 60 0.5

00:00:23 #1300 [Verbose] > inl y = x |> am.map (velocity_fv 1 70 0f64 [[ fun _ => 100; f_air 2 1.225 0.6

00:00:23 #1301 [Verbose] > ]])

00:00:23 #1302 [Verbose] > "bike velocity", "time (s)", "", ;[[ "velocity of bike (m/s)", x, y ]]

00:00:23 #1303 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4261-6126-62fa89daeadd\main.spi

00:00:24 #1304 [Verbose] >

00:00:24 #1305 [Verbose] > ╭─[ 563.70ms - return value ]──────────────────────────────────────────────────╮

00:00:24 #1306 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:24 #1307 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:24 #1308 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:24 #1309 [Verbose] > │ stroke="none"/>                                                              │

00:00:24 #1310 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:24 #1311 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:24 #1312 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:24 #1313 [Verbose] > │ bike velocity                                                                │

00:00:24 #1314 [Verbose] > │ </text>                                                                      │

00:00:24 #1315 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:24 #1316 [Verbose] > │ y2="75"/>                                                                    │

00:00:24 #1317 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:24 #1318 [Verbose] > │ y2="75"/>                                                                    │

00:00:24 #1319 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:24 #1320 [Verbose] > │ y2="75"/>                                                                    │

00:00:24 #1321 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:24 #1322 [Verbose] > │ y2="75"/>                                                                    │

00:00:24 #1323 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x...    │

00:00:24 #1324 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #1325 [Verbose] >

00:00:24 #1326 [Verbose] > ╭─[ 579.50ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #1327 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:24 #1328 [Verbose] > │ and UH0 =                                                                    │

00:00:24 #1329 [Verbose] > │     | UH0_0 of float * (unit -> UH0)                                         │

00:00:24 #1330 [Verbose] > │     | UH0_1                                                                  │

00:00:24 #1331 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:24 #1332 [Verbose] > │     | US0_0                                                                  │

00:00:24 #1333 [Verbose] > │     | US0_1 of f1_0 : float                                                  │

00:00:24 #1334 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:24 #1335 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:24 #1336 [Verbose] > │     let v2 : bool = v1 < 121                                                 │

00:00:24 #1337 [Verbose] > │     v2                                                                       │

00:00:24 #1338 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:24 #1339 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:24 #1340 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:24 #1341 [Verbose] > │     v3                                                                       │

00:00:24 #1342 [Verbose] > │ and closure129 () () : UH0 =                                                 │

00:00:24 #1343 [Verbose] > │     let v0 : (unit -> UH0) = closure129()                                    │

00:00:24 #1344 [Verbose] > │     UH0_0(11.664236870396083, v0)                                            │

00:00:24 #1345 [Verbose] > │ and closure128 () () : UH0 =                                                 │

00:00:24 #1346 [Verbose] > │     let v0 : (unit -> UH0) = closure129()                                    │

00:00:24 #1347 [Verbose] > │     UH0_0(11.664236870396081, v0)                                            │

00:00:24 #1348 [Verbose] > │ and closure127 () () : UH0 =                                                 │

00:00:24 #1349 [Verbose] > │     let v0 : (unit -> UH0) = closure128()                                    │

00:00:24 #1350 [Verbose] > │     UH0_0(11.66423687039608, v0)                                             │

00:00:24 #1351 [Verbose] > │ and closure126 () () : UH0 =                                                 │

00:00:24 #1352 [Verbose] > │     let v0 : (unit -> UH0) = closure127()                                    │

00:00:24 #1353 [Verbose] > │     UH0_0(11.664236870396078, v0)                                            │

00:00:24 #1354 [Verbose] > │ and closure125 () () : UH0 =                                                 │

00:00:24 #1355 [Verbose] > │     let v0 : (unit -> UH0) = closure126()                                    │

00:00:24 #1356 [Verbose] > │     UH0_0(11.664236870396074, v0)                                            │

00:00:24 #1357 [Verbose] > │ and closure124 () () : UH0 =                                                 │

00:00:24 #1358 [Verbose] > │     let v0 : (unit -> UH0) = closure125()                                    │

00:00:24 #1359 [Verbose] > │     UH0_0(11.66423687039607, v0)                                             │

00:00:24 #1360 [Verbose] > │ and closure123 () () : UH0 =                                                 │

00:00:24 #1361 [Verbose] > │     let v0 : (unit -> UH0) = closure124()                                    │

00:00:24 #1362 [Verbose] > │     UH0_0(11.664236870396065, v0)                                            │

00:00:24 #1363 [Verbose] > │ and closure122 () () : UH0 =                                                 │

00:00:24 #1364 [Verbose] > │     let v0 : (unit -> UH0) = closure123()                                    │

00:00:24 #1365 [Verbose] > │     UH0_0(11.664236870396058, v0)                                            │

00:00:24 #1366 [Verbose] > │ and closure121 () () : UH0 =                                                 │

00:00:24 #1367 [Verbose] > │     let v0 : (unit -> UH0) = closure122()                                    │

00:00:24 #1368 [Verbose] > │     UH0_0(11.66423687039605, v0)                                             │

00:00:24 #1369 [Verbose] > │ and closure120 () () : UH0 =                                                 │

00:00:24 #1370 [Verbose] > │     let v0 : (unit -> UH0) = closure121()                                    │

00:00:24 #1371 [Verbose] > │     UH0_0(11.664236870396037, v0)                                            │

00:00:24 #1372 [Verbose] > │ and closure119 () () : UH0 =                                                 │

00:00:24 #1373 [Verbose] > │     let v0 : (unit -> UH0) = closure120()                                    │

00:00:24 #1374 [Verbose] > │     UH0_0(11.66423687039602, v0)                                             │

00:00:24 #1375 [Verbose] > │ and closure118 () () : UH0 =                                                 │

00:00:24 #1376 [Verbose] > │     let v0 : (unit -> UH0) = closure119()                                    │

00:00:24 #1377 [Verbose] > │     UH0_0(11.664236870396, v0)                                               │

00:00:24 #1378 [Verbose] > │ and closure117 () () : UH0 =                                                 │

00:00:24 #1379 [Verbose] > │     let v0 : (unit -> UH0) = closure118()                                    │

00:00:24 #1380 [Verbose] > │     UH0_0(11.664236870395971, v0)                                            │

00:00:24 #1381 [Verbose] > │ and closure116 () () : UH0 =                                                 │

00:00:24 #1382 [Verbose] > │     let v0 : (unit -> UH0) = closure117()                                    │

00:00:24 #1383 [Verbose] > │     UH0_0(11.664236870395934, v0)                                            │

00:00:24 #1384 [Verbose] > │ and closure115 () () : UH0 =                                                 │

00:00:24 #1385 [Verbose] > │     let v0 : (unit -> UH0) = closure116()                                    │

00:00:24 #1386 [Verbose] > │     UH0_0(11.664236870395884, v0)                                            │

00:00:24 #1387 [Verbose] > │ and closure114 () () : UH0 =                                                 │

00:00:24 #1388 [Verbose] > │     let v0 : (unit -> UH0) = closure115()                                    │

00:00:24 #1389 [Verbose] > │     UH0_0(11.664236870395818, v0)                                            │

00:00:24 #1390 [Verbose] > │ and closure113 () () : UH0 =                                                 │

00:00:24 #1391 [Verbose] > │     let v0 : (unit -> UH0) = closure114()                                    │

00:00:24 #1392 [Verbose] > │     UH0_0(11.664236870395731, v0)                                            │

00:00:24 #1393 [Verbose] > │ and closure112 () () : UH0 =                                                 │

00:00:24 #1394 [Verbose] > │     let v0 : (unit -> UH0) = closure113()                                    │

00:00:24 #1395 [Verbose] > │     UH0_0(11.664236870395616, v0)                                            │

00:00:24 #1396 [Verbose] > │ and closure111 () () : UH0 =                                                 │

00:00:24 #1397 [Verbose] > │     let v0 : (unit -> UH0) = closure112()                                    │

00:00:24 #1398 [Verbose] > │     UH0_0(11.664236870395463, v0)                                            │

00:00:24 #1399 [Verbose] > │ and closure110 () () : UH0 =                                                 │

00:00:24 #1400 [Verbose] > │     let v0 : (unit -> UH0) = closure111()                                    │

00:00:24 #1401 [Verbose] > │     UH0_0(11.66423687039526, v0)                                             │

00:00:24 #1402 [Verbose] > │ and closure109 () () : UH0 =                                                 │

00:00:24 #1403 [Verbose] > │     let v0 : (unit -> UH0) = closure110()                                    │

00:00:24 #1404 [Verbose] > │     UH0_0(11.664236870394992, v0)                                            │

00:00:24 #1405 [Verbose] > │ and closure108 () () : UH0 =                                                 │

00:00:24 #1406 [Verbose] > │     let v0 : (unit -> UH0) = closure109()                                    │

00:00:24 #1407 [Verbose] > │     UH0_0(11.664236870394637, v0)                                            │

00:00:24 #1408 [Verbose] > │ and closure107 () () : UH0 =                                                 │

00:00:24 #1409 [Verbose] > │     let v0 : (unit -> UH0) = closure108()                                    │

00:00:24 #1410 [Verbose] > │     UH0_0(11.664236870394168, v0)                                            │

00:00:24 #1411 [Verbose] > │ and closure106 () () : UH0 =                                                 │

00:00:24 #1412 [Verbose] > │     let v0 : (unit -> UH0) = closure107()                                    │

00:00:24 #1413 [Verbose] > │     UH0_0(11.664236870393546, v0)                                            │

00:00:24 #1414 [Verbose] > │ and closure105 () () : UH0 =                                                 │

00:00:24 #1415 [Verbose] > │     let v0 : (unit -> UH0) = closure106()                                    │

00:00:24 #1416 [Verbose] > │     UH0_0(11.664236870392722, v0)                                            │

00:00:24 #1417 [Verbose] > │ and closure104 () () : UH0 =                                                 │

00:00:24 #1418 [Verbose] > │     let v0 : (unit -> UH0) = closure105()                                    │

00:00:24 #1419 [Verbose] > │     UH0_0(11.664236870391631, v0)                                            │

00:00:24 #1420 [Verbose] > │ and closure103 () () : UH0 =                                                 │

00:00:24 #1421 [Verbose] > │     let v0 : (unit -> UH0) = closure104()                                    │

00:00:24 #1422 [Verbose] > │     UH0_0(11.664236870390187, v0)                                            │

00:00:24 #1423 [Verbose] > │ and closure102 () () : UH0 =                                                 │

00:00:24 #1424 [Verbose] > │     let v0 : (unit -> UH0) = closure103()                                    │

00:00:24 #1425 [Verbose] > │     UH0_0(11.664236870388274, v0)                                            │

00:00:24 #1426 [Verbose] > │ and closure101 () () : UH0 =                                                 │

00:00:24 #1427 [Verbose] > │     let v0 : (unit -> UH0) = closure102()                                    │

00:00:24 #1428 [Verbose] > │     UH0_0(11.66423687038574, v0)                                             │

00:00:24 #1429 [Verbose] > │ and closure100 () () : UH0 =                                                 │

00:00:24 #1430 [Verbose] > │     let v0 : (unit -> UH0) = closure101()                                    │

00:00:24 #1431 [Verbose] > │     UH0_0(11.664236870382384, v0)                                            │

00:00:24 #1432 [Verbose] > │ and closure99 () () : UH0 =                                                  │

00:00:24 #1433 [Verbose] > │     let v0 : (unit -> UH0) = closure100()                                    │

00:00:24 #1434 [Verbose] > │     UH0_0(11.664236870377938, v0)                                            │

00:00:24 #1435 [Verbose] > │ and closure98 () () : UH0 =                                                  │

00:00:24 #1436 [Verbose] > │     let v0 : (unit -> UH0) = closure99()                                     │

00:00:24 #1437 [Verbose] > │     UH0_0(11.66423687037205, v0)                                             │

00:00:24 #1438 [Verbose] > │ and closure97 () () : UH0 =                                                  │

00:00:24 #1439 [Verbose] > │     let v0 : (unit -> UH0) = closure98()                                     │

00:00:24 #1440 [Verbose] > │     UH0_0(11.664236870364254, v0)                                            │

00:00:24 #1441 [Verbose] > │ and closure96 () () : UH0 =                                                  │

00:00:24 #1442 [Verbose] > │     let v0 : (unit -> UH0) = closure97()                                     │

00:00:24 #1443 [Verbose] > │     UH0_0(11.664236870353927, v0)                                            │

00:00:24 #1444 [Verbose] > │ and closure95 () () : UH0 =                                                  │

00:00:24 #1445 [Verbose] > │     let v0 : (unit -> UH0) = closure96()                                     │

00:00:24 #1446 [Verbose] > │     UH0_0(11.664236870340249, v0)                                            │

00:00:24 #1447 [Verbose] > │ and closure94 () () : UH0 =                                                  │

00:00:24 #1448 [Verbose] > │     let v0 : (unit -> UH0) = closure95()                                     │

00:00:24 #1449 [Verbose] > │     UH0_0(11.664236870322135, v0)                                            │

00:00:24 #1450 [Verbose] > │ and closure93 () () : UH0 =                                                  │

00:00:24 #1451 [Verbose] > │     let v0 : (unit -> UH0) = closure94()                                     │

00:00:24 #1452 [Verbose] > │     UH0_0(11.664236870298145, v0)                                            │

00:00:24 #1453 [Verbose] > │ and closure92 () () : UH0 =                                                  │

00:00:24 #1454 [Verbose] > │     let v0 : (unit -> UH0) = closure93()                                     │

00:00:24 #1455 [Verbose] > │     UH0_0(11.664236870266372, v0)                                            │

00:00:24 #1456 [Verbose] > │ and closure91 () () : UH0 =                                                  │

00:00:24 #1457 [Verbose] > │     let v0 : (unit -> UH0) = closure92()                                     │

00:00:24 #1458 [Verbose] > │     UH0_0(11.664236870224292, v0)                                            │

00:00:24 #1459 [Verbose] > │ and closure90 () () : UH0 =                                                  │

00:00:24 #1460 [Verbose] > │     let v0 : (unit -> UH0) = closure91()                                     │

00:00:24 #1461 [Verbose] > │     UH0_0(11.66423687016856, v0)                                             │

00:00:24 #1462 [Verbose] > │ and closure89 () () : UH0 =                                                  │

00:00:24 #1463 [Verbose] > │     let v0 : (unit -> UH0) = closure90()                                     │

00:00:24 #1464 [Verbose] > │     UH0_0(11.664236870094747, v0)                                            │

00:00:24 #1465 [Verbose] > │ and closure88 () () : UH0 =                                                  │

00:00:24 #1466 [Verbose] > │     let v0 : (unit -> UH0) = closure89()                                     │

00:00:24 #1467 [Verbose] > │     UH0_0(11.664236869996989, v0)                                            │

00:00:24 #1468 [Verbose] > │ and closure87 () () : UH0 =                                                  │

00:00:24 #1469 [Verbose] > │     let v0 : (unit -> UH0) = closure88()                                     │

00:00:24 #1470 [Verbose] > │     UH0_0(11.664236869867516, v0)                                            │

00:00:24 #1471 [Verbose] > │ and closure86 () () : UH0 =                                                  │

00:00:24 #1472 [Verbose] > │     let v0 : (unit -> UH0) = closure87()                                     │

00:00:24 #1473 [Verbose] > │     UH0_0(11.66423686969604, v0)                                             │

00:00:24 #1474 [Verbose] > │ and closure85 () () : UH0 =                                                  │

00:00:24 #1475 [Verbose] > │     let v0 : (unit -> UH0) = closure86()                                     │

00:00:24 #1476 [Verbose] > │     UH0_0(11.664236869468937, v0)                                            │

00:00:24 #1477 [Verbose] > │ and closure84 () () : UH0 =                                                  │

00:00:24 #1478 [Verbose] > │     let v0 : (unit -> UH0) = closure85()                                     │

00:00:24 #1479 [Verbose] > │     UH0_0(11.664236869168157, v0)                                            │

00:00:24 #1480 [Verbose] > │ and closure83 () () : UH0 =                                                  │

00:00:24 #1481 [Verbose] > │     let v0 : (unit -> UH0) = closure84()                                     │

00:00:24 #1482 [Verbose] > │     UH0_0(11.6642368687698, v0)                                              │

00:00:24 #1483 [Verbose] > │ and closure82 () () : UH0 =                                                  │

00:00:24 #1484 [Verbose] > │     let v0 : (unit -> UH0) = closure83()                                     │

00:00:24 #1485 [Verbose] > │     UH0_0(11.664236868242211, v0)                                            │

00:00:24 #1486 [Verbose] > │ and closure81 () () : UH0 =                                                  │

00:00:24 #1487 [Verbose] > │     let v0 : (unit -> UH0) = closure82()                                     │

00:00:24 #1488 [Verbose] > │     UH0_0(11.664236867543465, v0)                                            │

00:00:24 #1489 [Verbose] > │ and closure80 () () : UH0 =                                                  │

00:00:24 #1490 [Verbose] > │     let v0 : (unit -> UH0) = closure81()                                     │

00:00:24 #1491 [Verbose] > │     UH0_0(11.664236866618037, v0)                                            │

00:00:24 #1492 [Verbose] > │ and closure79 () () : UH0 =                                                  │

00:00:24 #1493 [Verbose] > │     let v0 : (unit -> UH0) = closure80()                                     │

00:00:24 #1494 [Verbose] > │     UH0_0(11.664236865392386, v0)                                            │

00:00:24 #1495 [Verbose] > │ and closure78 () () : UH0 =                                                  │

00:00:24 #1496 [Verbose] > │     let v0 : (unit -> UH0) = closure79()                                     │

00:00:24 #1497 [Verbose] > │     UH0_0(11.664236863769117, v0)                                            │

00:00:24 #1498 [Verbose] > │ and closure77 () () : UH0 =                                                  │

00:00:24 #1499 [Verbose] > │     let v0 : (unit -> UH0) = closure78()                                     │

00:00:24 #1500 [Verbose] > │     UH0_0(11.664236861619237, v0)                                            │

00:00:24 #1501 [Verbose] > │ and closure76 () () : UH0 =                                                  │

00:00:24 #1502 [Verbose] > │     let v0 : (unit -> UH0) = closure77()                                     │

00:00:24 #1503 [Verbose] > │     UH0_0(11.664236858771906, v0)                                            │

00:00:24 #1504 [Verbose] > │ and closure75 () () : UH0 =                                                  │

00:00:24 #1505 [Verbose] > │     let v0 : (unit -> UH0) = closure76()                                     │

00:00:24 #1506 [Verbose] > │     UH0_0(11.66423685500086, v0)                                             │

00:00:24 #1507 [Verbose] > │ and closure74 () () : UH0 =                                                  │

00:00:24 #1508 [Verbose] > │     let v0 : (unit -> UH0) = closure75()                                     │

00:00:24 #1509 [Verbose] > │     UH0_0(11.664236850006436, v0)                                            │

00:00:24 #1510 [Verbose] > │ and closure73 () () : UH0 =                                                  │

00:00:24 #1511 [Verbose] > │     let v0 : (unit -> UH0) = closure74()                                     │

00:00:24 #1512 [Verbose] > │     UH0_0(11.664236843391752, v0)                                            │

00:00:24 #1513 [Verbose] > │ and closure72 () () : UH0 =                                                  │

00:00:24 #1514 [Verbose] > │     let v0 : (unit -> UH0) = closure73()                                     │

00:00:24 #1515 [Verbose] > │     UH0_0(11.664236834631172, v0)                                            │

00:00:24 #1516 [Verbose] > │ and closure71 () () : UH0 =                                                  │

00:00:24 #1517 [Verbose] > │     let v0 : (unit -> UH0) = closure72()                                     │

00:00:24 #1518 [Verbose] > │     UH0_0(11.66423682302854, v0)                                             │

00:00:24 #1519 [Verbose] > │ and closure70 () () : UH0 =                                                  │

00:00:24 #1520 [Verbose] > │     let v0 : (unit -> UH0) = closure71()                                     │

00:00:24 #1521 [Verbose] > │     UH0_0(11.664236807661855, v0)                                            │

00:00:24 #1522 [Verbose] > │ and closure69 () () : UH0 =                                                  │

00:00:24 #1523 [Verbose] > │     let v0 : (unit -> UH0) = closure70()                                     │

00:00:24 #1524 [Verbose] > │     UH0_0(11.664236787310005, v0)                                            │

00:00:24 #1525 [Verbose] > │ and closure68 () () : UH0 =                                                  │

00:00:24 #1526 [Verbose] > │     let v0 : (unit -> UH0) = closure69()                                     │

00:00:24 #1527 [Verbose] > │     UH0_0(11.664236760355733, v0)                                            │

00:00:24 #1528 [Verbose] > │ and closure67 () () : UH0 =                                                  │

00:00:24 #1529 [Verbose] > │     let v0 : (unit -> UH0) = closure68()                                     │

00:00:24 #1530 [Verbose] > │     UH0_0(11.664236724657123, v0)                                            │

00:00:24 #1531 [Verbose] > │ and closure66 () () : UH0 =                                                  │

00:00:24 #1532 [Verbose] > │     let v0 : (unit -> UH0) = closure67()                                     │

00:00:24 #1533 [Verbose] > │     UH0_0(11.66423667737739, v0)                                             │

00:00:24 #1534 [Verbose] > │ and closure65 () () : UH0 =                                                  │

00:00:24 #1535 [Verbose] > │     let v0 : (unit -> UH0) = closure66()                                     │

00:00:24 #1536 [Verbose] > │     UH0_0(11.664236614759462, v0)                                            │

00:00:24 #1537 [Verbose] > │ and closure64 () () : UH0 =                                                  │

00:00:24 #1538 [Verbose] > │     let v0 : (unit -> UH0) = closure65()                                     │

00:00:24 #1539 [Verbose] > │     UH0_0(11.664236531827415, v0)                                            │

00:00:24 #1540 [Verbose] > │ and closure63 () () : UH0 =                                                  │

00:00:24 #1541 [Verbose] > │     let v0 : (unit -> UH0) = closure64()                                     │

00:00:24 #1542 [Verbose] > │     UH0_0(11.664236421991067, v0)                                            │

00:00:24 #1543 [Verbose] > │ and closure62 () () : UH0 =                                                  │

00:00:24 #1544 [Verbose] > │     let v0 : (unit -> UH0) = closure63()                                     │

00:00:24 #1545 [Verbose] > │     UH0_0(11.664236276522294, v0)                                            │

00:00:24 #1546 [Verbose] > │ and closure61 () () : UH0 =                                                  │

00:00:24 #1547 [Verbose] > │     let v0 : (unit -> UH0) = closure62()                                     │

00:00:24 #1548 [Verbose] > │     UH0_0(11.664236083861448, v0)                                            │

00:00:24 #1549 [Verbose] > │ and closure60 () () : UH0 =                                                  │

00:00:24 #1550 [Verbose] > │     let v0 : (unit -> UH0) = closure61()                                     │

00:00:24 #1551 [Verbose] > │     UH0_0(11.664235828698772, v0)                                            │

00:00:24 #1552 [Verbose] > │ and closure59 () () : UH0 =                                                  │

00:00:24 #1553 [Verbose] > │     let v0 : (unit -> UH0) = closure60()                                     │

00:00:24 #1554 [Verbose] > │     UH0_0(11.664235490757811, v0)                                            │

00:00:24 #1555 [Verbose] > │ and closure58 () () : UH0 =                                                  │

00:00:24 #1556 [Verbose] > │     let v0 : (unit -> UH0) = closure59()                                     │

00:00:24 #1557 [Verbose] > │     UH0_0(11.664235043184158, v0)                                            │

00:00:24 #1558 [Verbose] > │ and closure57 () () : UH0 =                                                  │

00:00:24 #1559 [Verbose] > │     let v0 : (unit -> UH0) = closure58()                                     │

00:00:24 #1560 [Verbose] > │     UH0_0(11.66423445041147, v0)                                             │

00:00:24 #1561 [Verbose] > │ and closure56 () () : UH0 =                                                  │

00:00:24 #1562 [Verbose] > │     let v0 : (unit -> UH0) = closure57()                                     │

00:00:24 #1563 [Verbose] > │     UH0_0(11.664233665335203, v0)                                            │

00:00:24 #1564 [Verbose] > │ and closure55 () () : UH0 =                                                  │

00:00:24 #1565 [Verbose] > │     let v0 : (unit -> UH0) = closure56()                                     │

00:00:24 #1566 [Verbose] > │     UH0_0(11.664232625569467, v0)                                            │

00:00:24 #1567 [Verbose] > │ and closure54 () () : UH0 =                                                  │

00:00:24 #1568 [Verbose] > │     let v0 : (unit -> UH0) = closure55()                                     │

00:00:24 #1569 [Verbose] > │     UH0_0(11.664231248489562, v0)                                            │

00:00:24 #1570 [Verbose] > │ and closure53 () () : UH0 =                                                  │

00:00:24 #1571 [Verbose] > │     let v0 : (unit -> UH0) = closure54()                                     │

00:00:24 #1572 [Verbose] > │     UH0_0(11.664229424666262, v0)                                            │

00:00:24 #1573 [Verbose] > │ and closure52 () () : UH0 =                                                  │

00:00:24 #1574 [Verbose] > │     let v0 : (unit -> UH0) = closure53()                                     │

00:00:24 #1575 [Verbose] > │     UH0_0(11.66422700917009, v0)                                             │

00:00:24 #1576 [Verbose] > │ and closure51 () () : UH0 =                                                  │

00:00:24 #1577 [Verbose] > │     let v0 : (unit -> UH0) = closure52()                                     │

00:00:24 #1578 [Verbose] > │     UH0_0(11.664223810054642, v0)                                            │

00:00:24 #1579 [Verbose] > │ and closure50 () () : UH0 =                                                  │

00:00:24 #1580 [Verbose] > │     let v0 : (unit -> UH0) = closure51()                                     │

00:00:24 #1581 [Verbose] > │     UH0_0(11.664219573103773, v0)                                            │

00:00:24 #1582 [Verbose] > │ and closure49 () () : UH0 =                                                  │

00:00:24 #1583 [Verbose] > │     let v0 : (unit -> UH0) = closure50()                                     │

00:00:24 #1584 [Verbose] > │     UH0_0(11.6642139616307, v0)                                              │

00:00:24 #1585 [Verbose] > │ and closure48 () () : UH0 =                                                  │

00:00:24 #1586 [Verbose] > │     let v0 : (unit -> UH0) = closure49()                                     │

00:00:24 #1587 [Verbose] > │     UH0_0(11.664206529723813, v0)                                            │

00:00:24 #1588 [Verbose] > │ and closure47 () () : UH0 =                                                  │

00:00:24 #1589 [Verbose] > │     let v0 : (unit -> UH0) = closure48()                                     │

00:00:24 #1590 [Verbose] > │     UH0_0(11.664196686813408, v0)                                            │

00:00:24 #1591 [Verbose] > │ and closure46 () () : UH0 =                                                  │

00:00:24 #1592 [Verbose] > │     let v0 : (unit -> UH0) = closure47()                                     │

00:00:24 #1593 [Verbose] > │     UH0_0(11.664183650743945, v0)                                            │

00:00:24 #1594 [Verbose] > │ and closure45 () () : UH0 =                                                  │

00:00:24 #1595 [Verbose] > │     let v0 : (unit -> UH0) = closure46()                                     │

00:00:24 #1596 [Verbose] > │     UH0_0(11.664166385623318, v0)                                            │

00:00:24 #1597 [Verbose] > │ and closure44 () () : UH0 =                                                  │

00:00:24 #1598 [Verbose] > │     let v0 : (unit -> UH0) = closure45()                                     │

00:00:24 #1599 [Verbose] > │     UH0_0(11.664143519511356, v0)                                            │

00:00:24 #1600 [Verbose] > │ and closure43 () () : UH0 =                                                  │

00:00:24 #1601 [Verbose] > │     let v0 : (unit -> UH0) = closure44()                                     │

00:00:24 #1602 [Verbose] > │     UH0_0(11.664113235408447, v0)                                            │

00:00:24 #1603 [Verbose] > │ and closure42 () () : UH0 =                                                  │

00:00:24 #1604 [Verbose] > │     let v0 : (unit -> UH0) = closure43()                                     │

00:00:24 #1605 [Verbose] > │     UH0_0(11.66407312688485, v0)                                             │

00:00:24 #1606 [Verbose] > │ and closure41 () () : UH0 =                                                  │

00:00:24 #1607 [Verbose] > │     let v0 : (unit -> UH0) = closure42()                                     │

00:00:24 #1608 [Verbose] > │     UH0_0(11.664020006883758, v0)                                            │

00:00:24 #1609 [Verbose] > │ and closure40 () () : UH0 =                                                  │

00:00:24 #1610 [Verbose] > │     let v0 : (unit -> UH0) = closure41()                                     │

00:00:24 #1611 [Verbose] > │     UH0_0(11.663949654514292, v0)                                            │

00:00:24 #1612 [Verbose] > │ and closure39 () () : UH0 =                                                  │

00:00:24 #1613 [Verbose] > │     let v0 : (unit -> UH0) = closure40()                                     │

00:00:24 #1614 [Verbose] > │     UH0_0(11.663856479730171, v0)                                            │

00:00:24 #1615 [Verbose] > │ and closure38 () () : UH0 =                                                  │

00:00:24 #1616 [Verbose] > │     let v0 : (unit -> UH0) = closure39()                                     │

00:00:24 #1617 [Verbose] > │     UH0_0(11.663733079277343, v0)                                            │

00:00:24 #1618 [Verbose] > │ and closure37 () () : UH0 =                                                  │

00:00:24 #1619 [Verbose] > │     let v0 : (unit -> UH0) = closure38()                                     │

00:00:24 #1620 [Verbose] > │     UH0_0(11.663569648675777, v0)                                            │

00:00:24 #1621 [Verbose] > │ and closure36 () () : UH0 =                                                  │

00:00:24 #1622 [Verbose] > │     let v0 : (unit -> UH0) = closure37()                                     │

00:00:24 #1623 [Verbose] > │     UH0_0(11.663353203599439, v0)                                            │

00:00:24 #1624 [Verbose] > │ and closure35 () () : UH0 =                                                  │

00:00:24 #1625 [Verbose] > │     let v0 : (unit -> UH0) = closure36()                                     │

00:00:24 #1626 [Verbose] > │     UH0_0(11.663066548940721, v0)                                            │

00:00:24 #1627 [Verbose] > │ and closure34 () () : UH0 =                                                  │

00:00:24 #1628 [Verbose] > │     let v0 : (unit -> UH0) = closure35()                                     │

00:00:24 #1629 [Verbose] > │     UH0_0(11.662686913915445, v0)                                            │

00:00:24 #1630 [Verbose] > │ and closure33 () () : UH0 =                                                  │

00:00:24 #1631 [Verbose] > │     let v0 : (unit -> UH0) = closure34()                                     │

00:00:24 #1632 [Verbose] > │     UH0_0(11.662184145236864, v0)                                            │

00:00:24 #1633 [Verbose] > │ and closure32 () () : UH0 =                                                  │

00:00:24 #1634 [Verbose] > │     let v0 : (unit -> UH0) = closure33()                                     │

00:00:24 #1635 [Verbose] > │     UH0_0(11.661518315638029, v0)                                            │

00:00:24 #1636 [Verbose] > │ and closure31 () () : UH0 =                                                  │

00:00:24 #1637 [Verbose] > │     let v0 : (unit -> UH0) = closure32()                                     │

00:00:24 #1638 [Verbose] > │     UH0_0(11.66063655920926, v0)                                             │

00:00:24 #1639 [Verbose] > │ and closure30 () () : UH0 =                                                  │

00:00:24 #1640 [Verbose] > │     let v0 : (unit -> UH0) = closure31()                                     │

00:00:24 #1641 [Verbose] > │     UH0_0(11.659468884709733, v0)                                            │

00:00:24 #1642 [Verbose] > │ and closure29 () () : UH0 =                                                  │

00:00:24 #1643 [Verbose] > │     let v0 : (unit -> UH0) = closure30()                                     │

00:00:24 #1644 [Verbose] > │     UH0_0(11.657922638782631, v0)                                            │

00:00:24 #1645 [Verbose] > │ and closure28 () () : UH0 =                                                  │

00:00:24 #1646 [Verbose] > │     let v0 : (unit -> UH0) = closure29()                                     │

00:00:24 #1647 [Verbose] > │     UH0_0(11.655875187195818, v0)                                            │

00:00:24 #1648 [Verbose] > │ and closure27 () () : UH0 =                                                  │

00:00:24 #1649 [Verbose] > │     let v0 : (unit -> UH0) = closure28()                                     │

00:00:24 #1650 [Verbose] > │     UH0_0(11.653164246713697, v0)                                            │

00:00:24 #1651 [Verbose] > │ and closure26 () () : UH0 =                                                  │

00:00:24 #1652 [Verbose] > │     let v0 : (unit -> UH0) = closure27()                                     │

00:00:24 #1653 [Verbose] > │     UH0_0(11.64957512416459, v0)                                             │

00:00:24 #1654 [Verbose] > │ and closure25 () () : UH0 =                                                  │

00:00:24 #1655 [Verbose] > │     let v0 : (unit -> UH0) = closure26()                                     │

00:00:24 #1656 [Verbose] > │     UH0_0(11.644823892116417, v0)                                            │

00:00:24 #1657 [Verbose] > │ and closure24 () () : UH0 =                                                  │

00:00:24 #1658 [Verbose] > │     let v0 : (unit -> UH0) = closure25()                                     │

00:00:24 #1659 [Verbose] > │     UH0_0(11.63853524018339, v0)                                             │

00:00:24 #1660 [Verbose] > │ and closure23 () () : UH0 =                                                  │

00:00:24 #1661 [Verbose] > │     let v0 : (unit -> UH0) = closure24()                                     │

00:00:24 #1662 [Verbose] > │     UH0_0(11.630213374558416, v0)                                            │

00:00:24 #1663 [Verbose] > │ and closure22 () () : UH0 =                                                  │

00:00:24 #1664 [Verbose] > │     let v0 : (unit -> UH0) = closure23()                                     │

00:00:24 #1665 [Verbose] > │     UH0_0(11.619203884549703, v0)                                            │

00:00:24 #1666 [Verbose] > │ and closure21 () () : UH0 =                                                  │

00:00:24 #1667 [Verbose] > │     let v0 : (unit -> UH0) = closure22()                                     │

00:00:24 #1668 [Verbose] > │     UH0_0(11.604643948207235, v0)                                            │

00:00:24 #1669 [Verbose] > │ and closure20 () () : UH0 =                                                  │

00:00:24 #1670 [Verbose] > │     let v0 : (unit -> UH0) = closure21()                                     │

00:00:24 #1671 [Verbose] > │     UH0_0(11.585397618384544, v0)                                            │

00:00:24 #1672 [Verbose] > │ and closure19 () () : UH0 =                                                  │

00:00:24 #1673 [Verbose] > │     let v0 : (unit -> UH0) = closure20()                                     │

00:00:24 #1674 [Verbose] > │     UH0_0(11.559972254267073, v0)                                            │

00:00:24 #1675 [Verbose] > │ and closure18 () () : UH0 =                                                  │

00:00:24 #1676 [Verbose] > │     let v0 : (unit -> UH0) = closure19()                                     │

00:00:24 #1677 [Verbose] > │     UH0_0(11.526411536153837, v0)                                            │

00:00:24 #1678 [Verbose] > │ and closure17 () () : UH0 =                                                  │

00:00:24 #1679 [Verbose] > │     let v0 : (unit -> UH0) = closure18()                                     │

00:00:24 #1680 [Verbose] > │     UH0_0(11.48216011776808, v0)                                             │

00:00:24 #1681 [Verbose] > │ and closure16 () () : UH0 =                                                  │

00:00:24 #1682 [Verbose] > │     let v0 : (unit -> UH0) = closure17()                                     │

00:00:24 #1683 [Verbose] > │     UH0_0(11.42389519391233, v0)                                             │

00:00:24 #1684 [Verbose] > │ and closure15 () () : UH0 =                                                  │

00:00:24 #1685 [Verbose] > │     let v0 : (unit -> UH0) = closure16()                                     │

00:00:24 #1686 [Verbose] > │     UH0_0(11.347321723441393, v0)                                            │

00:00:24 #1687 [Verbose] > │ and closure14 () () : UH0 =                                                  │

00:00:24 #1688 [Verbose] > │     let v0 : (unit -> UH0) = closure15()                                     │

00:00:24 #1689 [Verbose] > │     UH0_0(11.246931775734161, v0)                                            │

00:00:24 #1690 [Verbose] > │ and closure13 () () : UH0 =                                                  │

00:00:24 #1691 [Verbose] > │     let v0 : (unit -> UH0) = closure14()                                     │

00:00:24 #1692 [Verbose] > │     UH0_0(11.115736011467376, v0)                                            │

00:00:24 #1693 [Verbose] > │ and closure12 () () : UH0 =                                                  │

00:00:24 #1694 [Verbose] > │     let v0 : (unit -> UH0) = closure13()                                     │

00:00:24 #1695 [Verbose] > │     UH0_0(10.94498876251829, v0)                                             │

00:00:24 #1696 [Verbose] > │ and closure11 () () : UH0 =                                                  │

00:00:24 #1697 [Verbose] > │     let v0 : (unit -> UH0) = closure12()                                     │

00:00:24 #1698 [Verbose] > │     UH0_0(10.72394989903564, v0)                                             │

00:00:24 #1699 [Verbose] > │ and closure10 () () : UH0 =                                                  │

00:00:24 #1700 [Verbose] > │     let v0 : (unit -> UH0) = closure11()                                     │

00:00:24 #1701 [Verbose] > │     UH0_0(10.439758275369812, v0)                                            │

00:00:24 #1702 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:24 #1703 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:24 #1704 [Verbose] > │     UH0_0(10.077531599826058, v0)                                            │

00:00:24 #1705 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:24 #1706 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:24 #1707 [Verbose] > │     UH0_0(9.62084761372258, v0)                                              │

00:00:24 #1708 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:24 #1709 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:24 #1710 [Verbose] > │     UH0_0(9.052781056066443, v0)                                             │

00:00:24 #1711 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:24 #1712 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:24 #1713 [Verbose] > │     UH0_0(8.357635347880503, v0)                                             │

00:00:24 #1714 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:24 #1715 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:24 #1716 [Verbose] > │     UH0_0(7.523376447621674, v0)                                             │

00:00:24 #1717 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:24 #1718 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:24 #1719 [Verbose] > │     UH0_0(6.544529054818572, v0)                                             │

00:00:24 #1720 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:24 #1721 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:24 #1722 [Verbose] > │     UH0_0(5.424976512996006, v0)                                             │

00:00:24 #1723 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:24 #1724 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:24 #1725 [Verbose] > │     UH0_0(4.179852321428571, v0)                                             │

00:00:24 #1726 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:24 #1727 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:24 #1728 [Verbose] > │     UH0_0(2.835714285714286, v0)                                             │

00:00:24 #1729 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:24 #1730 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:24 #1731 [Verbose] > │     UH0_0(1.4285714285714286, v0)                                            │

00:00:24 #1732 [Verbose] > │ and method3 (v0 : float, v1 : UH0) : US0 =                                   │

00:00:24 #1733 [Verbose] > │     match v1 with                                                            │

00:00:24 #1734 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:24 #1735 [Verbose] > │         let v4 : bool = v0 <= 0.0                                            │

00:00:24 #1736 [Verbose] > │         if v4 then                                                           │

00:00:24 #1737 [Verbose] > │             US0_1(v2)                                                        │

00:00:24 #1738 [Verbose] > │         else                                                                 │

00:00:24 #1739 [Verbose] > │             let v6 : float = v0 - 1.0                                        │

00:00:24 #1740 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:24 #1741 [Verbose] > │             method3(v6, v7)                                                  │

00:00:24 #1742 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:24 #1743 [Verbose] > │         US0_0                                                                │

00:00:24 #1744 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:24 #1745 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:24 #1746 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (121)                      │

00:00:24 #1747 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:24 #1748 [Verbose] > │     while method1(v1) do                                                     │

00:00:24 #1749 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:24 #1750 [Verbose] > │         let v4 : float = float v3                                            │

00:00:24 #1751 [Verbose] > │         let v5 : float = 0.5 * v4                                            │

00:00:24 #1752 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:24 #1753 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:24 #1754 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:24 #1755 [Verbose] > │         ()                                                                   │

00:00:24 #1756 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:24 #1757 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:24 #1758 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:24 #1759 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:24 #1760 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:24 #1761 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:24 #1762 [Verbose] > │         let v13 : float = round v12                                          │

00:00:24 #1763 [Verbose] > │         let v14 : float =  -v13                                              │

00:00:24 #1764 [Verbose] > │         let v15 : bool = v13 >= v14                                          │

00:00:24 #1765 [Verbose] > │         let v16 : float =                                                    │

00:00:24 #1766 [Verbose] > │             if v15 then                                                      │

00:00:24 #1767 [Verbose] > │                 v13                                                          │

00:00:24 #1768 [Verbose] > │             else                                                             │

00:00:24 #1769 [Verbose] > │                 v14                                                          │

00:00:24 #1770 [Verbose] > │         let v17 : float = 0.0                                                │

00:00:24 #1771 [Verbose] > │         let v18 : (unit -> UH0) = closure0()                                 │

00:00:24 #1772 [Verbose] > │         let v19 : UH0 = UH0_0(v17, v18)                                      │

00:00:24 #1773 [Verbose] > │         let v20 : US0 = method3(v16, v19)                                    │

00:00:24 #1774 [Verbose] > │         let v23 : float =                                                    │

00:00:24 #1775 [Verbose] > │             match v20 with                                                   │

00:00:24 #1776 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:24 #1777 [Verbose] > │                 0.0                                                          │

00:00:24 #1778 [Verbose] > │             | US0_1(v21) -> (* Some *)                                       │

00:00:24 #1779 [Verbose] > │                 v21                                                          │

00:00:24 #1780 [Verbose] > │         v8.[int v11] <- v23                                                  │

00:00:24 #1781 [Verbose] > │         let v24 : int32 = v11 + 1                                            │

00:00:24 #1782 [Verbose] > │         v9.l0 <- v24                                                         │

00:00:24 #1783 [Verbose] > │         ()                                                                   │

00:00:24 #1784 [Verbose] > │     let v25 : string = "velocity of bike (m/s)"                              │

00:00:24 #1785 [Verbose] > │     let v26 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:24 #1786 [Verbose] > │ (v25, v0, v8)|]                                                              │

00:00:24 #1787 [Verbose] > │     let v27 : string = "bike velocity"                                       │

00:00:24 #1788 [Verbose] > │     let v28 : string = "time (s)"                                            │

00:00:24 #1789 [Verbose] > │     let v29 : string = ""                                                    │

00:00:24 #1790 [Verbose] > │     struct (v27, v28, v29, v26)                                              │

00:00:24 #1791 [Verbose] > │ method0()                                                                    │

00:00:24 #1792 [Verbose] > │                                                                              │

00:00:24 #1793 [Verbose] > │                                                                              │

00:00:24 #1794 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #1795 [Verbose] >

00:00:24 #1796 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:24 #1797 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:24 #1798 [Verbose] > │ ## velocity_ftv                                                              │

00:00:24 #1799 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #1800 [Verbose] >

00:00:24 #1801 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #1802 [Verbose] > inl newton_second_tv m fs (t, v0) =

00:00:24 #1803 [Verbose] >     inl f_net = fs |> listm.map (fun f => f (t, v0)) |> listm'.sum

00:00:24 #1804 [Verbose] >     inl acc = f_net / m

00:00:24 #1805 [Verbose] >     1, acc

00:00:24 #1806 [Verbose] >

00:00:24 #1807 [Verbose] > inl update_tv dt m fs (t, v0) =

00:00:24 #1808 [Verbose] >     inl dtdt, dvdt = newton_second_tv m fs (t, v0)

00:00:24 #1809 [Verbose] >     t + dtdt * dt, v0 + dvdt * dt

00:00:24 #1810 [Verbose] >

00:00:24 #1811 [Verbose] > inl velocity_ftv dt m tv0 fs t =

00:00:24 #1812 [Verbose] >     stream.iterate (join update_tv dt m fs) tv0

00:00:24 #1813 [Verbose] >     |> stream.try_item (t / dt |> math.round |> abs)

00:00:24 #1814 [Verbose] >     |> optionm.map snd

00:00:24 #1815 [Verbose] >     |> optionm'.default_value 0

00:00:24 #1816 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4338-3892-39d5822bbc2c\main.spi

00:00:24 #1817 [Verbose] >

00:00:24 #1818 [Verbose] > ╭─[ 242.81ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #1819 [Verbose] > │ ()                                                                           │

00:00:24 #1820 [Verbose] > │                                                                              │

00:00:24 #1821 [Verbose] > │                                                                              │

00:00:24 #1822 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #1823 [Verbose] >

00:00:24 #1824 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #1825 [Verbose] > // // test

00:00:24 #1826 [Verbose] >

00:00:24 #1827 [Verbose] > inl x = am'.init_series 0 100 0.1

00:00:24 #1828 [Verbose] > inl y =

00:00:24 #1829 [Verbose] >     x

00:00:24 #1830 [Verbose] >     |> am.map (

00:00:24 #1831 [Verbose] >         velocity_ftv 0.1 20 (dyn (0, 0)) [[ fun (t, _) => pedal_coast t; fun (_,

00:00:24 #1832 [Verbose] > v) => f_air 2 1.225 0.5 v ]]

00:00:24 #1833 [Verbose] >     )

00:00:24 #1834 [Verbose] > "pedaling and coasting with air", "time (s)", "", ;[[ "velocity of bike (m/s)",

00:00:24 #1835 [Verbose] > x, y ]]

00:00:24 #1836 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4363-6324-6c02bb76acf5\main.spi

00:00:25 #1837 [Verbose] >

00:00:25 #1838 [Verbose] > ╭─[ 419.95ms - return value ]──────────────────────────────────────────────────╮

00:00:25 #1839 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:25 #1840 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:25 #1841 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:25 #1842 [Verbose] > │ stroke="none"/>                                                              │

00:00:25 #1843 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:25 #1844 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:25 #1845 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:25 #1846 [Verbose] > │ pedaling and coasting with air                                               │

00:00:25 #1847 [Verbose] > │ </text>                                                                      │

00:00:25 #1848 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:25 #1849 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #1850 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:25 #1851 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #1852 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:25 #1853 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #1854 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:25 #1855 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #1856 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x...                     │

00:00:25 #1857 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #1858 [Verbose] >

00:00:25 #1859 [Verbose] > ╭─[ 430.23ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #1860 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:25 #1861 [Verbose] > │ and UH0 =                                                                    │

00:00:25 #1862 [Verbose] > │     | UH0_0 of float * float * (unit -> UH0)                                 │

00:00:25 #1863 [Verbose] > │     | UH0_1                                                                  │

00:00:25 #1864 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:25 #1865 [Verbose] > │     | US0_0                                                                  │

00:00:25 #1866 [Verbose] > │     | US0_1 of f1_0 : float * f1_1 : float                                   │

00:00:25 #1867 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:25 #1868 [Verbose] > │     | US1_0                                                                  │

00:00:25 #1869 [Verbose] > │     | US1_1 of f1_0 : float                                                  │

00:00:25 #1870 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:25 #1871 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:25 #1872 [Verbose] > │     let v2 : bool = v1 < 1001                                                │

00:00:25 #1873 [Verbose] > │     v2                                                                       │

00:00:25 #1874 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:25 #1875 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:25 #1876 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:25 #1877 [Verbose] > │     v3                                                                       │

00:00:25 #1878 [Verbose] > │ and closure0 () struct (v0 : float, v1 : float) : struct (float * float) =   │

00:00:25 #1879 [Verbose] > │     let v2 : float =  -v1                                                    │

00:00:25 #1880 [Verbose] > │     let v3 : bool = v1 >= v2                                                 │

00:00:25 #1881 [Verbose] > │     let v4 : float =                                                         │

00:00:25 #1882 [Verbose] > │         if v3 then                                                           │

00:00:25 #1883 [Verbose] > │             v1                                                               │

00:00:25 #1884 [Verbose] > │         else                                                                 │

00:00:25 #1885 [Verbose] > │             v2                                                               │

00:00:25 #1886 [Verbose] > │     let v5 : float = -1.225 * v4                                             │

00:00:25 #1887 [Verbose] > │     let v6 : float = v5 * v1                                                 │

00:00:25 #1888 [Verbose] > │     let v7 : float = v6 / 2.0                                                │

00:00:25 #1889 [Verbose] > │     let v8 : float = v0 / 20.0                                               │

00:00:25 #1890 [Verbose] > │     let v9 : int32 = int32 v8                                                │

00:00:25 #1891 [Verbose] > │     let v10 : float = float v9                                               │

00:00:25 #1892 [Verbose] > │     let v11 : float = v10 * 20.0                                             │

00:00:25 #1893 [Verbose] > │     let v12 : float = v0 - v11                                               │

00:00:25 #1894 [Verbose] > │     let v13 : bool = v12 > 0.0                                               │

00:00:25 #1895 [Verbose] > │     let v15 : bool =                                                         │

00:00:25 #1896 [Verbose] > │         if v13 then                                                          │

00:00:25 #1897 [Verbose] > │             let v14 : bool = v12 < 10.0                                      │

00:00:25 #1898 [Verbose] > │             v14                                                              │

00:00:25 #1899 [Verbose] > │         else                                                                 │

00:00:25 #1900 [Verbose] > │             false                                                            │

00:00:25 #1901 [Verbose] > │     let v16 : float =                                                        │

00:00:25 #1902 [Verbose] > │         if v15 then                                                          │

00:00:25 #1903 [Verbose] > │             10.0                                                             │

00:00:25 #1904 [Verbose] > │         else                                                                 │

00:00:25 #1905 [Verbose] > │             0.0                                                              │

00:00:25 #1906 [Verbose] > │     let v17 : float = v16 + v7                                               │

00:00:25 #1907 [Verbose] > │     let v18 : float = v17 / 20.0                                             │

00:00:25 #1908 [Verbose] > │     let v19 : float = v0 + 0.1                                               │

00:00:25 #1909 [Verbose] > │     let v20 : float = v18 * 0.1                                              │

00:00:25 #1910 [Verbose] > │     let v21 : float = v1 + v20                                               │

00:00:25 #1911 [Verbose] > │     struct (v19, v21)                                                        │

00:00:25 #1912 [Verbose] > │ and method3 () : (struct (float * float) -> struct (float * float)) =        │

00:00:25 #1913 [Verbose] > │     closure0()                                                               │

00:00:25 #1914 [Verbose] > │ and closure1 (v0 : (struct (float * float) -> struct (float * float)), v1 :  │

00:00:25 #1915 [Verbose] > │ float, v2 : float, v3 : float, v4 : float) () : UH0 =                        │

00:00:25 #1916 [Verbose] > │     let struct (v5 : float, v6 : float) = v0 struct (v3, v4)                 │

00:00:25 #1917 [Verbose] > │     let v7 : (unit -> UH0) = closure1(v0, v1, v2, v5, v6)                    │

00:00:25 #1918 [Verbose] > │     UH0_0(v3, v4, v7)                                                        │

00:00:25 #1919 [Verbose] > │ and method4 (v0 : float, v1 : UH0) : US0 =                                   │

00:00:25 #1920 [Verbose] > │     match v1 with                                                            │

00:00:25 #1921 [Verbose] > │     | UH0_0(v2, v3, v4) -> (* StreamCons *)                                  │

00:00:25 #1922 [Verbose] > │         let v5 : bool = v0 <= 0.0                                            │

00:00:25 #1923 [Verbose] > │         if v5 then                                                           │

00:00:25 #1924 [Verbose] > │             US0_1(v2, v3)                                                    │

00:00:25 #1925 [Verbose] > │         else                                                                 │

00:00:25 #1926 [Verbose] > │             let v7 : float = v0 - 1.0                                        │

00:00:25 #1927 [Verbose] > │             let v8 : UH0 = v4 ()                                             │

00:00:25 #1928 [Verbose] > │             method4(v7, v8)                                                  │

00:00:25 #1929 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:25 #1930 [Verbose] > │         US0_0                                                                │

00:00:25 #1931 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:25 #1932 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:25 #1933 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (1001)                     │

00:00:25 #1934 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:25 #1935 [Verbose] > │     while method1(v1) do                                                     │

00:00:25 #1936 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:25 #1937 [Verbose] > │         let v4 : float = float v3                                            │

00:00:25 #1938 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:25 #1939 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:25 #1940 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:25 #1941 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:25 #1942 [Verbose] > │         ()                                                                   │

00:00:25 #1943 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:25 #1944 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:25 #1945 [Verbose] > │     let v9 : int32 = v0.Length                                               │

00:00:25 #1946 [Verbose] > │     let v10 : (float []) = Array.zeroCreate<float> (v9)                      │

00:00:25 #1947 [Verbose] > │     let v11 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:25 #1948 [Verbose] > │     while method2(v9, v11) do                                                │

00:00:25 #1949 [Verbose] > │         let v13 : int32 = v11.l0                                             │

00:00:25 #1950 [Verbose] > │         let v14 : float = v0.[int v13]                                       │

00:00:25 #1951 [Verbose] > │         let v15 : (struct (float * float) -> struct (float * float)) =       │

00:00:25 #1952 [Verbose] > │ method3()                                                                    │

00:00:25 #1953 [Verbose] > │         let struct (v16 : float, v17 : float) = v15 struct (v7, v8)          │

00:00:25 #1954 [Verbose] > │         let v18 : float = v14 / 0.1                                          │

00:00:25 #1955 [Verbose] > │         let v19 : float = round v18                                          │

00:00:25 #1956 [Verbose] > │         let v20 : float =  -v19                                              │

00:00:25 #1957 [Verbose] > │         let v21 : bool = v19 >= v20                                          │

00:00:25 #1958 [Verbose] > │         let v22 : float =                                                    │

00:00:25 #1959 [Verbose] > │             if v21 then                                                      │

00:00:25 #1960 [Verbose] > │                 v19                                                          │

00:00:25 #1961 [Verbose] > │             else                                                             │

00:00:25 #1962 [Verbose] > │                 v20                                                          │

00:00:25 #1963 [Verbose] > │         let v23 : (unit -> UH0) = closure1(v15, v7, v8, v16, v17)            │

00:00:25 #1964 [Verbose] > │         let v24 : UH0 = UH0_0(v7, v8, v23)                                   │

00:00:25 #1965 [Verbose] > │         let v25 : US0 = method4(v22, v24)                                    │

00:00:25 #1966 [Verbose] > │         let v31 : US1 =                                                      │

00:00:25 #1967 [Verbose] > │             match v25 with                                                   │

00:00:25 #1968 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:25 #1969 [Verbose] > │                 US1_0                                                        │

00:00:25 #1970 [Verbose] > │             | US0_1(v26, v27) -> (* Some *)                                  │

00:00:25 #1971 [Verbose] > │                 US1_1(v27)                                                   │

00:00:25 #1972 [Verbose] > │         let v34 : float =                                                    │

00:00:25 #1973 [Verbose] > │             match v31 with                                                   │

00:00:25 #1974 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:25 #1975 [Verbose] > │                 0.0                                                          │

00:00:25 #1976 [Verbose] > │             | US1_1(v32) -> (* Some *)                                       │

00:00:25 #1977 [Verbose] > │                 v32                                                          │

00:00:25 #1978 [Verbose] > │         v10.[int v13] <- v34                                                 │

00:00:25 #1979 [Verbose] > │         let v35 : int32 = v13 + 1                                            │

00:00:25 #1980 [Verbose] > │         v11.l0 <- v35                                                        │

00:00:25 #1981 [Verbose] > │         ()                                                                   │

00:00:25 #1982 [Verbose] > │     let v36 : string = "velocity of bike (m/s)"                              │

00:00:25 #1983 [Verbose] > │     let v37 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:25 #1984 [Verbose] > │ (v36, v0, v10)|]                                                             │

00:00:25 #1985 [Verbose] > │     let v38 : string = "pedaling and coasting with air"                      │

00:00:25 #1986 [Verbose] > │     let v39 : string = "time (s)"                                            │

00:00:25 #1987 [Verbose] > │     let v40 : string = ""                                                    │

00:00:25 #1988 [Verbose] > │     struct (v38, v39, v40, v37)                                              │

00:00:25 #1989 [Verbose] > │ method0()                                                                    │

00:00:25 #1990 [Verbose] > │                                                                              │

00:00:25 #1991 [Verbose] > │                                                                              │

00:00:25 #1992 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #1993 [Verbose] >

00:00:25 #1994 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:25 #1995 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:25 #1996 [Verbose] > │ ## velocity_ftxv                                                             │

00:00:25 #1997 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #1998 [Verbose] >

00:00:25 #1999 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2000 [Verbose] > nominal state_1d = time * position * velocity

00:00:25 #2001 [Verbose] > nominal rrr = f64 * f64 * f64

00:00:25 #2002 [Verbose] >

00:00:25 #2003 [Verbose] > inl newton_second_1d m fs (state_1d (t, x0, v0)) =

00:00:25 #2004 [Verbose] >     inl f_net = fs |> listm.map (fun f => f (state_1d (t, x0, v0))) |>

00:00:25 #2005 [Verbose] > listm'.sum

00:00:25 #2006 [Verbose] >     inl acc = f_net / m

00:00:25 #2007 [Verbose] >     rrr (1f64, v0, acc)

00:00:25 #2008 [Verbose] >

00:00:25 #2009 [Verbose] > inl euler_1d dt deriv (state_1d (t0, x0, v0) as t) =

00:00:25 #2010 [Verbose] >     inl (rrr (_, _, dvdt)) = deriv t

00:00:25 #2011 [Verbose] >     inl t1 = t0 + dt

00:00:25 #2012 [Verbose] >     inl x1 = x0 + v0 * dt

00:00:25 #2013 [Verbose] >     inl v1 = v0 + dvdt * dt

00:00:25 #2014 [Verbose] >     state_1d (t1, x1, v1)

00:00:25 #2015 [Verbose] >

00:00:25 #2016 [Verbose] > inl update_txv dt m fs =

00:00:25 #2017 [Verbose] >     newton_second_1d m fs |> euler_1d dt

00:00:25 #2018 [Verbose] >

00:00:25 #2019 [Verbose] > inl states_txv dt m txv0 fs =

00:00:25 #2020 [Verbose] >     seq.iterate_ (update_txv dt m fs) txv0

00:00:25 #2021 [Verbose] >

00:00:25 #2022 [Verbose] > inl velocity_1d sts t =

00:00:25 #2023 [Verbose] >     inl (state_1d (t0, _, _)) = sts 0

00:00:25 #2024 [Verbose] >     inl (state_1d (t1, _, _)) = sts 1

00:00:25 #2025 [Verbose] >     inl dt = t1 - t0

00:00:25 #2026 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:25 #2027 [Verbose] >     inl (state_1d (_, _, v0)) = sts num_steps

00:00:25 #2028 [Verbose] >     v0

00:00:25 #2029 [Verbose] >

00:00:25 #2030 [Verbose] > inl velocity_ftxv dt m txv0 fs =

00:00:25 #2031 [Verbose] >     states_txv dt m txv0 fs |> velocity_1d

00:00:25 #2032 [Verbose] >

00:00:25 #2033 [Verbose] > inl position_1d sts t =

00:00:25 #2034 [Verbose] >     inl (state_1d (t0, _, _)) = sts 0

00:00:25 #2035 [Verbose] >     inl (state_1d (t1, _, _)) = sts 1

00:00:25 #2036 [Verbose] >     inl dt = t1 - t0

00:00:25 #2037 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:25 #2038 [Verbose] >     inl (state_1d (_, x0, _)) = sts num_steps

00:00:25 #2039 [Verbose] >     x0

00:00:25 #2040 [Verbose] >

00:00:25 #2041 [Verbose] > inl position_ftxv dt m txv0 fs =

00:00:25 #2042 [Verbose] >     states_txv dt m txv0 fs |> position_1d

00:00:25 #2043 [Verbose] >

00:00:25 #2044 [Verbose] > inl spring_force k (state_1d (_, x0, _)) =

00:00:25 #2045 [Verbose] >     -k * x0

00:00:25 #2046 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4413-1367-1a8525633d88\main.spi

00:00:25 #2047 [Verbose] >

00:00:25 #2048 [Verbose] > ╭─[ 211.66ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2049 [Verbose] > │ ()                                                                           │

00:00:25 #2050 [Verbose] > │                                                                              │

00:00:25 #2051 [Verbose] > │                                                                              │

00:00:25 #2052 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2053 [Verbose] >

00:00:25 #2054 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2055 [Verbose] > // // test

00:00:25 #2056 [Verbose] >

00:00:25 #2057 [Verbose] > inl damped_ho_forces () =

00:00:25 #2058 [Verbose] >     [[

00:00:25 #2059 [Verbose] >         spring_force 0.8

00:00:25 #2060 [Verbose] >         fun (state_1d (_, _, v0)) => f_air 2 1.225 (pi * math.square 0.02) v0

00:00:25 #2061 [Verbose] >         fun _ => -0.0027 * 9.80665

00:00:25 #2062 [Verbose] >     ]]

00:00:25 #2063 [Verbose] >

00:00:25 #2064 [Verbose] > inl damped_ho_states () =

00:00:25 #2065 [Verbose] >     states_txv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ())

00:00:25 #2066 [Verbose] >

00:00:25 #2067 [Verbose] > inl pingpong_position t =

00:00:25 #2068 [Verbose] >     position_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t

00:00:25 #2069 [Verbose] >

00:00:25 #2070 [Verbose] > inl x : a _ f64 = am'.init_series 0 3 0.01

00:00:25 #2071 [Verbose] > inl y = x |> am.map pingpong_position

00:00:25 #2072 [Verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "position (m)", x, y ]]

00:00:25 #2073 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4434-3492-3850f38fbd43\main.spi

00:00:25 #2074 [Verbose] >

00:00:25 #2075 [Verbose] > ╭─[ 271.27ms - return value ]──────────────────────────────────────────────────╮

00:00:25 #2076 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:25 #2077 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:25 #2078 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:25 #2079 [Verbose] > │ stroke="none"/>                                                              │

00:00:25 #2080 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:25 #2081 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:25 #2082 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:25 #2083 [Verbose] > │ ping pong ball on a slinky                                                   │

00:00:25 #2084 [Verbose] > │ </text>                                                                      │

00:00:25 #2085 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:25 #2086 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2087 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:25 #2088 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2089 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:25 #2090 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2091 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:25 #2092 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2093 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9...                 │

00:00:25 #2094 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2095 [Verbose] >

00:00:25 #2096 [Verbose] > ╭─[ 281.06ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2097 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:25 #2098 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:25 #2099 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:25 #2100 [Verbose] > │     let v2 : bool = v1 < 301                                                 │

00:00:25 #2101 [Verbose] > │     v2                                                                       │

00:00:25 #2102 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:25 #2103 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:25 #2104 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:25 #2105 [Verbose] > │     v3                                                                       │

00:00:25 #2106 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │

00:00:25 #2107 [Verbose] > │ * float * float) =                                                           │

00:00:25 #2108 [Verbose] > │     let v4 : bool = v3 <= 0.0                                                │

00:00:25 #2109 [Verbose] > │     if v4 then                                                               │

00:00:25 #2110 [Verbose] > │         struct (v0, v1, v2)                                                  │

00:00:25 #2111 [Verbose] > │     else                                                                     │

00:00:25 #2112 [Verbose] > │         let v5 : float =  -v2                                                │

00:00:25 #2113 [Verbose] > │         let v6 : bool = v2 >= v5                                             │

00:00:25 #2114 [Verbose] > │         let v7 : float =                                                     │

00:00:25 #2115 [Verbose] > │             if v6 then                                                       │

00:00:25 #2116 [Verbose] > │                 v2                                                           │

00:00:25 #2117 [Verbose] > │             else                                                             │

00:00:25 #2118 [Verbose] > │                 v5                                                           │

00:00:25 #2119 [Verbose] > │         let v8 : float = -0.0030787608005179976 * v7                         │

00:00:25 #2120 [Verbose] > │         let v9 : float = v8 * v2                                             │

00:00:25 #2121 [Verbose] > │         let v10 : float = v9 / 2.0                                           │

00:00:25 #2122 [Verbose] > │         let v11 : float = -0.8 * v1                                          │

00:00:25 #2123 [Verbose] > │         let v12 : float = v11 + v10                                          │

00:00:25 #2124 [Verbose] > │         let v13 : float = v12 + -0.026477955                                 │

00:00:25 #2125 [Verbose] > │         let v14 : float = v13 / 0.0027                                       │

00:00:25 #2126 [Verbose] > │         let v15 : float = v0 + 0.001                                         │

00:00:25 #2127 [Verbose] > │         let v16 : float = v2 * 0.001                                         │

00:00:25 #2128 [Verbose] > │         let v17 : float = v1 + v16                                           │

00:00:25 #2129 [Verbose] > │         let v18 : float = v14 * 0.001                                        │

00:00:25 #2130 [Verbose] > │         let v19 : float = v2 + v18                                           │

00:00:25 #2131 [Verbose] > │         let v20 : float = v3 - 1.0                                           │

00:00:25 #2132 [Verbose] > │         method3(v15, v17, v19, v20)                                          │

00:00:25 #2133 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:25 #2134 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:25 #2135 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (301)                      │

00:00:25 #2136 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:25 #2137 [Verbose] > │     while method1(v1) do                                                     │

00:00:25 #2138 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:25 #2139 [Verbose] > │         let v4 : float = float v3                                            │

00:00:25 #2140 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:25 #2141 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:25 #2142 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:25 #2143 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:25 #2144 [Verbose] > │         ()                                                                   │

00:00:25 #2145 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:25 #2146 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:25 #2147 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:25 #2148 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:25 #2149 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:25 #2150 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:25 #2151 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:25 #2152 [Verbose] > │         let v14 : float = 0.1                                                │

00:00:25 #2153 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:25 #2154 [Verbose] > │         let v16 : float = 0.0                                                │

00:00:25 #2155 [Verbose] > │         let struct (v17 : float, v18 : float, v19 : float) = method3(v13,    │

00:00:25 #2156 [Verbose] > │ v14, v15, v16)                                                               │

00:00:25 #2157 [Verbose] > │         let v20 : float = 0.0                                                │

00:00:25 #2158 [Verbose] > │         let v21 : float = 0.1                                                │

00:00:25 #2159 [Verbose] > │         let v22 : float = 0.0                                                │

00:00:25 #2160 [Verbose] > │         let v23 : float = 1.0                                                │

00:00:25 #2161 [Verbose] > │         let struct (v24 : float, v25 : float, v26 : float) = method3(v20,    │

00:00:25 #2162 [Verbose] > │ v21, v22, v23)                                                               │

00:00:25 #2163 [Verbose] > │         let v27 : float = v24 - v17                                          │

00:00:25 #2164 [Verbose] > │         let v28 : float = v12 / v27                                          │

00:00:25 #2165 [Verbose] > │         let v29 : float = round v28                                          │

00:00:25 #2166 [Verbose] > │         let v30 : float =  -v29                                              │

00:00:25 #2167 [Verbose] > │         let v31 : bool = v29 >= v30                                          │

00:00:25 #2168 [Verbose] > │         let v32 : float =                                                    │

00:00:25 #2169 [Verbose] > │             if v31 then                                                      │

00:00:25 #2170 [Verbose] > │                 v29                                                          │

00:00:25 #2171 [Verbose] > │             else                                                             │

00:00:25 #2172 [Verbose] > │                 v30                                                          │

00:00:25 #2173 [Verbose] > │         let v33 : float = 0.0                                                │

00:00:25 #2174 [Verbose] > │         let v34 : float = 0.1                                                │

00:00:25 #2175 [Verbose] > │         let v35 : float = 0.0                                                │

00:00:25 #2176 [Verbose] > │         let struct (v36 : float, v37 : float, v38 : float) = method3(v33,    │

00:00:25 #2177 [Verbose] > │ v34, v35, v32)                                                               │

00:00:25 #2178 [Verbose] > │         v8.[int v11] <- v37                                                  │

00:00:25 #2179 [Verbose] > │         let v39 : int32 = v11 + 1                                            │

00:00:25 #2180 [Verbose] > │         v9.l0 <- v39                                                         │

00:00:25 #2181 [Verbose] > │         ()                                                                   │

00:00:25 #2182 [Verbose] > │     let v40 : string = "position (m)"                                        │

00:00:25 #2183 [Verbose] > │     let v41 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:25 #2184 [Verbose] > │ (v40, v0, v8)|]                                                              │

00:00:25 #2185 [Verbose] > │     let v42 : string = "ping pong ball on a slinky"                          │

00:00:25 #2186 [Verbose] > │     let v43 : string = "time (s)"                                            │

00:00:25 #2187 [Verbose] > │     let v44 : string = ""                                                    │

00:00:25 #2188 [Verbose] > │     struct (v42, v43, v44, v41)                                              │

00:00:25 #2189 [Verbose] > │ method0()                                                                    │

00:00:25 #2190 [Verbose] > │                                                                              │

00:00:25 #2191 [Verbose] > │                                                                              │

00:00:25 #2192 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2193 [Verbose] >

00:00:25 #2194 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2195 [Verbose] > // // test

00:00:25 #2196 [Verbose] >

00:00:25 #2197 [Verbose] > inl pingpong_velocity t =

00:00:25 #2198 [Verbose] >     velocity_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t

00:00:25 #2199 [Verbose] >

00:00:25 #2200 [Verbose] > inl x = am'.init_series 0 3 0.01

00:00:25 #2201 [Verbose] > inl y = x |> am.map pingpong_velocity

00:00:25 #2202 [Verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "velocity (m/s)", x, y ]]

00:00:25 #2203 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4467-6709-6c23b11391f3\main.spi

00:00:25 #2204 [Verbose] >

00:00:25 #2205 [Verbose] > ╭─[ 286.85ms - return value ]──────────────────────────────────────────────────╮

00:00:25 #2206 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:25 #2207 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:25 #2208 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:25 #2209 [Verbose] > │ stroke="none"/>                                                              │

00:00:25 #2210 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:25 #2211 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:25 #2212 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:25 #2213 [Verbose] > │ ping pong ball on a slinky                                                   │

00:00:25 #2214 [Verbose] > │ </text>                                                                      │

00:00:25 #2215 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:25 #2216 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2217 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:25 #2218 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2219 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:25 #2220 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2221 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:25 #2222 [Verbose] > │ y2="75"/>                                                                    │

00:00:25 #2223 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9...                 │

00:00:25 #2224 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2225 [Verbose] >

00:00:25 #2226 [Verbose] > ╭─[ 296.92ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2227 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:25 #2228 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:25 #2229 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:25 #2230 [Verbose] > │     let v2 : bool = v1 < 301                                                 │

00:00:25 #2231 [Verbose] > │     v2                                                                       │

00:00:25 #2232 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:25 #2233 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:25 #2234 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:25 #2235 [Verbose] > │     v3                                                                       │

00:00:25 #2236 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │

00:00:25 #2237 [Verbose] > │ * float * float) =                                                           │

00:00:25 #2238 [Verbose] > │     let v4 : bool = v3 <= 0.0                                                │

00:00:25 #2239 [Verbose] > │     if v4 then                                                               │

00:00:25 #2240 [Verbose] > │         struct (v0, v1, v2)                                                  │

00:00:25 #2241 [Verbose] > │     else                                                                     │

00:00:25 #2242 [Verbose] > │         let v5 : float =  -v2                                                │

00:00:25 #2243 [Verbose] > │         let v6 : bool = v2 >= v5                                             │

00:00:25 #2244 [Verbose] > │         let v7 : float =                                                     │

00:00:25 #2245 [Verbose] > │             if v6 then                                                       │

00:00:25 #2246 [Verbose] > │                 v2                                                           │

00:00:25 #2247 [Verbose] > │             else                                                             │

00:00:25 #2248 [Verbose] > │                 v5                                                           │

00:00:25 #2249 [Verbose] > │         let v8 : float = -0.0030787608005179976 * v7                         │

00:00:25 #2250 [Verbose] > │         let v9 : float = v8 * v2                                             │

00:00:25 #2251 [Verbose] > │         let v10 : float = v9 / 2.0                                           │

00:00:25 #2252 [Verbose] > │         let v11 : float = -0.8 * v1                                          │

00:00:25 #2253 [Verbose] > │         let v12 : float = v11 + v10                                          │

00:00:25 #2254 [Verbose] > │         let v13 : float = v12 + -0.026477955                                 │

00:00:25 #2255 [Verbose] > │         let v14 : float = v13 / 0.0027                                       │

00:00:25 #2256 [Verbose] > │         let v15 : float = v0 + 0.001                                         │

00:00:25 #2257 [Verbose] > │         let v16 : float = v2 * 0.001                                         │

00:00:25 #2258 [Verbose] > │         let v17 : float = v1 + v16                                           │

00:00:25 #2259 [Verbose] > │         let v18 : float = v14 * 0.001                                        │

00:00:25 #2260 [Verbose] > │         let v19 : float = v2 + v18                                           │

00:00:25 #2261 [Verbose] > │         let v20 : float = v3 - 1.0                                           │

00:00:25 #2262 [Verbose] > │         method3(v15, v17, v19, v20)                                          │

00:00:25 #2263 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:25 #2264 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:25 #2265 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (301)                      │

00:00:26 #2266 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:26 #2267 [Verbose] > │     while method1(v1) do                                                     │

00:00:26 #2268 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:26 #2269 [Verbose] > │         let v4 : float = float v3                                            │

00:00:26 #2270 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:26 #2271 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:26 #2272 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:26 #2273 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:26 #2274 [Verbose] > │         ()                                                                   │

00:00:26 #2275 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:26 #2276 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:26 #2277 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:26 #2278 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:26 #2279 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:26 #2280 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:26 #2281 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:26 #2282 [Verbose] > │         let v14 : float = 0.1                                                │

00:00:26 #2283 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:26 #2284 [Verbose] > │         let v16 : float = 0.0                                                │

00:00:26 #2285 [Verbose] > │         let struct (v17 : float, v18 : float, v19 : float) = method3(v13,    │

00:00:26 #2286 [Verbose] > │ v14, v15, v16)                                                               │

00:00:26 #2287 [Verbose] > │         let v20 : float = 0.0                                                │

00:00:26 #2288 [Verbose] > │         let v21 : float = 0.1                                                │

00:00:26 #2289 [Verbose] > │         let v22 : float = 0.0                                                │

00:00:26 #2290 [Verbose] > │         let v23 : float = 1.0                                                │

00:00:26 #2291 [Verbose] > │         let struct (v24 : float, v25 : float, v26 : float) = method3(v20,    │

00:00:26 #2292 [Verbose] > │ v21, v22, v23)                                                               │

00:00:26 #2293 [Verbose] > │         let v27 : float = v24 - v17                                          │

00:00:26 #2294 [Verbose] > │         let v28 : float = v12 / v27                                          │

00:00:26 #2295 [Verbose] > │         let v29 : float = round v28                                          │

00:00:26 #2296 [Verbose] > │         let v30 : float =  -v29                                              │

00:00:26 #2297 [Verbose] > │         let v31 : bool = v29 >= v30                                          │

00:00:26 #2298 [Verbose] > │         let v32 : float =                                                    │

00:00:26 #2299 [Verbose] > │             if v31 then                                                      │

00:00:26 #2300 [Verbose] > │                 v29                                                          │

00:00:26 #2301 [Verbose] > │             else                                                             │

00:00:26 #2302 [Verbose] > │                 v30                                                          │

00:00:26 #2303 [Verbose] > │         let v33 : float = 0.0                                                │

00:00:26 #2304 [Verbose] > │         let v34 : float = 0.1                                                │

00:00:26 #2305 [Verbose] > │         let v35 : float = 0.0                                                │

00:00:26 #2306 [Verbose] > │         let struct (v36 : float, v37 : float, v38 : float) = method3(v33,    │

00:00:26 #2307 [Verbose] > │ v34, v35, v32)                                                               │

00:00:26 #2308 [Verbose] > │         v8.[int v11] <- v38                                                  │

00:00:26 #2309 [Verbose] > │         let v39 : int32 = v11 + 1                                            │

00:00:26 #2310 [Verbose] > │         v9.l0 <- v39                                                         │

00:00:26 #2311 [Verbose] > │         ()                                                                   │

00:00:26 #2312 [Verbose] > │     let v40 : string = "velocity (m/s)"                                      │

00:00:26 #2313 [Verbose] > │     let v41 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:26 #2314 [Verbose] > │ (v40, v0, v8)|]                                                              │

00:00:26 #2315 [Verbose] > │     let v42 : string = "ping pong ball on a slinky"                          │

00:00:26 #2316 [Verbose] > │     let v43 : string = "time (s)"                                            │

00:00:26 #2317 [Verbose] > │     let v44 : string = ""                                                    │

00:00:26 #2318 [Verbose] > │     struct (v42, v43, v44, v41)                                              │

00:00:26 #2319 [Verbose] > │ method0()                                                                    │

00:00:26 #2320 [Verbose] > │                                                                              │

00:00:26 #2321 [Verbose] > │                                                                              │

00:00:26 #2322 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2323 [Verbose] >

00:00:26 #2324 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #2325 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #2326 [Verbose] > │ ## shift                                                                     │

00:00:26 #2327 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2328 [Verbose] >

00:00:26 #2329 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2330 [Verbose] > type update_function s = s -> s

00:00:26 #2331 [Verbose] >

00:00:26 #2332 [Verbose] > type differential_equation s ds = s -> ds

00:00:26 #2333 [Verbose] >

00:00:26 #2334 [Verbose] > type numerical_method s ds = differential_equation s ds -> update_function s

00:00:26 #2335 [Verbose] >

00:00:26 #2336 [Verbose] >

00:00:26 #2337 [Verbose] > inl solver method =

00:00:26 #2338 [Verbose] >     method >> seq.iterate

00:00:26 #2339 [Verbose] > inl solver' method =

00:00:26 #2340 [Verbose] >     method >> seq.iterate'

00:00:26 #2341 [Verbose] > inl solver_ method =

00:00:26 #2342 [Verbose] >     method >> seq.iterate_

00:00:26 #2343 [Verbose] >

00:00:26 #2344 [Verbose] >

00:00:26 #2345 [Verbose] > inl euler_cromer_1d dt deriv (state_1d (t0, x0, v0) as t) =

00:00:26 #2346 [Verbose] >     inl (rrr (_, _, dvdt)) = deriv t

00:00:26 #2347 [Verbose] >     inl t1 = t0 + dt

00:00:26 #2348 [Verbose] >     inl v1 = v0 + dvdt * dt

00:00:26 #2349 [Verbose] >     inl x1 = x0 + v1 * dt

00:00:26 #2350 [Verbose] >     state_1d (t1, x1, v1)

00:00:26 #2351 [Verbose] >

00:00:26 #2352 [Verbose] > inl update_txv_ec dt m fs =

00:00:26 #2353 [Verbose] >     euler_cromer_1d dt (newton_second_1d m fs)

00:00:26 #2354 [Verbose] >

00:00:26 #2355 [Verbose] > prototype (+++) ds : ds -> ds -> ds

00:00:26 #2356 [Verbose] > prototype scale ds : f64 -> ds -> ds

00:00:26 #2357 [Verbose] >

00:00:26 #2358 [Verbose] > instance (+++) rrr = fun (rrr (dtdt0, dxdt0, dvdt0)) (rrr (dtdt1, dxdt1, dvdt1))

00:00:26 #2359 [Verbose] > =>

00:00:26 #2360 [Verbose] >     rrr (dtdt0 + dtdt1, dxdt0 + dxdt1, dvdt0 + dvdt1)

00:00:26 #2361 [Verbose] >

00:00:26 #2362 [Verbose] > instance scale rrr = fun w (rrr (dtdt0, dxdt0, dvdt0)) =>

00:00:26 #2363 [Verbose] >     rrr (w * dtdt0, w * dxdt0, w * dvdt0)

00:00:26 #2364 [Verbose] >

00:00:26 #2365 [Verbose] > prototype shift s : forall ds. f64 -> ds -> s -> s

00:00:26 #2366 [Verbose] >

00:00:26 #2367 [Verbose] > instance shift state_1d = fun dt ds (state_1d (t, x, v)) =>

00:00:26 #2368 [Verbose] >     inl dtdt, dxdt, dvdt =

00:00:26 #2369 [Verbose] >         real

00:00:26 #2370 [Verbose] >             match ds with

00:00:26 #2371 [Verbose] >             | rrr x => x

00:00:26 #2372 [Verbose] >             | state_1d x => x

00:00:26 #2373 [Verbose] >     state_1d (t + dtdt * dt, x + dxdt * dt, v + dvdt * dt)

00:00:26 #2374 [Verbose] >

00:00:26 #2375 [Verbose] > inl euler dt deriv st0 =

00:00:26 #2376 [Verbose] >     shift dt (deriv st0) st0

00:00:26 #2377 [Verbose] >

00:00:26 #2378 [Verbose] > inl runge_kutta_4 dt deriv st0 =

00:00:26 #2379 [Verbose] >     inl m0 = deriv st0

00:00:26 #2380 [Verbose] >     inl m1 = deriv (shift (dt / 2) m0 st0)

00:00:26 #2381 [Verbose] >     inl m2 = deriv (shift (dt / 2) m1 st0)

00:00:26 #2382 [Verbose] >     inl m3 = deriv (shift dt m2 st0)

00:00:26 #2383 [Verbose] >     shift (dt / 6) (m0 +++ m1 +++ m1 +++ m2 +++ m2 +++ m3) st0

00:00:26 #2384 [Verbose] >

00:00:26 #2385 [Verbose] > inl exponential (_, x0, v0) =

00:00:26 #2386 [Verbose] >     1f64, v0, x0

00:00:26 #2387 [Verbose] >

00:00:26 #2388 [Verbose] > inl of_state_1d (state_1d (t, x, v)) =

00:00:26 #2389 [Verbose] >     t, x, v

00:00:26 #2390 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4500-0051-0cb7e0ef89fb\main.spi

00:00:26 #2391 [Verbose] >

00:00:26 #2392 [Verbose] > ╭─[ 210.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2393 [Verbose] > │ ()                                                                           │

00:00:26 #2394 [Verbose] > │                                                                              │

00:00:26 #2395 [Verbose] > │                                                                              │

00:00:26 #2396 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2397 [Verbose] >

00:00:26 #2398 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2399 [Verbose] > // // test

00:00:26 #2400 [Verbose] >

00:00:26 #2401 [Verbose] > solver (euler 0.01) (of_state_1d >> exponential >> state_1d) (state_1d (0, 1,

00:00:26 #2402 [Verbose] > 1)) 800i32

00:00:26 #2403 [Verbose] > |> _equal (state_1d (7.999999999999874, 2864.8311229272326, 2864.8311229272326))

00:00:26 #2404 [Verbose] >

00:00:26 #2405 [Verbose] > solver (euler_cromer_1d 0.1) (of_state_1d >> exponential >> rrr) (state_1d (0,

00:00:26 #2406 [Verbose] > 1, 1)) 80i32

00:00:26 #2407 [Verbose] > |> _equal (state_1d (7.999999999999988, 3043.379244966009, 2895.0121485099035))

00:00:26 #2408 [Verbose] >

00:00:26 #2409 [Verbose] > solver (runge_kutta_4 1) (of_state_1d >> exponential >> rrr) (state_1d (0, 1,

00:00:26 #2410 [Verbose] > 1)) 8i32

00:00:26 #2411 [Verbose] > |> _equal (state_1d (8.0, 2894.789038540849, 2894.789038540849))

00:00:26 #2412 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4521-2164-292435998bc7\main.spi

00:00:26 #2413 [Verbose] >

00:00:26 #2414 [Verbose] > ╭─[ 323.29ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2415 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:26 #2416 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (7.999999999999874,       │

00:00:26 #2417 [Verbose] > │ 2864.8311229272326, 2864.8311229272326)} / expected: %A{struct               │

00:00:26 #2418 [Verbose] > │ (7.999999999999874, 2864.8311229272326, 2864.8311229272326)}"                │

00:00:26 #2419 [Verbose] > │     let v1 : string = $"_equal / actual: %A{struct (7.999999999999988,       │

00:00:26 #2420 [Verbose] > │ 3043.379244966009, 2895.0121485099035)} / expected: %A{struct                │

00:00:26 #2421 [Verbose] > │ (7.999999999999988, 3043.379244966009, 2895.0121485099035)}"                 │

00:00:26 #2422 [Verbose] > │     let v2 : string = $"_equal / actual: %A{struct (8.0, 2894.789038540849,  │

00:00:26 #2423 [Verbose] > │ 2894.789038540849)} / expected: %A{struct (8.0, 2894.789038540849,           │

00:00:26 #2424 [Verbose] > │ 2894.789038540849)}"                                                         │

00:00:26 #2425 [Verbose] > │     ()                                                                       │

00:00:26 #2426 [Verbose] > │ method0()                                                                    │

00:00:26 #2427 [Verbose] > │                                                                              │

00:00:26 #2428 [Verbose] > │                                                                              │

00:00:26 #2429 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2430 [Verbose] >

00:00:26 #2431 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #2432 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #2433 [Verbose] > │ ## vec                                                                       │

00:00:26 #2434 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2435 [Verbose] >

00:00:26 #2436 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2437 [Verbose] > type vec =

00:00:26 #2438 [Verbose] >     {

00:00:26 #2439 [Verbose] >         x : f64

00:00:26 #2440 [Verbose] >         y : f64

00:00:26 #2441 [Verbose] >         z : f64

00:00:26 #2442 [Verbose] >     }

00:00:26 #2443 [Verbose] >

00:00:26 #2444 [Verbose] > inl vec x y z : vec =

00:00:26 #2445 [Verbose] >     { x y z }

00:00:26 #2446 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4554-5484-5dcc94a496df\main.spi

00:00:26 #2447 [Verbose] >

00:00:26 #2448 [Verbose] > ╭─[ 347.60ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2449 [Verbose] > │ ()                                                                           │

00:00:26 #2450 [Verbose] > │                                                                              │

00:00:26 #2451 [Verbose] > │                                                                              │

00:00:26 #2452 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2453 [Verbose] >

00:00:26 #2454 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2455 [Verbose] > // // test

00:00:26 #2456 [Verbose] >

00:00:26 #2457 [Verbose] > vec 1 2 3 .z

00:00:26 #2458 [Verbose] > |> _equal 3

00:00:27 #2459 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4589-8984-874e904df6b3\main.spi

00:00:27 #2460 [Verbose] >

00:00:27 #2461 [Verbose] > ╭─[ 178.89ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2462 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2463 [Verbose] > │     let v0 : string = $"_equal / actual: %A{3.0} / expected: %A{3.0}"        │

00:00:27 #2464 [Verbose] > │     ()                                                                       │

00:00:27 #2465 [Verbose] > │ method0()                                                                    │

00:00:27 #2466 [Verbose] > │                                                                              │

00:00:27 #2467 [Verbose] > │                                                                              │

00:00:27 #2468 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2469 [Verbose] >

00:00:27 #2470 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2471 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2472 [Verbose] > │ ### consts                                                                   │

00:00:27 #2473 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2474 [Verbose] >

00:00:27 #2475 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2476 [Verbose] > inl i_hat () = vec 1 0 0

00:00:27 #2477 [Verbose] > inl j_hat () = vec 0 1 0

00:00:27 #2478 [Verbose] > inl k_hat () = vec 0 0 1

00:00:27 #2479 [Verbose] > inl zero_vec () = vec 0 0 0

00:00:27 #2480 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4608-0849-0e17609ea45c\main.spi

00:00:27 #2481 [Verbose] >

00:00:27 #2482 [Verbose] > ╭─[ 194.34ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2483 [Verbose] > │ ()                                                                           │

00:00:27 #2484 [Verbose] > │                                                                              │

00:00:27 #2485 [Verbose] > │                                                                              │

00:00:27 #2486 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2487 [Verbose] >

00:00:27 #2488 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2489 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2490 [Verbose] > │ ### ^+^                                                                      │

00:00:27 #2491 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2492 [Verbose] >

00:00:27 #2493 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2494 [Verbose] > inl (^+^) (a : vec) (b : vec) =

00:00:27 #2495 [Verbose] >     vec (a.x + b.x) (a.y + b.y) (a.z + b.z)

00:00:27 #2496 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4628-2815-2523e68eb9e1\main.spi

00:00:27 #2497 [Verbose] >

00:00:27 #2498 [Verbose] > ╭─[ 159.19ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2499 [Verbose] > │ ()                                                                           │

00:00:27 #2500 [Verbose] > │                                                                              │

00:00:27 #2501 [Verbose] > │                                                                              │

00:00:27 #2502 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2503 [Verbose] >

00:00:27 #2504 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2505 [Verbose] > // // test

00:00:27 #2506 [Verbose] >

00:00:27 #2507 [Verbose] > vec 1 2 3 ^+^ vec 4 5 6

00:00:27 #2508 [Verbose] > |> _equal (vec 5 7 9)

00:00:27 #2509 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4644-4426-42e89a7e7717\main.spi

00:00:27 #2510 [Verbose] >

00:00:27 #2511 [Verbose] > ╭─[ 169.55ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2512 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2513 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 7.0, 9.0)} /        │

00:00:27 #2514 [Verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}"                                        │

00:00:27 #2515 [Verbose] > │     ()                                                                       │

00:00:27 #2516 [Verbose] > │ method0()                                                                    │

00:00:27 #2517 [Verbose] > │                                                                              │

00:00:27 #2518 [Verbose] > │                                                                              │

00:00:27 #2519 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2520 [Verbose] >

00:00:27 #2521 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2522 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2523 [Verbose] > │ ### sum_vec                                                                  │

00:00:27 #2524 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2525 [Verbose] >

00:00:27 #2526 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2527 [Verbose] > inl sum_vec vs =

00:00:27 #2528 [Verbose] >     vs |> listm.fold (^+^) (zero_vec ())

00:00:27 #2529 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4661-6195-6927c9620949\main.spi

00:00:27 #2530 [Verbose] >

00:00:27 #2531 [Verbose] > ╭─[ 187.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2532 [Verbose] > │ ()                                                                           │

00:00:27 #2533 [Verbose] > │                                                                              │

00:00:27 #2534 [Verbose] > │                                                                              │

00:00:27 #2535 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2536 [Verbose] >

00:00:27 #2537 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2538 [Verbose] > // // test

00:00:27 #2539 [Verbose] >

00:00:27 #2540 [Verbose] > [[ vec 1 2 3; vec 4 5 6 ]]

00:00:27 #2541 [Verbose] > |> sum_vec

00:00:27 #2542 [Verbose] > |> _equal (vec 5 7 9)

00:00:27 #2543 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4681-8100-8b11eed5dc2e\main.spi

00:00:27 #2544 [Verbose] >

00:00:27 #2545 [Verbose] > ╭─[ 166.84ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2546 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2547 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 7.0, 9.0)} /        │

00:00:27 #2548 [Verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}"                                        │

00:00:27 #2549 [Verbose] > │     ()                                                                       │

00:00:27 #2550 [Verbose] > │ method0()                                                                    │

00:00:27 #2551 [Verbose] > │                                                                              │

00:00:27 #2552 [Verbose] > │                                                                              │

00:00:27 #2553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2554 [Verbose] >

00:00:27 #2555 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:28 #2556 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:28 #2557 [Verbose] > │ ### *^                                                                       │

00:00:28 #2558 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2559 [Verbose] >

00:00:28 #2560 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2561 [Verbose] > inl (*^) c { x y z } =

00:00:28 #2562 [Verbose] >     vec (c * x) (c * y) (c * z)

00:00:28 #2563 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4698-9839-946543ef3b6e\main.spi

00:00:28 #2564 [Verbose] >

00:00:28 #2565 [Verbose] > ╭─[ 170.59ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2566 [Verbose] > │ ()                                                                           │

00:00:28 #2567 [Verbose] > │                                                                              │

00:00:28 #2568 [Verbose] > │                                                                              │

00:00:28 #2569 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2570 [Verbose] >

00:00:28 #2571 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2572 [Verbose] > // // test

00:00:28 #2573 [Verbose] >

00:00:28 #2574 [Verbose] > 5 *^ vec 1 2 3

00:00:28 #2575 [Verbose] > |> _equal (vec 5 10 15)

00:00:28 #2576 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4715-1560-134b52f9a2b5\main.spi

00:00:28 #2577 [Verbose] >

00:00:28 #2578 [Verbose] > ╭─[ 168.49ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2579 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:28 #2580 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 10.0, 15.0)} /      │

00:00:28 #2581 [Verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}"                                      │

00:00:28 #2582 [Verbose] > │     ()                                                                       │

00:00:28 #2583 [Verbose] > │ method0()                                                                    │

00:00:28 #2584 [Verbose] > │                                                                              │

00:00:28 #2585 [Verbose] > │                                                                              │

00:00:28 #2586 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2587 [Verbose] >

00:00:28 #2588 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2589 [Verbose] > // // test

00:00:28 #2590 [Verbose] >

00:00:28 #2591 [Verbose] > 3 *^ i_hat () ^+^ 4 *^ k_hat ()

00:00:28 #2592 [Verbose] > |> _equal (vec 3 0 4)

00:00:28 #2593 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4732-3291-39eacc875deb\main.spi

00:00:28 #2594 [Verbose] >

00:00:28 #2595 [Verbose] > ╭─[ 181.09ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2596 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:28 #2597 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (3.0, 0.0, 4.0)} /        │

00:00:28 #2598 [Verbose] > │ expected: %A{struct (3.0, 0.0, 4.0)}"                                        │

00:00:28 #2599 [Verbose] > │     ()                                                                       │

00:00:28 #2600 [Verbose] > │ method0()                                                                    │

00:00:28 #2601 [Verbose] > │                                                                              │

00:00:28 #2602 [Verbose] > │                                                                              │

00:00:28 #2603 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2604 [Verbose] >

00:00:28 #2605 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:28 #2606 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:28 #2607 [Verbose] > │ ### ^*                                                                       │

00:00:28 #2608 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2609 [Verbose] >

00:00:28 #2610 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2611 [Verbose] > inl (^*) v c =

00:00:28 #2612 [Verbose] >     (*^) c v

00:00:28 #2613 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4751-5161-5eda518d431b\main.spi

00:00:28 #2614 [Verbose] >

00:00:28 #2615 [Verbose] > ╭─[ 161.36ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2616 [Verbose] > │ ()                                                                           │

00:00:28 #2617 [Verbose] > │                                                                              │

00:00:28 #2618 [Verbose] > │                                                                              │

00:00:28 #2619 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2620 [Verbose] >

00:00:28 #2621 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2622 [Verbose] > // // test

00:00:28 #2623 [Verbose] >

00:00:28 #2624 [Verbose] > vec 1 2 3 ^* 5

00:00:28 #2625 [Verbose] > |> _equal (vec 5 10 15)

00:00:28 #2626 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4767-6797-6f7f694c9798\main.spi

00:00:28 #2627 [Verbose] >

00:00:28 #2628 [Verbose] > ╭─[ 195.89ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2629 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:28 #2630 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 10.0, 15.0)} /      │

00:00:28 #2631 [Verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}"                                      │

00:00:28 #2632 [Verbose] > │     ()                                                                       │

00:00:28 #2633 [Verbose] > │ method0()                                                                    │

00:00:28 #2634 [Verbose] > │                                                                              │

00:00:28 #2635 [Verbose] > │                                                                              │

00:00:28 #2636 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2637 [Verbose] >

00:00:28 #2638 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:28 #2639 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:28 #2640 [Verbose] > │ ### ^/                                                                       │

00:00:28 #2641 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2642 [Verbose] >

00:00:28 #2643 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2644 [Verbose] > inl (^/) { x y z } c =

00:00:28 #2645 [Verbose] >     vec (x / c) (y / c) (z / c)

00:00:29 #2646 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4788-8823-84f880051a92\main.spi

00:00:29 #2647 [Verbose] >

00:00:29 #2648 [Verbose] > ╭─[ 173.01ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2649 [Verbose] > │ ()                                                                           │

00:00:29 #2650 [Verbose] > │                                                                              │

00:00:29 #2651 [Verbose] > │                                                                              │

00:00:29 #2652 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2653 [Verbose] >

00:00:29 #2654 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2655 [Verbose] > // // test

00:00:29 #2656 [Verbose] >

00:00:29 #2657 [Verbose] > vec 1 2 3 ^/ 5

00:00:29 #2658 [Verbose] > |> _equal (vec 0.2 0.4 0.6)

00:00:29 #2659 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4805-0567-0344527e908b\main.spi

00:00:29 #2660 [Verbose] >

00:00:29 #2661 [Verbose] > ╭─[ 166.41ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2662 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:29 #2663 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (0.2, 0.4, 0.6)} /        │

00:00:29 #2664 [Verbose] > │ expected: %A{struct (0.2, 0.4, 0.6)}"                                        │

00:00:29 #2665 [Verbose] > │     ()                                                                       │

00:00:29 #2666 [Verbose] > │ method0()                                                                    │

00:00:29 #2667 [Verbose] > │                                                                              │

00:00:29 #2668 [Verbose] > │                                                                              │

00:00:29 #2669 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2670 [Verbose] >

00:00:29 #2671 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:29 #2672 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:29 #2673 [Verbose] > │ ### negate_vec                                                               │

00:00:29 #2674 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2675 [Verbose] >

00:00:29 #2676 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2677 [Verbose] > inl negate_vec v =

00:00:29 #2678 [Verbose] >     v ^* -1

00:00:29 #2679 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4822-2295-2a4b6c3261b0\main.spi

00:00:29 #2680 [Verbose] >

00:00:29 #2681 [Verbose] > ╭─[ 207.08ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2682 [Verbose] > │ ()                                                                           │

00:00:29 #2683 [Verbose] > │                                                                              │

00:00:29 #2684 [Verbose] > │                                                                              │

00:00:29 #2685 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2686 [Verbose] >

00:00:29 #2687 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2688 [Verbose] > // // test

00:00:29 #2689 [Verbose] >

00:00:29 #2690 [Verbose] > vec 1 2 3

00:00:29 #2691 [Verbose] > |> negate_vec

00:00:29 #2692 [Verbose] > |> _equal (vec -1 -2 -3)

00:00:29 #2693 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4843-4394-4cd704f62be1\main.spi

00:00:29 #2694 [Verbose] >

00:00:29 #2695 [Verbose] > ╭─[ 219.23ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2696 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:29 #2697 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-1.0, -2.0, -3.0)} /     │

00:00:29 #2698 [Verbose] > │ expected: %A{struct (-1.0, -2.0, -3.0)}"                                     │

00:00:29 #2699 [Verbose] > │     ()                                                                       │

00:00:29 #2700 [Verbose] > │ method0()                                                                    │

00:00:29 #2701 [Verbose] > │                                                                              │

00:00:29 #2702 [Verbose] > │                                                                              │

00:00:29 #2703 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2704 [Verbose] >

00:00:29 #2705 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:29 #2706 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:29 #2707 [Verbose] > │ ### ^-^                                                                      │

00:00:29 #2708 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2709 [Verbose] >

00:00:29 #2710 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2711 [Verbose] > inl (^-^) a b =

00:00:29 #2712 [Verbose] >     a ^+^ (negate_vec b)

00:00:29 #2713 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4866-6691-62c7cd0c51f1\main.spi

00:00:29 #2714 [Verbose] >

00:00:29 #2715 [Verbose] > ╭─[ 236.22ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2716 [Verbose] > │ ()                                                                           │

00:00:29 #2717 [Verbose] > │                                                                              │

00:00:29 #2718 [Verbose] > │                                                                              │

00:00:29 #2719 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2720 [Verbose] >

00:00:29 #2721 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2722 [Verbose] > // // test

00:00:29 #2723 [Verbose] >

00:00:29 #2724 [Verbose] > vec 1 2 3 ^-^ vec 4 5 6

00:00:29 #2725 [Verbose] > |> _equal (vec -3 -3 -3)

00:00:30 #2726 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4890-9058-90bf2ce01edd\main.spi

00:00:30 #2727 [Verbose] >

00:00:30 #2728 [Verbose] > ╭─[ 220.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #2729 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:30 #2730 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-3.0, -3.0, -3.0)} /     │

00:00:30 #2731 [Verbose] > │ expected: %A{struct (-3.0, -3.0, -3.0)}"                                     │

00:00:30 #2732 [Verbose] > │     ()                                                                       │

00:00:30 #2733 [Verbose] > │ method0()                                                                    │

00:00:30 #2734 [Verbose] > │                                                                              │

00:00:30 #2735 [Verbose] > │                                                                              │

00:00:30 #2736 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2737 [Verbose] >

00:00:30 #2738 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:30 #2739 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:30 #2740 [Verbose] > │ ### <.>                                                                      │

00:00:30 #2741 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2742 [Verbose] >

00:00:30 #2743 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #2744 [Verbose] > inl (<.>) { x = ax y = ay z = az } { x = bx y = by z = bz } =

00:00:30 #2745 [Verbose] >     ax * bx + ay * by + az * bz

00:00:30 #2746 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4913-1338-1c2255853f21\main.spi

00:00:30 #2747 [Verbose] >

00:00:30 #2748 [Verbose] > ╭─[ 385.32ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #2749 [Verbose] > │ ()                                                                           │

00:00:30 #2750 [Verbose] > │                                                                              │

00:00:30 #2751 [Verbose] > │                                                                              │

00:00:30 #2752 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2753 [Verbose] >

00:00:30 #2754 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #2755 [Verbose] > // // test

00:00:30 #2756 [Verbose] >

00:00:30 #2757 [Verbose] > vec 1 2 3 <.> vec 4 5 6

00:00:30 #2758 [Verbose] > |> _equal 32

00:00:30 #2759 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4952-5205-5c17a482a0d1\main.spi

00:00:30 #2760 [Verbose] >

00:00:30 #2761 [Verbose] > ╭─[ 169.71ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #2762 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:30 #2763 [Verbose] > │     let v0 : string = $"_equal / actual: %A{32.0} / expected: %A{32.0}"      │

00:00:30 #2764 [Verbose] > │     ()                                                                       │

00:00:30 #2765 [Verbose] > │ method0()                                                                    │

00:00:30 #2766 [Verbose] > │                                                                              │

00:00:30 #2767 [Verbose] > │                                                                              │

00:00:30 #2768 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2769 [Verbose] >

00:00:30 #2770 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:30 #2771 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:30 #2772 [Verbose] > │ ### \>\<                                                                     │

00:00:30 #2773 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2774 [Verbose] >

00:00:30 #2775 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #2776 [Verbose] > inl (><) (a : vec) (b : vec) =

00:00:30 #2777 [Verbose] >     vec

00:00:30 #2778 [Verbose] >         (a.y * b.z - a.z * b.y)

00:00:30 #2779 [Verbose] >         (a.z * b.x - a.x * b.z)

00:00:30 #2780 [Verbose] >         (a.x * b.y - a.y * b.x)

00:00:30 #2781 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4969-6966-662ca6a34fa0\main.spi

00:00:30 #2782 [Verbose] >

00:00:30 #2783 [Verbose] > ╭─[ 189.41ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #2784 [Verbose] > │ ()                                                                           │

00:00:30 #2785 [Verbose] > │                                                                              │

00:00:30 #2786 [Verbose] > │                                                                              │

00:00:30 #2787 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2788 [Verbose] >

00:00:30 #2789 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #2790 [Verbose] > // // test

00:00:30 #2791 [Verbose] >

00:00:30 #2792 [Verbose] > vec 1 2 3 >< vec 4 5 6

00:00:30 #2793 [Verbose] > |> _equal (vec -3 6 -3)

00:00:31 #2794 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4988-8890-8a802d0299ac\main.spi

00:00:31 #2795 [Verbose] >

00:00:31 #2796 [Verbose] > ╭─[ 165.72ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #2797 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:31 #2798 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-3.0, 6.0, -3.0)} /      │

00:00:31 #2799 [Verbose] > │ expected: %A{struct (-3.0, 6.0, -3.0)}"                                      │

00:00:31 #2800 [Verbose] > │     ()                                                                       │

00:00:31 #2801 [Verbose] > │ method0()                                                                    │

00:00:31 #2802 [Verbose] > │                                                                              │

00:00:31 #2803 [Verbose] > │                                                                              │

00:00:31 #2804 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #2805 [Verbose] >

00:00:31 #2806 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:31 #2807 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:31 #2808 [Verbose] > │ ### magnitude                                                                │

00:00:31 #2809 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #2810 [Verbose] >

00:00:31 #2811 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:31 #2812 [Verbose] > inl magnitude v =

00:00:31 #2813 [Verbose] >     v <.> v |> sqrt

00:00:31 #2814 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5006-0615-03b2e00c9894\main.spi

00:00:31 #2815 [Verbose] >

00:00:31 #2816 [Verbose] > ╭─[ 169.17ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #2817 [Verbose] > │ ()                                                                           │

00:00:31 #2818 [Verbose] > │                                                                              │

00:00:31 #2819 [Verbose] > │                                                                              │

00:00:31 #2820 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #2821 [Verbose] >

00:00:31 #2822 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:31 #2823 [Verbose] > // // test

00:00:31 #2824 [Verbose] >

00:00:31 #2825 [Verbose] > vec 1 2 3

00:00:31 #2826 [Verbose] > |> magnitude

00:00:31 #2827 [Verbose] > |> _almost_equal 3.7416573867739413

00:00:31 #2828 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5023-2324-2365926d769b\main.spi

00:00:31 #2829 [Verbose] >

00:00:31 #2830 [Verbose] > ╭─[ 263.51ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #2831 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:31 #2832 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{3.7416573867739413} /     │

00:00:31 #2833 [Verbose] > │ expected: %A{3.7416573867739413}"                                            │

00:00:31 #2834 [Verbose] > │     ()                                                                       │

00:00:31 #2835 [Verbose] > │ method0()                                                                    │

00:00:31 #2836 [Verbose] > │                                                                              │

00:00:31 #2837 [Verbose] > │                                                                              │

00:00:31 #2838 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #2839 [Verbose] >

00:00:31 #2840 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:31 #2841 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:31 #2842 [Verbose] > │ ### v1                                                                       │

00:00:31 #2843 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #2844 [Verbose] >

00:00:31 #2845 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:31 #2846 [Verbose] > inl v1 t =

00:00:31 #2847 [Verbose] >     2 *^ (t ** 2 *^ i_hat () ^+^ 3 *^ (t ** 3 *^ j_hat () ^+^ t ** 4 *^ k_hat

00:00:31 #2848 [Verbose] > ()))

00:00:31 #2849 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5053-5302-596a1da7b8ab\main.spi

00:00:31 #2850 [Verbose] >

00:00:31 #2851 [Verbose] > ╭─[ 244.23ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #2852 [Verbose] > │ ()                                                                           │

00:00:31 #2853 [Verbose] > │                                                                              │

00:00:31 #2854 [Verbose] > │                                                                              │

00:00:31 #2855 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #2856 [Verbose] >

00:00:31 #2857 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:31 #2858 [Verbose] > // // test

00:00:31 #2859 [Verbose] >

00:00:31 #2860 [Verbose] > v1 1

00:00:31 #2861 [Verbose] > |> _equal (vec 2 6 6)

00:00:31 #2862 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5075-7577-7f8cd3e4e875\main.spi

00:00:31 #2863 [Verbose] >

00:00:31 #2864 [Verbose] > ╭─[ 224.62ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #2865 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:31 #2866 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (2.0, 6.0, 6.0)} /        │

00:00:32 #2867 [Verbose] > │ expected: %A{struct (2.0, 6.0, 6.0)}"                                        │

00:00:32 #2868 [Verbose] > │     ()                                                                       │

00:00:32 #2869 [Verbose] > │ method0()                                                                    │

00:00:32 #2870 [Verbose] > │                                                                              │

00:00:32 #2871 [Verbose] > │                                                                              │

00:00:32 #2872 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #2873 [Verbose] >

00:00:32 #2874 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:32 #2875 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:32 #2876 [Verbose] > │ ### vec_derivative                                                           │

00:00:32 #2877 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #2878 [Verbose] >

00:00:32 #2879 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:32 #2880 [Verbose] > type vec_derivative = (f64 -> vec) -> f64 -> vec

00:00:32 #2881 [Verbose] >

00:00:32 #2882 [Verbose] > inl vec_derivative dt : vec_derivative =

00:00:32 #2883 [Verbose] >     fun v t =>

00:00:32 #2884 [Verbose] >         (v (t + dt / 2) ^-^ v (t - dt / 2)) ^/ dt

00:00:32 #2885 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5099-9915-94848a507f77\main.spi

00:00:32 #2886 [Verbose] >

00:00:32 #2887 [Verbose] > ╭─[ 260.32ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #2888 [Verbose] > │ ()                                                                           │

00:00:32 #2889 [Verbose] > │                                                                              │

00:00:32 #2890 [Verbose] > │                                                                              │

00:00:32 #2891 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #2892 [Verbose] >

00:00:32 #2893 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:32 #2894 [Verbose] > // // test

00:00:32 #2895 [Verbose] >

00:00:32 #2896 [Verbose] > vec_derivative 0.01 v1 3 .x

00:00:32 #2897 [Verbose] > |> _almost_equal (derivative 0.01 (v1 >> fun v => v.x) 3)

00:00:32 #2898 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5125-2517-2e97892ae4ca\main.spi

00:00:32 #2899 [Verbose] >

00:00:32 #2900 [Verbose] > ╭─[ 238.70ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #2901 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:32 #2902 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{11.999999999999744} /     │

00:00:32 #2903 [Verbose] > │ expected: %A{11.999999999999744}"                                            │

00:00:32 #2904 [Verbose] > │     ()                                                                       │

00:00:32 #2905 [Verbose] > │ method0()                                                                    │

00:00:32 #2906 [Verbose] > │                                                                              │

00:00:32 #2907 [Verbose] > │                                                                              │

00:00:32 #2908 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #2909 [Verbose] >

00:00:32 #2910 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:32 #2911 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:32 #2912 [Verbose] > │ ## states_ps                                                                 │

00:00:32 #2913 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #2914 [Verbose] >

00:00:32 #2915 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:32 #2916 [Verbose] > nominal particle_state =

00:00:32 #2917 [Verbose] >     {

00:00:32 #2918 [Verbose] >         mass : f64

00:00:32 #2919 [Verbose] >         charge : f64

00:00:32 #2920 [Verbose] >         time : f64

00:00:32 #2921 [Verbose] >         pos_vec : vec

00:00:32 #2922 [Verbose] >         velocity : vec

00:00:32 #2923 [Verbose] >     }

00:00:32 #2924 [Verbose] >

00:00:32 #2925 [Verbose] > inl default_particle_state () : particle_state =

00:00:32 #2926 [Verbose] >     particle_state {

00:00:32 #2927 [Verbose] >         mass = 1

00:00:32 #2928 [Verbose] >         charge = 0

00:00:32 #2929 [Verbose] >         time = 0

00:00:32 #2930 [Verbose] >         pos_vec = zero_vec ()

00:00:32 #2931 [Verbose] >         velocity = zero_vec ()

00:00:32 #2932 [Verbose] >     }

00:00:32 #2933 [Verbose] >

00:00:32 #2934 [Verbose] > type one_body_force = particle_state -> vec

00:00:32 #2935 [Verbose] >

00:00:32 #2936 [Verbose] > nominal d_particle_state =

00:00:32 #2937 [Verbose] >     {

00:00:32 #2938 [Verbose] >         dmdt : f64

00:00:32 #2939 [Verbose] >         dqdt : f64

00:00:32 #2940 [Verbose] >         dtdt : f64

00:00:32 #2941 [Verbose] >         drdt : vec

00:00:32 #2942 [Verbose] >         dvdt : vec

00:00:32 #2943 [Verbose] >     }

00:00:32 #2944 [Verbose] >

00:00:32 #2945 [Verbose] > inl newton_second_ps (fs : list one_body_force) (st : particle_state) :

00:00:32 #2946 [Verbose] > d_particle_state =

00:00:32 #2947 [Verbose] >     inl f_net = fs |> listm.map (fun f => f st) |> sum_vec

00:00:32 #2948 [Verbose] >     d_particle_state {

00:00:32 #2949 [Verbose] >         dmdt = 0

00:00:32 #2950 [Verbose] >         dqdt = 0

00:00:32 #2951 [Verbose] >         dtdt = 1

00:00:32 #2952 [Verbose] >         drdt = st.velocity

00:00:32 #2953 [Verbose] >         dvdt = f_net ^/ st.mass

00:00:32 #2954 [Verbose] >     }

00:00:32 #2955 [Verbose] >

00:00:32 #2956 [Verbose] > inl earth_surface_gravity (st : particle_state) =

00:00:32 #2957 [Verbose] >     inl g = 9.80665

00:00:32 #2958 [Verbose] >     -st.mass * g *^ k_hat ()

00:00:32 #2959 [Verbose] >

00:00:32 #2960 [Verbose] > inl air_resistance drag rho area (st : particle_state) =

00:00:32 #2961 [Verbose] >     -0.5 * drag * rho * area * magnitude st.velocity *^ st.velocity

00:00:32 #2962 [Verbose] >

00:00:32 #2963 [Verbose] > inl euler_cromer_ps dt (deriv : particle_state -> d_particle_state)

00:00:32 #2964 [Verbose] > (particle_state st) =

00:00:32 #2965 [Verbose] >     inl dst : d_particle_state = deriv (particle_state st)

00:00:32 #2966 [Verbose] >     inl v' = st.velocity ^+^ dst.dvdt ^* dt

00:00:32 #2967 [Verbose] >     particle_state { st with

00:00:32 #2968 [Verbose] >         time = st.time + dt

00:00:32 #2969 [Verbose] >         pos_vec = st.pos_vec ^+^ v' ^* dt

00:00:32 #2970 [Verbose] >         velocity = st.velocity ^+^ dst.dvdt ^* dt

00:00:32 #2971 [Verbose] >     }

00:00:32 #2972 [Verbose] >

00:00:32 #2973 [Verbose] > instance (+++) d_particle_state = fun (dps : d_particle_state) (dps' :

00:00:32 #2974 [Verbose] > d_particle_state) =>

00:00:32 #2975 [Verbose] >     d_particle_state {

00:00:32 #2976 [Verbose] >         dmdt = dps.dmdt + dps'.dmdt

00:00:32 #2977 [Verbose] >         dqdt = dps.dqdt + dps'.dqdt

00:00:32 #2978 [Verbose] >         dtdt = dps.dtdt + dps'.dtdt

00:00:32 #2979 [Verbose] >         drdt = dps.drdt ^+^ dps'.drdt

00:00:32 #2980 [Verbose] >         dvdt = dps.dvdt ^+^ dps'.dvdt

00:00:32 #2981 [Verbose] >     }

00:00:32 #2982 [Verbose] >

00:00:32 #2983 [Verbose] > instance scale d_particle_state = fun w (dps : d_particle_state) =>

00:00:32 #2984 [Verbose] >     d_particle_state {

00:00:32 #2985 [Verbose] >         dmdt = w * dps.dmdt

00:00:32 #2986 [Verbose] >         dqdt = w * dps.dqdt

00:00:32 #2987 [Verbose] >         dtdt = w * dps.dtdt

00:00:32 #2988 [Verbose] >         drdt = w *^ dps.drdt

00:00:32 #2989 [Verbose] >         dvdt = w *^ dps.dvdt

00:00:32 #2990 [Verbose] >     }

00:00:32 #2991 [Verbose] >

00:00:32 #2992 [Verbose] > instance shift particle_state = fun dt dps (particle_state st) =>

00:00:32 #2993 [Verbose] >     inl (d_particle_state dps) =

00:00:32 #2994 [Verbose] >         real

00:00:32 #2995 [Verbose] >             match dps with

00:00:32 #2996 [Verbose] >             | d_particle_state _ => dps

00:00:32 #2997 [Verbose] >     particle_state { st with

00:00:32 #2998 [Verbose] >         time = st.time + dps.dtdt * dt

00:00:32 #2999 [Verbose] >         pos_vec = st.pos_vec ^+^ dps.drdt ^* dt

00:00:32 #3000 [Verbose] >         velocity = st.velocity ^+^ dps.dvdt ^* dt

00:00:32 #3001 [Verbose] >     }

00:00:32 #3002 [Verbose] >

00:00:32 #3003 [Verbose] > inl states_ps (method : numerical_method particle_state d_particle_state) : _ ->

00:00:32 #3004 [Verbose] > _ -> i32 -> particle_state =

00:00:32 #3005 [Verbose] >     newton_second_ps >> method >> seq.iterate_

00:00:32 #3006 [Verbose] >

00:00:32 #3007 [Verbose] > inl z_ge0 sts =

00:00:32 #3008 [Verbose] >     sts

00:00:32 #3009 [Verbose] >     |> seq.take_while_ (fun (particle_state st) _ => st.pos_vec.z >= 0)

00:00:32 #3010 [Verbose] >

00:00:32 #3011 [Verbose] > inl trajectory sts =

00:00:32 #3012 [Verbose] >     sts |> listm.map (fun (particle_state st) => st.pos_vec.y, st.pos_vec.z)

00:00:32 #3013 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5150-5008-55990005bd3c\main.spi

00:00:32 #3014 [Verbose] >

00:00:32 #3015 [Verbose] > ╭─[ 233.60ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #3016 [Verbose] > │ ()                                                                           │

00:00:32 #3017 [Verbose] > │                                                                              │

00:00:32 #3018 [Verbose] > │                                                                              │

00:00:32 #3019 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #3020 [Verbose] >

00:00:32 #3021 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:32 #3022 [Verbose] > // // test

00:00:32 #3023 [Verbose] >

00:00:32 #3024 [Verbose] > inl update_ps (method : numerical_method particle_state d_particle_state) =

00:00:32 #3025 [Verbose] >     newton_second_ps >> method

00:00:32 #3026 [Verbose] >

00:00:32 #3027 [Verbose] > inl position_ps (method : numerical_method particle_state d_particle_state) fs

00:00:32 #3028 [Verbose] > st t =

00:00:32 #3029 [Verbose] >     inl states : i32 -> particle_state = states_ps method fs st

00:00:32 #3030 [Verbose] >     inl dt = (states 1).time - (states 0).time

00:00:32 #3031 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:32 #3032 [Verbose] >     inl st1 = solver' method (newton_second_ps fs) st num_steps

00:00:32 #3033 [Verbose] >     st1.pos_vec

00:00:32 #3034 [Verbose] >

00:00:32 #3035 [Verbose] > inl sun_gravity (st : particle_state) : vec =

00:00:32 #3036 [Verbose] >     inl big_g = 0.0000000000667408

00:00:32 #3037 [Verbose] >     inl sun_mass = 1988480000000000000000000000000

00:00:32 #3038 [Verbose] >     -big_g * sun_mass * st.mass *^ st.pos_vec ^/ magnitude st.pos_vec ** 3

00:00:32 #3039 [Verbose] >

00:00:32 #3040 [Verbose] > inl wind_force v_wind drag rho area (st : particle_state) =

00:00:32 #3041 [Verbose] >     inl v_rel = st.velocity ^-^ v_wind

00:00:32 #3042 [Verbose] >     -0.5 * drag * rho * area * magnitude v_rel *^ v_rel

00:00:32 #3043 [Verbose] >

00:00:32 #3044 [Verbose] > inl rock_state () =

00:00:32 #3045 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:32 #3046 [Verbose] >     particle_state { default_particle_state' with

00:00:32 #3047 [Verbose] >         mass = 2

00:00:32 #3048 [Verbose] >         velocity = vec 3 0 4

00:00:32 #3049 [Verbose] >     }

00:00:32 #3050 [Verbose] >

00:00:32 #3051 [Verbose] > inl halley_update dt =

00:00:32 #3052 [Verbose] >     update_ps (euler_cromer_ps dt) [[ sun_gravity ]]

00:00:32 #3053 [Verbose] >

00:00:32 #3054 [Verbose] > inl halley_initial () =

00:00:32 #3055 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:32 #3056 [Verbose] >     particle_state { default_particle_state' with

00:00:32 #3057 [Verbose] >         mass = 220000000000000

00:00:32 #3058 [Verbose] >         pos_vec = 87660000000 *^ i_hat ()

00:00:32 #3059 [Verbose] >         velocity = 54569 *^ j_hat ()

00:00:32 #3060 [Verbose] >     }

00:00:32 #3061 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5173-7384-74a1ac0c282e\main.spi

00:00:32 #3062 [Verbose] >

00:00:32 #3063 [Verbose] > ╭─[ 243.99ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #3064 [Verbose] > │ ()                                                                           │

00:00:32 #3065 [Verbose] > │                                                                              │

00:00:32 #3066 [Verbose] > │                                                                              │

00:00:32 #3067 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #3068 [Verbose] >

00:00:33 #3069 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:33 #3070 [Verbose] > // // test

00:00:33 #3071 [Verbose] >

00:00:33 #3072 [Verbose] > inl baseball_forces () =

00:00:33 #3073 [Verbose] >     inl area = pi * (0.074 / 2) ** 2

00:00:33 #3074 [Verbose] >     [[

00:00:33 #3075 [Verbose] >         earth_surface_gravity

00:00:33 #3076 [Verbose] >         air_resistance 0.3 1.225 area

00:00:33 #3077 [Verbose] >     ]]

00:00:33 #3078 [Verbose] >

00:00:33 #3079 [Verbose] > inl baseball_trajectory dt v0 theta_deg =

00:00:33 #3080 [Verbose] >     inl theta_rad = theta_deg * pi / 180

00:00:33 #3081 [Verbose] >     inl vy0 = v0 * cos theta_rad

00:00:33 #3082 [Verbose] >     inl vz0 = v0 * sin theta_rad

00:00:33 #3083 [Verbose] >     inl initial_state =

00:00:33 #3084 [Verbose] >         particle_state {

00:00:33 #3085 [Verbose] >             mass = 0.145

00:00:33 #3086 [Verbose] >             charge = 0

00:00:33 #3087 [Verbose] >             time = 0

00:00:33 #3088 [Verbose] >             pos_vec = zero_vec ()

00:00:33 #3089 [Verbose] >             velocity = vec 0 vy0 vz0

00:00:33 #3090 [Verbose] >         }

00:00:33 #3091 [Verbose] >     states_ps (euler_cromer_ps dt) (baseball_forces ()) initial_state

00:00:33 #3092 [Verbose] >     >> Some

00:00:33 #3093 [Verbose] >     |> z_ge0

00:00:33 #3094 [Verbose] >     |> trajectory

00:00:33 #3095 [Verbose] >

00:00:33 #3096 [Verbose] > inl baseball_range dt v0 theta_deg =

00:00:33 #3097 [Verbose] >     baseball_trajectory dt v0 theta_deg

00:00:33 #3098 [Verbose] >     |> listm.fold (fun _ (y, _) => y) 0

00:00:33 #3099 [Verbose] >

00:00:33 #3100 [Verbose] > inl x : a _ f64 = am'.init_series 10 80 1

00:00:33 #3101 [Verbose] > inl y = x |> am.map (baseball_range 0.01 45)

00:00:33 #3102 [Verbose] > "range for a baseball hit at 45 m/s",

00:00:33 #3103 [Verbose] > "angle above horizontal (degrees)",

00:00:33 #3104 [Verbose] > "",

00:00:33 #3105 [Verbose] > ;[[ "horizontal range (m)", x, y ]]

00:00:33 #3106 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5198-9820-918020b65f6c\main.spi

00:00:34 #3107 [Verbose] >

00:00:34 #3108 [Verbose] > ╭─[ 1.51s - return value ]─────────────────────────────────────────────────────╮

00:00:34 #3109 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:34 #3110 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:34 #3111 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:34 #3112 [Verbose] > │ stroke="none"/>                                                              │

00:00:34 #3113 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:34 #3114 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:34 #3115 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:34 #3116 [Verbose] > │ range for a baseball hit at 45 m/s                                           │

00:00:34 #3117 [Verbose] > │ </text>                                                                      │

00:00:34 #3118 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="55" y1="424" x2="55" │

00:00:34 #3119 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #3120 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │

00:00:34 #3121 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #3122 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:34 #3123 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #3124 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │

00:00:34 #3125 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #3126 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="...                         │

00:00:34 #3127 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:34 #3128 [Verbose] >

00:00:34 #3129 [Verbose] > ╭─[ 1.53s - stdout ]───────────────────────────────────────────────────────────╮

00:00:34 #3130 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:34 #3131 [Verbose] > │ and UH0 =                                                                    │

00:00:34 #3132 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:34 #3133 [Verbose] > │ * float * UH0                                                                │

00:00:34 #3134 [Verbose] > │     | UH0_1                                                                  │

00:00:34 #3135 [Verbose] > │ and UH1 =                                                                    │

00:00:34 #3136 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:34 #3137 [Verbose] > │     | UH1_1                                                                  │

00:00:34 #3138 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:34 #3139 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:34 #3140 [Verbose] > │     let v2 : bool = v1 < 71                                                  │

00:00:34 #3141 [Verbose] > │     v2                                                                       │

00:00:34 #3142 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:34 #3143 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:34 #3144 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:34 #3145 [Verbose] > │     v3                                                                       │

00:00:34 #3146 [Verbose] > │ and method4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5  │

00:00:34 #3147 [Verbose] > │ : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float *   │

00:00:34 #3148 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:34 #3149 [Verbose] > │     let v10 : bool = v9 <= 0                                                 │

00:00:34 #3150 [Verbose] > │     if v10 then                                                              │

00:00:34 #3151 [Verbose] > │         struct (v0, v1, v2, v3, v4, v5, v6, v7, v8)                          │

00:00:34 #3152 [Verbose] > │     else                                                                     │

00:00:34 #3153 [Verbose] > │         let v11 : float = v6 * v6                                            │

00:00:34 #3154 [Verbose] > │         let v12 : float = v7 * v7                                            │

00:00:34 #3155 [Verbose] > │         let v13 : float = v11 + v12                                          │

00:00:34 #3156 [Verbose] > │         let v14 : float = v8 * v8                                            │

00:00:34 #3157 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:34 #3158 [Verbose] > │         let v16 : float = sqrt v15                                           │

00:00:34 #3159 [Verbose] > │         let v17 : float = -0.0007902794129829633 * v16                       │

00:00:34 #3160 [Verbose] > │         let v18 : float = v17 * v6                                           │

00:00:34 #3161 [Verbose] > │         let v19 : float = v17 * v7                                           │

00:00:34 #3162 [Verbose] > │         let v20 : float = v17 * v8                                           │

00:00:34 #3163 [Verbose] > │         let v21 : float =  -v1                                               │

00:00:34 #3164 [Verbose] > │         let v22 : float = v21 * 9.80665                                      │

00:00:34 #3165 [Verbose] > │         let v23 : float = v22 * 0.0                                          │

00:00:34 #3166 [Verbose] > │         let v24 : float = v23 + v18                                          │

00:00:34 #3167 [Verbose] > │         let v25 : float = v23 + v19                                          │

00:00:34 #3168 [Verbose] > │         let v26 : float = v22 + v20                                          │

00:00:34 #3169 [Verbose] > │         let v27 : float = v24 / v1                                           │

00:00:34 #3170 [Verbose] > │         let v28 : float = v25 / v1                                           │

00:00:34 #3171 [Verbose] > │         let v29 : float = v26 / v1                                           │

00:00:34 #3172 [Verbose] > │         let v30 : float = 0.01 * v27                                         │

00:00:34 #3173 [Verbose] > │         let v31 : float = 0.01 * v28                                         │

00:00:34 #3174 [Verbose] > │         let v32 : float = 0.01 * v29                                         │

00:00:34 #3175 [Verbose] > │         let v33 : float = v6 + v30                                           │

00:00:34 #3176 [Verbose] > │         let v34 : float = v7 + v31                                           │

00:00:34 #3177 [Verbose] > │         let v35 : float = v8 + v32                                           │

00:00:34 #3178 [Verbose] > │         let v36 : float = v5 + 0.01                                          │

00:00:34 #3179 [Verbose] > │         let v37 : float = 0.01 * v33                                         │

00:00:34 #3180 [Verbose] > │         let v38 : float = 0.01 * v34                                         │

00:00:34 #3181 [Verbose] > │         let v39 : float = 0.01 * v35                                         │

00:00:34 #3182 [Verbose] > │         let v40 : float = v2 + v37                                           │

00:00:34 #3183 [Verbose] > │         let v41 : float = v3 + v38                                           │

00:00:34 #3184 [Verbose] > │         let v42 : float = v4 + v39                                           │

00:00:34 #3185 [Verbose] > │         let v43 : int32 = v9 - 1                                             │

00:00:34 #3186 [Verbose] > │         method4(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43)              │

00:00:34 #3187 [Verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:34 #3188 [Verbose] > │     match v0 with                                                            │

00:00:34 #3189 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:34 #3190 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:34 #3191 [Verbose] > │         method5(v11, v12)                                                    │

00:00:34 #3192 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:34 #3193 [Verbose] > │         v1                                                                   │

00:00:34 #3194 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 =           │

00:00:34 #3195 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:34 #3196 [Verbose] > │     let v5 : float = 0.145                                                   │

00:00:34 #3197 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:34 #3198 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:34 #3199 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:34 #3200 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:34 #3201 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:34 #3202 [Verbose] > │     let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 :    │

00:00:34 #3203 [Verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method4(v4, v5, │

00:00:34 #3204 [Verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3)                                             │

00:00:34 #3205 [Verbose] > │     let v20 : bool = v15 >= 0.0                                              │

00:00:34 #3206 [Verbose] > │     if v20 then                                                              │

00:00:34 #3207 [Verbose] > │         let v21 : UH0 = UH0_0(v11, v12, v13, v14, v15, v16, v17, v18, v19,   │

00:00:34 #3208 [Verbose] > │ v2)                                                                          │

00:00:34 #3209 [Verbose] > │         let v22 : int32 = v3 + 1                                             │

00:00:34 #3210 [Verbose] > │         method3(v0, v1, v21, v22)                                            │

00:00:34 #3211 [Verbose] > │     else                                                                     │

00:00:34 #3212 [Verbose] > │         let v24 : UH0 = UH0_1                                                │

00:00:34 #3213 [Verbose] > │         method5(v2, v24)                                                     │

00:00:34 #3214 [Verbose] > │ and method6 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:34 #3215 [Verbose] > │     match v0 with                                                            │

00:00:34 #3216 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:34 #3217 [Verbose] > │         let v12 : UH1 = method6(v11, v1)                                     │

00:00:34 #3218 [Verbose] > │         UH1_0(v5, v6, v12)                                                   │

00:00:34 #3219 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:34 #3220 [Verbose] > │         v1                                                                   │

00:00:34 #3221 [Verbose] > │ and method7 (v0 : UH1, v1 : float) : float =                                 │

00:00:34 #3222 [Verbose] > │     match v0 with                                                            │

00:00:34 #3223 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:34 #3224 [Verbose] > │         method7(v4, v2)                                                      │

00:00:34 #3225 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:34 #3226 [Verbose] > │         v1                                                                   │

00:00:34 #3227 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:34 #3228 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:34 #3229 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (71)                       │

00:00:34 #3230 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:34 #3231 [Verbose] > │     while method1(v1) do                                                     │

00:00:34 #3232 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:34 #3233 [Verbose] > │         let v4 : float = float v3                                            │

00:00:34 #3234 [Verbose] > │         let v5 : float = 10.0 + v4                                           │

00:00:34 #3235 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:34 #3236 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:34 #3237 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:34 #3238 [Verbose] > │         ()                                                                   │

00:00:34 #3239 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:34 #3240 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:34 #3241 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:34 #3242 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:34 #3243 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:34 #3244 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:34 #3245 [Verbose] > │         let v13 : float = v12 * 3.141592653589793                            │

00:00:34 #3246 [Verbose] > │         let v14 : float = v13 / 180.0                                        │

00:00:34 #3247 [Verbose] > │         let v15 : float = cos v14                                            │

00:00:34 #3248 [Verbose] > │         let v16 : float = 45.0 * v15                                         │

00:00:34 #3249 [Verbose] > │         let v17 : float = sin v14                                            │

00:00:34 #3250 [Verbose] > │         let v18 : float = 45.0 * v17                                         │

00:00:34 #3251 [Verbose] > │         let v19 : UH0 = UH0_1                                                │

00:00:34 #3252 [Verbose] > │         let v20 : int32 = 0                                                  │

00:00:34 #3253 [Verbose] > │         let v21 : UH0 = method3(v16, v18, v19, v20)                          │

00:00:34 #3254 [Verbose] > │         let v22 : UH1 = UH1_1                                                │

00:00:34 #3255 [Verbose] > │         let v23 : UH1 = method6(v21, v22)                                    │

00:00:34 #3256 [Verbose] > │         let v24 : float = 0.0                                                │

00:00:34 #3257 [Verbose] > │         let v25 : float = method7(v23, v24)                                  │

00:00:34 #3258 [Verbose] > │         v8.[int v11] <- v25                                                  │

00:00:34 #3259 [Verbose] > │         let v26 : int32 = v11 + 1                                            │

00:00:34 #3260 [Verbose] > │         v9.l0 <- v26                                                         │

00:00:34 #3261 [Verbose] > │         ()                                                                   │

00:00:34 #3262 [Verbose] > │     let v27 : string = "horizontal range (m)"                                │

00:00:34 #3263 [Verbose] > │     let v28 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:34 #3264 [Verbose] > │ (v27, v0, v8)|]                                                              │

00:00:34 #3265 [Verbose] > │     let v29 : string = "range for a baseball hit at 45 m/s"                  │

00:00:34 #3266 [Verbose] > │     let v30 : string = "angle above horizontal (degrees)"                    │

00:00:34 #3267 [Verbose] > │     let v31 : string = ""                                                    │

00:00:34 #3268 [Verbose] > │     struct (v29, v30, v31, v28)                                              │

00:00:34 #3269 [Verbose] > │ method0()                                                                    │

00:00:34 #3270 [Verbose] > │                                                                              │

00:00:34 #3271 [Verbose] > │                                                                              │

00:00:34 #3272 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:34 #3273 [Verbose] >

00:00:34 #3274 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:34 #3275 [Verbose] > // // test

00:00:34 #3276 [Verbose] >

00:00:34 #3277 [Verbose] > inl best_angle (min, max) =

00:00:34 #3278 [Verbose] >     let rec loop theta_deg (best_range, best_theta_deg) =

00:00:34 #3279 [Verbose] >         if theta_deg > max

00:00:34 #3280 [Verbose] >         then best_range, best_theta_deg

00:00:34 #3281 [Verbose] >         else

00:00:34 #3282 [Verbose] >             inl range = baseball_range 0.01 45 theta_deg

00:00:34 #3283 [Verbose] >             loop

00:00:34 #3284 [Verbose] >                 (theta_deg + 1)

00:00:34 #3285 [Verbose] >                 (if range > best_range

00:00:34 #3286 [Verbose] >                     then range, theta_deg

00:00:34 #3287 [Verbose] >                     else best_range, best_theta_deg)

00:00:34 #3288 [Verbose] >     loop min (0f64, min)

00:00:34 #3289 [Verbose] >

00:00:34 #3290 [Verbose] > best_angle (30f64, 60f64)

00:00:34 #3291 [Verbose] > |> _equal (116.77499158246208, 41)

00:00:34 #3292 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5358-5897-54339e1531ef\main.spi

00:00:35 #3293 [Verbose] >

00:00:35 #3294 [Verbose] > ╭─[ 912.49ms - stdout ]────────────────────────────────────────────────────────╮

00:00:35 #3295 [Verbose] > │ type UH0 =                                                                   │

00:00:35 #3296 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:35 #3297 [Verbose] > │ * float * UH0                                                                │

00:00:35 #3298 [Verbose] > │     | UH0_1                                                                  │

00:00:35 #3299 [Verbose] > │ and UH1 =                                                                    │

00:00:35 #3300 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:35 #3301 [Verbose] > │     | UH1_1                                                                  │

00:00:35 #3302 [Verbose] > │ let rec method3 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, │

00:00:35 #3303 [Verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float  │

00:00:35 #3304 [Verbose] > │ * float * float * float * float * float * float * float * float) =           │

00:00:35 #3305 [Verbose] > │     let v10 : bool = v9 <= 0                                                 │

00:00:35 #3306 [Verbose] > │     if v10 then                                                              │

00:00:35 #3307 [Verbose] > │         struct (v0, v1, v2, v3, v4, v5, v6, v7, v8)                          │

00:00:35 #3308 [Verbose] > │     else                                                                     │

00:00:35 #3309 [Verbose] > │         let v11 : float = v6 * v6                                            │

00:00:35 #3310 [Verbose] > │         let v12 : float = v7 * v7                                            │

00:00:35 #3311 [Verbose] > │         let v13 : float = v11 + v12                                          │

00:00:35 #3312 [Verbose] > │         let v14 : float = v8 * v8                                            │

00:00:35 #3313 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:35 #3314 [Verbose] > │         let v16 : float = sqrt v15                                           │

00:00:35 #3315 [Verbose] > │         let v17 : float = -0.0007902794129829633 * v16                       │

00:00:35 #3316 [Verbose] > │         let v18 : float = v17 * v6                                           │

00:00:35 #3317 [Verbose] > │         let v19 : float = v17 * v7                                           │

00:00:35 #3318 [Verbose] > │         let v20 : float = v17 * v8                                           │

00:00:35 #3319 [Verbose] > │         let v21 : float =  -v1                                               │

00:00:35 #3320 [Verbose] > │         let v22 : float = v21 * 9.80665                                      │

00:00:35 #3321 [Verbose] > │         let v23 : float = v22 * 0.0                                          │

00:00:35 #3322 [Verbose] > │         let v24 : float = v23 + v18                                          │

00:00:35 #3323 [Verbose] > │         let v25 : float = v23 + v19                                          │

00:00:35 #3324 [Verbose] > │         let v26 : float = v22 + v20                                          │

00:00:35 #3325 [Verbose] > │         let v27 : float = v24 / v1                                           │

00:00:35 #3326 [Verbose] > │         let v28 : float = v25 / v1                                           │

00:00:35 #3327 [Verbose] > │         let v29 : float = v26 / v1                                           │

00:00:35 #3328 [Verbose] > │         let v30 : float = 0.01 * v27                                         │

00:00:35 #3329 [Verbose] > │         let v31 : float = 0.01 * v28                                         │

00:00:35 #3330 [Verbose] > │         let v32 : float = 0.01 * v29                                         │

00:00:35 #3331 [Verbose] > │         let v33 : float = v6 + v30                                           │

00:00:35 #3332 [Verbose] > │         let v34 : float = v7 + v31                                           │

00:00:35 #3333 [Verbose] > │         let v35 : float = v8 + v32                                           │

00:00:35 #3334 [Verbose] > │         let v36 : float = v5 + 0.01                                          │

00:00:35 #3335 [Verbose] > │         let v37 : float = 0.01 * v33                                         │

00:00:35 #3336 [Verbose] > │         let v38 : float = 0.01 * v34                                         │

00:00:35 #3337 [Verbose] > │         let v39 : float = 0.01 * v35                                         │

00:00:35 #3338 [Verbose] > │         let v40 : float = v2 + v37                                           │

00:00:35 #3339 [Verbose] > │         let v41 : float = v3 + v38                                           │

00:00:35 #3340 [Verbose] > │         let v42 : float = v4 + v39                                           │

00:00:35 #3341 [Verbose] > │         let v43 : int32 = v9 - 1                                             │

00:00:35 #3342 [Verbose] > │         method3(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43)              │

00:00:35 #3343 [Verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:35 #3344 [Verbose] > │     match v0 with                                                            │

00:00:35 #3345 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:35 #3346 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:35 #3347 [Verbose] > │         method4(v11, v12)                                                    │

00:00:35 #3348 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:35 #3349 [Verbose] > │         v1                                                                   │

00:00:35 #3350 [Verbose] > │ and method2 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 =           │

00:00:35 #3351 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:35 #3352 [Verbose] > │     let v5 : float = 0.145                                                   │

00:00:35 #3353 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:35 #3354 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:35 #3355 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:35 #3356 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:35 #3357 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:35 #3358 [Verbose] > │     let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 :    │

00:00:35 #3359 [Verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method3(v4, v5, │

00:00:35 #3360 [Verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3)                                             │

00:00:35 #3361 [Verbose] > │     let v20 : bool = v15 >= 0.0                                              │

00:00:35 #3362 [Verbose] > │     if v20 then                                                              │

00:00:35 #3363 [Verbose] > │         let v21 : UH0 = UH0_0(v11, v12, v13, v14, v15, v16, v17, v18, v19,   │

00:00:35 #3364 [Verbose] > │ v2)                                                                          │

00:00:35 #3365 [Verbose] > │         let v22 : int32 = v3 + 1                                             │

00:00:35 #3366 [Verbose] > │         method2(v0, v1, v21, v22)                                            │

00:00:35 #3367 [Verbose] > │     else                                                                     │

00:00:35 #3368 [Verbose] > │         let v24 : UH0 = UH0_1                                                │

00:00:35 #3369 [Verbose] > │         method4(v2, v24)                                                     │

00:00:35 #3370 [Verbose] > │ and method5 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:35 #3371 [Verbose] > │     match v0 with                                                            │

00:00:35 #3372 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:35 #3373 [Verbose] > │         let v12 : UH1 = method5(v11, v1)                                     │

00:00:35 #3374 [Verbose] > │         UH1_0(v5, v6, v12)                                                   │

00:00:35 #3375 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:35 #3376 [Verbose] > │         v1                                                                   │

00:00:35 #3377 [Verbose] > │ and method6 (v0 : UH1, v1 : float) : float =                                 │

00:00:35 #3378 [Verbose] > │     match v0 with                                                            │

00:00:35 #3379 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:35 #3380 [Verbose] > │         method6(v4, v2)                                                      │

00:00:35 #3381 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:35 #3382 [Verbose] > │         v1                                                                   │

00:00:35 #3383 [Verbose] > │ and method1 (v0 : float, v1 : float, v2 : float) : struct (float * float) =  │

00:00:35 #3384 [Verbose] > │     let v3 : bool = v0 > 60.0                                                │

00:00:35 #3385 [Verbose] > │     if v3 then                                                               │

00:00:35 #3386 [Verbose] > │         struct (v2, v1)                                                      │

00:00:35 #3387 [Verbose] > │     else                                                                     │

00:00:35 #3388 [Verbose] > │         let v4 : float = v0 * 3.141592653589793                              │

00:00:35 #3389 [Verbose] > │         let v5 : float = v4 / 180.0                                          │

00:00:35 #3390 [Verbose] > │         let v6 : float = cos v5                                              │

00:00:35 #3391 [Verbose] > │         let v7 : float = 45.0 * v6                                           │

00:00:35 #3392 [Verbose] > │         let v8 : float = sin v5                                              │

00:00:35 #3393 [Verbose] > │         let v9 : float = 45.0 * v8                                           │

00:00:35 #3394 [Verbose] > │         let v10 : UH0 = UH0_1                                                │

00:00:35 #3395 [Verbose] > │         let v11 : int32 = 0                                                  │

00:00:35 #3396 [Verbose] > │         let v12 : UH0 = method2(v7, v9, v10, v11)                            │

00:00:35 #3397 [Verbose] > │         let v13 : UH1 = UH1_1                                                │

00:00:35 #3398 [Verbose] > │         let v14 : UH1 = method5(v12, v13)                                    │

00:00:35 #3399 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:35 #3400 [Verbose] > │         let v16 : float = method6(v14, v15)                                  │

00:00:35 #3401 [Verbose] > │         let v17 : float = v0 + 1.0                                           │

00:00:35 #3402 [Verbose] > │         let v18 : bool = v16 > v2                                            │

00:00:35 #3403 [Verbose] > │         let struct (v19 : float, v20 : float) =                              │

00:00:35 #3404 [Verbose] > │             if v18 then                                                      │

00:00:35 #3405 [Verbose] > │                 struct (v16, v0)                                             │

00:00:35 #3406 [Verbose] > │             else                                                             │

00:00:35 #3407 [Verbose] > │                 struct (v2, v1)                                              │

00:00:35 #3408 [Verbose] > │         method1(v17, v20, v19)                                               │

00:00:35 #3409 [Verbose] > │ and method0 () : unit =                                                      │

00:00:35 #3410 [Verbose] > │     let v0 : float = 30.0                                                    │

00:00:35 #3411 [Verbose] > │     let v1 : float = 0.0                                                     │

00:00:35 #3412 [Verbose] > │     let v2 : float = 30.0                                                    │

00:00:35 #3413 [Verbose] > │     let struct (v3 : float, v4 : float) = method1(v0, v2, v1)                │

00:00:35 #3414 [Verbose] > │     let v5 : bool = v3 = 116.77499158246208                                  │

00:00:35 #3415 [Verbose] > │     let v7 : bool =                                                          │

00:00:35 #3416 [Verbose] > │         if v5 then                                                           │

00:00:35 #3417 [Verbose] > │             let v6 : bool = v4 = 41.0                                        │

00:00:35 #3418 [Verbose] > │             v6                                                               │

00:00:35 #3419 [Verbose] > │         else                                                                 │

00:00:35 #3420 [Verbose] > │             false                                                            │

00:00:35 #3421 [Verbose] > │     let v8 : string = $"_equal / actual: %A{struct (v3, v4)} / expected:     │

00:00:35 #3422 [Verbose] > │ %A{struct (116.77499158246208, 41.0)}"                                       │

00:00:35 #3423 [Verbose] > │     let v9 : bool = v7 = false                                               │

00:00:35 #3424 [Verbose] > │     if v9 then                                                               │

00:00:35 #3425 [Verbose] > │         failwith<unit> v8                                                    │

00:00:35 #3426 [Verbose] > │ method0()                                                                    │

00:00:35 #3427 [Verbose] > │                                                                              │

00:00:35 #3428 [Verbose] > │                                                                              │

00:00:35 #3429 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:35 #3430 [Verbose] >

00:00:35 #3431 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:35 #3432 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:35 #3433 [Verbose] > │ ## relativity_ps                                                             │

00:00:35 #3434 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:35 #3435 [Verbose] >

00:00:35 #3436 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:35 #3437 [Verbose] > inl relativity_ps fs (st : particle_state) =

00:00:35 #3438 [Verbose] >     inl f_net = fs |> listm.map (fun f => f st) |> sum_vec

00:00:35 #3439 [Verbose] >     inl c = 299792458

00:00:35 #3440 [Verbose] >     inl u = st.velocity ^/ c

00:00:35 #3441 [Verbose] >     inl acc = sqrt (1 - (u <.> u)) *^ (f_net ^-^ (f_net <.> u) *^ u) ^/ st.mass

00:00:35 #3442 [Verbose] >     d_particle_state {

00:00:35 #3443 [Verbose] >         dmdt = 0

00:00:35 #3444 [Verbose] >         dqdt = 0

00:00:35 #3445 [Verbose] >         dtdt = 1

00:00:35 #3446 [Verbose] >         drdt = st.velocity

00:00:35 #3447 [Verbose] >         dvdt = acc

00:00:35 #3448 [Verbose] >     }

00:00:35 #3449 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5456-5629-5431daf157dd\main.spi

00:00:35 #3450 [Verbose] >

00:00:35 #3451 [Verbose] > ╭─[ 196.05ms - stdout ]────────────────────────────────────────────────────────╮

00:00:35 #3452 [Verbose] > │ ()                                                                           │

00:00:35 #3453 [Verbose] > │                                                                              │

00:00:35 #3454 [Verbose] > │                                                                              │

00:00:35 #3455 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:35 #3456 [Verbose] >

00:00:35 #3457 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:35 #3458 [Verbose] > // // test

00:00:35 #3459 [Verbose] >

00:00:35 #3460 [Verbose] > inl year = 365.25 * 24 * 60 * 60

00:00:35 #3461 [Verbose] > inl c = 299792458

00:00:35 #3462 [Verbose] > inl ~method = runge_kutta_4 100000

00:00:35 #3463 [Verbose] > inl forces = [[ fun _ => 10 *^ i_hat () ]]

00:00:35 #3464 [Verbose] > inl (particle_state default_particle_state') = default_particle_state ()

00:00:35 #3465 [Verbose] > inl initial_state =

00:00:35 #3466 [Verbose] >     particle_state { default_particle_state' with

00:00:35 #3467 [Verbose] >         mass = 1

00:00:35 #3468 [Verbose] >     }

00:00:35 #3469 [Verbose] >

00:00:35 #3470 [Verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state

00:00:35 #3471 [Verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state

00:00:35 #3472 [Verbose] >

00:00:35 #3473 [Verbose] > inl newton_x, newton_y =

00:00:35 #3474 [Verbose] >     newton_states

00:00:35 #3475 [Verbose] >     >> Some

00:00:35 #3476 [Verbose] >     |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)

00:00:35 #3477 [Verbose] >     |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)

00:00:35 #3478 [Verbose] >     |> listm'.unzip

00:00:35 #3479 [Verbose] >

00:00:35 #3480 [Verbose] > inl _, relativity_y =

00:00:35 #3481 [Verbose] >     relativity_states

00:00:35 #3482 [Verbose] >     >> Some

00:00:35 #3483 [Verbose] >     |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)

00:00:35 #3484 [Verbose] >     |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)

00:00:35 #3485 [Verbose] >     |> listm'.unzip

00:00:35 #3486 [Verbose] >

00:00:35 #3487 [Verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray

00:00:35 #3488 [Verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray

00:00:35 #3489 [Verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray

00:00:35 #3490 [Verbose] >

00:00:35 #3491 [Verbose] > "response to a constant force",

00:00:35 #3492 [Verbose] > "time (years)",

00:00:35 #3493 [Verbose] > "velocity (multiples of c)",

00:00:35 #3494 [Verbose] > ;[[

00:00:35 #3495 [Verbose] >     "newtonian", newton_x, newton_y

00:00:35 #3496 [Verbose] >     "relativistic", newton_x, relativity_y

00:00:35 #3497 [Verbose] > ]]

00:00:35 #3498 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5475-7596-700bcf3d6158\main.spi

00:00:36 #3499 [Verbose] >

00:00:36 #3500 [Verbose] > ╭─[ 754.48ms - return value ]──────────────────────────────────────────────────╮

00:00:36 #3501 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:36 #3502 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:36 #3503 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:36 #3504 [Verbose] > │ stroke="none"/>                                                              │

00:00:36 #3505 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:36 #3506 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:36 #3507 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:36 #3508 [Verbose] > │ response to a constant force                                                 │

00:00:36 #3509 [Verbose] > │ </text>                                                                      │

00:00:36 #3510 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:36 #3511 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #3512 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:36 #3513 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #3514 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:36 #3515 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #3516 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:36 #3517 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #3518 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:36 #3519 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:36 #3520 [Verbose] >

00:00:36 #3521 [Verbose] > ╭─[ 768.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:36 #3522 [Verbose] > │ type UH0 =                                                                   │

00:00:36 #3523 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:36 #3524 [Verbose] > │ * float * UH0                                                                │

00:00:36 #3525 [Verbose] > │     | UH0_1                                                                  │

00:00:36 #3526 [Verbose] > │ and UH1 =                                                                    │

00:00:36 #3527 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:36 #3528 [Verbose] > │     | UH1_1                                                                  │

00:00:36 #3529 [Verbose] > │ and UH2 =                                                                    │

00:00:36 #3530 [Verbose] > │     | UH2_0 of float * UH2                                                   │

00:00:36 #3531 [Verbose] > │     | UH2_1                                                                  │

00:00:36 #3532 [Verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float *      │

00:00:36 #3533 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:36 #3534 [Verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3  │

00:00:36 #3535 [Verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 :    │

00:00:36 #3536 [Verbose] > │ float) : struct (float * float * float * float * float * float * float *     │

00:00:36 #3537 [Verbose] > │ float * float) =                                                             │

00:00:36 #3538 [Verbose] > │     let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 :    │

00:00:36 #3539 [Verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1,  │

00:00:36 #3540 [Verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9)                                              │

00:00:36 #3541 [Verbose] > │     let v19 : float = v15 * 50000.0                                          │

00:00:36 #3542 [Verbose] > │     let v20 : float = v6 + v19                                               │

00:00:36 #3543 [Verbose] > │     let v21 : float = 50000.0 * v12                                          │

00:00:36 #3544 [Verbose] > │     let v22 : float = 50000.0 * v13                                          │

00:00:36 #3545 [Verbose] > │     let v23 : float = 50000.0 * v14                                          │

00:00:36 #3546 [Verbose] > │     let v24 : float = v3 + v21                                               │

00:00:36 #3547 [Verbose] > │     let v25 : float = v4 + v22                                               │

00:00:36 #3548 [Verbose] > │     let v26 : float = v5 + v23                                               │

00:00:36 #3549 [Verbose] > │     let v27 : float = 50000.0 * v16                                          │

00:00:36 #3550 [Verbose] > │     let v28 : float = 50000.0 * v17                                          │

00:00:36 #3551 [Verbose] > │     let v29 : float = 50000.0 * v18                                          │

00:00:36 #3552 [Verbose] > │     let v30 : float = v7 + v27                                               │

00:00:36 #3553 [Verbose] > │     let v31 : float = v8 + v28                                               │

00:00:36 #3554 [Verbose] > │     let v32 : float = v9 + v29                                               │

00:00:36 #3555 [Verbose] > │     let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 :    │

00:00:36 #3556 [Verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1,  │

00:00:36 #3557 [Verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32)                                       │

00:00:36 #3558 [Verbose] > │     let v42 : float = v38 * 50000.0                                          │

00:00:36 #3559 [Verbose] > │     let v43 : float = v6 + v42                                               │

00:00:36 #3560 [Verbose] > │     let v44 : float = 50000.0 * v35                                          │

00:00:36 #3561 [Verbose] > │     let v45 : float = 50000.0 * v36                                          │

00:00:36 #3562 [Verbose] > │     let v46 : float = 50000.0 * v37                                          │

00:00:36 #3563 [Verbose] > │     let v47 : float = v3 + v44                                               │

00:00:36 #3564 [Verbose] > │     let v48 : float = v4 + v45                                               │

00:00:36 #3565 [Verbose] > │     let v49 : float = v5 + v46                                               │

00:00:36 #3566 [Verbose] > │     let v50 : float = 50000.0 * v39                                          │

00:00:36 #3567 [Verbose] > │     let v51 : float = 50000.0 * v40                                          │

00:00:36 #3568 [Verbose] > │     let v52 : float = 50000.0 * v41                                          │

00:00:36 #3569 [Verbose] > │     let v53 : float = v7 + v50                                               │

00:00:36 #3570 [Verbose] > │     let v54 : float = v8 + v51                                               │

00:00:36 #3571 [Verbose] > │     let v55 : float = v9 + v52                                               │

00:00:36 #3572 [Verbose] > │     let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 :    │

00:00:36 #3573 [Verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1,  │

00:00:36 #3574 [Verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55)                                       │

00:00:36 #3575 [Verbose] > │     let v65 : float = v61 * 100000.0                                         │

00:00:36 #3576 [Verbose] > │     let v66 : float = v6 + v65                                               │

00:00:36 #3577 [Verbose] > │     let v67 : float = 100000.0 * v58                                         │

00:00:36 #3578 [Verbose] > │     let v68 : float = 100000.0 * v59                                         │

00:00:36 #3579 [Verbose] > │     let v69 : float = 100000.0 * v60                                         │

00:00:36 #3580 [Verbose] > │     let v70 : float = v3 + v67                                               │

00:00:36 #3581 [Verbose] > │     let v71 : float = v4 + v68                                               │

00:00:36 #3582 [Verbose] > │     let v72 : float = v5 + v69                                               │

00:00:36 #3583 [Verbose] > │     let v73 : float = 100000.0 * v62                                         │

00:00:36 #3584 [Verbose] > │     let v74 : float = 100000.0 * v63                                         │

00:00:36 #3585 [Verbose] > │     let v75 : float = 100000.0 * v64                                         │

00:00:36 #3586 [Verbose] > │     let v76 : float = v7 + v73                                               │

00:00:36 #3587 [Verbose] > │     let v77 : float = v8 + v74                                               │

00:00:36 #3588 [Verbose] > │     let v78 : float = v9 + v75                                               │

00:00:36 #3589 [Verbose] > │     let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 :    │

00:00:36 #3590 [Verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1,  │

00:00:36 #3591 [Verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78)                                       │

00:00:36 #3592 [Verbose] > │     let v88 : float = v10 + v33                                              │

00:00:36 #3593 [Verbose] > │     let v89 : float = v11 + v34                                              │

00:00:36 #3594 [Verbose] > │     let v90 : float = v15 + v38                                              │

00:00:36 #3595 [Verbose] > │     let v91 : float = v12 + v35                                              │

00:00:36 #3596 [Verbose] > │     let v92 : float = v13 + v36                                              │

00:00:36 #3597 [Verbose] > │     let v93 : float = v14 + v37                                              │

00:00:36 #3598 [Verbose] > │     let v94 : float = v16 + v39                                              │

00:00:36 #3599 [Verbose] > │     let v95 : float = v17 + v40                                              │

00:00:36 #3600 [Verbose] > │     let v96 : float = v18 + v41                                              │

00:00:36 #3601 [Verbose] > │     let v97 : float = v88 + v33                                              │

00:00:36 #3602 [Verbose] > │     let v98 : float = v89 + v34                                              │

00:00:36 #3603 [Verbose] > │     let v99 : float = v90 + v38                                              │

00:00:36 #3604 [Verbose] > │     let v100 : float = v91 + v35                                             │

00:00:36 #3605 [Verbose] > │     let v101 : float = v92 + v36                                             │

00:00:36 #3606 [Verbose] > │     let v102 : float = v93 + v37                                             │

00:00:36 #3607 [Verbose] > │     let v103 : float = v94 + v39                                             │

00:00:36 #3608 [Verbose] > │     let v104 : float = v95 + v40                                             │

00:00:36 #3609 [Verbose] > │     let v105 : float = v96 + v41                                             │

00:00:36 #3610 [Verbose] > │     let v106 : float = v97 + v56                                             │

00:00:36 #3611 [Verbose] > │     let v107 : float = v98 + v57                                             │

00:00:36 #3612 [Verbose] > │     let v108 : float = v99 + v61                                             │

00:00:36 #3613 [Verbose] > │     let v109 : float = v100 + v58                                            │

00:00:36 #3614 [Verbose] > │     let v110 : float = v101 + v59                                            │

00:00:36 #3615 [Verbose] > │     let v111 : float = v102 + v60                                            │

00:00:36 #3616 [Verbose] > │     let v112 : float = v103 + v62                                            │

00:00:36 #3617 [Verbose] > │     let v113 : float = v104 + v63                                            │

00:00:36 #3618 [Verbose] > │     let v114 : float = v105 + v64                                            │

00:00:36 #3619 [Verbose] > │     let v115 : float = v106 + v56                                            │

00:00:36 #3620 [Verbose] > │     let v116 : float = v107 + v57                                            │

00:00:36 #3621 [Verbose] > │     let v117 : float = v108 + v61                                            │

00:00:36 #3622 [Verbose] > │     let v118 : float = v109 + v58                                            │

00:00:36 #3623 [Verbose] > │     let v119 : float = v110 + v59                                            │

00:00:36 #3624 [Verbose] > │     let v120 : float = v111 + v60                                            │

00:00:36 #3625 [Verbose] > │     let v121 : float = v112 + v62                                            │

00:00:36 #3626 [Verbose] > │     let v122 : float = v113 + v63                                            │

00:00:36 #3627 [Verbose] > │     let v123 : float = v114 + v64                                            │

00:00:36 #3628 [Verbose] > │     let v124 : float = v115 + v79                                            │

00:00:36 #3629 [Verbose] > │     let v125 : float = v116 + v80                                            │

00:00:36 #3630 [Verbose] > │     let v126 : float = v117 + v84                                            │

00:00:36 #3631 [Verbose] > │     let v127 : float = v118 + v81                                            │

00:00:36 #3632 [Verbose] > │     let v128 : float = v119 + v82                                            │

00:00:36 #3633 [Verbose] > │     let v129 : float = v120 + v83                                            │

00:00:36 #3634 [Verbose] > │     let v130 : float = v121 + v85                                            │

00:00:36 #3635 [Verbose] > │     let v131 : float = v122 + v86                                            │

00:00:36 #3636 [Verbose] > │     let v132 : float = v123 + v87                                            │

00:00:36 #3637 [Verbose] > │     let v133 : float = v126 * 16666.666666666668                             │

00:00:36 #3638 [Verbose] > │     let v134 : float = v6 + v133                                             │

00:00:36 #3639 [Verbose] > │     let v135 : float = 16666.666666666668 * v127                             │

00:00:36 #3640 [Verbose] > │     let v136 : float = 16666.666666666668 * v128                             │

00:00:36 #3641 [Verbose] > │     let v137 : float = 16666.666666666668 * v129                             │

00:00:36 #3642 [Verbose] > │     let v138 : float = v3 + v135                                             │

00:00:36 #3643 [Verbose] > │     let v139 : float = v4 + v136                                             │

00:00:36 #3644 [Verbose] > │     let v140 : float = v5 + v137                                             │

00:00:36 #3645 [Verbose] > │     let v141 : float = 16666.666666666668 * v130                             │

00:00:36 #3646 [Verbose] > │     let v142 : float = 16666.666666666668 * v131                             │

00:00:36 #3647 [Verbose] > │     let v143 : float = 16666.666666666668 * v132                             │

00:00:36 #3648 [Verbose] > │     let v144 : float = v7 + v141                                             │

00:00:36 #3649 [Verbose] > │     let v145 : float = v8 + v142                                             │

00:00:36 #3650 [Verbose] > │     let v146 : float = v9 + v143                                             │

00:00:36 #3651 [Verbose] > │     struct (v1, v2, v138, v139, v140, v134, v144, v145, v146)                │

00:00:36 #3652 [Verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │

00:00:36 #3653 [Verbose] > │ * float * float * float) -> struct (float * float * float * float * float *  │

00:00:36 #3654 [Verbose] > │ float * float * float * float))) : (struct (float * float * float * float *  │

00:00:36 #3655 [Verbose] > │ float * float * float * float * float) -> struct (float * float * float *    │

00:00:36 #3656 [Verbose] > │ float * float * float * float * float * float)) =                            │

00:00:36 #3657 [Verbose] > │     closure1(v0)                                                             │

00:00:36 #3658 [Verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:36 #3659 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:36 #3660 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:36 #3661 [Verbose] > │     let v9 : float = 10.0 / v1                                               │

00:00:36 #3662 [Verbose] > │     let v10 : float = 0.0 / v1                                               │

00:00:36 #3663 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v9, v10, v10)                         │

00:00:36 #3664 [Verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:36 #3665 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:36 #3666 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:36 #3667 [Verbose] > │     let v9 : float = v6 / 299792458.0                                        │

00:00:36 #3668 [Verbose] > │     let v10 : float = v7 / 299792458.0                                       │

00:00:36 #3669 [Verbose] > │     let v11 : float = v8 / 299792458.0                                       │

00:00:36 #3670 [Verbose] > │     let v12 : float = v9 * v9                                                │

00:00:36 #3671 [Verbose] > │     let v13 : float = v10 * v10                                              │

00:00:36 #3672 [Verbose] > │     let v14 : float = v12 + v13                                              │

00:00:36 #3673 [Verbose] > │     let v15 : float = v11 * v11                                              │

00:00:36 #3674 [Verbose] > │     let v16 : float = v14 + v15                                              │

00:00:36 #3675 [Verbose] > │     let v17 : float = 1.0 - v16                                              │

00:00:36 #3676 [Verbose] > │     let v18 : float = sqrt v17                                               │

00:00:36 #3677 [Verbose] > │     let v19 : float = 10.0 * v9                                              │

00:00:36 #3678 [Verbose] > │     let v20 : float = 0.0 * v10                                              │

00:00:36 #3679 [Verbose] > │     let v21 : float = v19 + v20                                              │

00:00:36 #3680 [Verbose] > │     let v22 : float = 0.0 * v11                                              │

00:00:36 #3681 [Verbose] > │     let v23 : float = v21 + v22                                              │

00:00:36 #3682 [Verbose] > │     let v24 : float = v23 * v9                                               │

00:00:36 #3683 [Verbose] > │     let v25 : float = v23 * v10                                              │

00:00:36 #3684 [Verbose] > │     let v26 : float = v23 * v11                                              │

00:00:36 #3685 [Verbose] > │     let v27 : float = -1.0 * v24                                             │

00:00:36 #3686 [Verbose] > │     let v28 : float = -1.0 * v25                                             │

00:00:36 #3687 [Verbose] > │     let v29 : float = -1.0 * v26                                             │

00:00:36 #3688 [Verbose] > │     let v30 : float = 10.0 + v27                                             │

00:00:36 #3689 [Verbose] > │     let v31 : float = v18 * v30                                              │

00:00:36 #3690 [Verbose] > │     let v32 : float = v18 * v28                                              │

00:00:36 #3691 [Verbose] > │     let v33 : float = v18 * v29                                              │

00:00:36 #3692 [Verbose] > │     let v34 : float = v31 / v1                                               │

00:00:36 #3693 [Verbose] > │     let v35 : float = v32 / v1                                               │

00:00:36 #3694 [Verbose] > │     let v36 : float = v33 / v1                                               │

00:00:36 #3695 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v34, v35, v36)                        │

00:00:36 #3696 [Verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float *   │

00:00:36 #3697 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:36 #3698 [Verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 :    │

00:00:36 #3699 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 :     │

00:00:36 #3700 [Verbose] > │ int32) : struct (float * float * float * float * float * float * float *     │

00:00:36 #3701 [Verbose] > │ float * float) =                                                             │

00:00:36 #3702 [Verbose] > │     let v11 : bool = v10 <= 0                                                │

00:00:36 #3703 [Verbose] > │     if v11 then                                                              │

00:00:36 #3704 [Verbose] > │         struct (v1, v2, v3, v4, v5, v6, v7, v8, v9)                          │

00:00:36 #3705 [Verbose] > │     else                                                                     │

00:00:36 #3706 [Verbose] > │         let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:36 #3707 [Verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct     │

00:00:36 #3708 [Verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9)                                         │

00:00:36 #3709 [Verbose] > │         let v21 : int32 = v10 - 1                                            │

00:00:36 #3710 [Verbose] > │         method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21)        │

00:00:36 #3711 [Verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:36 #3712 [Verbose] > │     match v0 with                                                            │

00:00:36 #3713 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:36 #3714 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:36 #3715 [Verbose] > │         method3(v11, v12)                                                    │

00:00:36 #3716 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:36 #3717 [Verbose] > │         v1                                                                   │

00:00:36 #3718 [Verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float *   │

00:00:36 #3719 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:36 #3720 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:36 #3721 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:36 #3722 [Verbose] > │     let v4 : float = 1.0                                                     │

00:00:36 #3723 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:36 #3724 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:36 #3725 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:36 #3726 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:36 #3727 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:36 #3728 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:36 #3729 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:36 #3730 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:36 #3731 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:36 #3732 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:36 #3733 [Verbose] > │     let v21 : bool = v17 <= 31557600.0                                       │

00:00:36 #3734 [Verbose] > │     if v21 then                                                              │

00:00:36 #3735 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:36 #3736 [Verbose] > │ v1)                                                                          │

00:00:36 #3737 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:36 #3738 [Verbose] > │         method1(v0, v22, v23)                                                │

00:00:36 #3739 [Verbose] > │     else                                                                     │

00:00:36 #3740 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:36 #3741 [Verbose] > │         method3(v1, v25)                                                     │

00:00:36 #3742 [Verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:36 #3743 [Verbose] > │     match v0 with                                                            │

00:00:36 #3744 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:36 #3745 [Verbose] > │         let v12 : UH1 = method4(v11, v1)                                     │

00:00:36 #3746 [Verbose] > │         let v13 : float = v7 / 31557600.0                                    │

00:00:36 #3747 [Verbose] > │         let v14 : float = v8 / 299792458.0                                   │

00:00:36 #3748 [Verbose] > │         UH1_0(v13, v14, v12)                                                 │

00:00:36 #3749 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:36 #3750 [Verbose] > │         v1                                                                   │

00:00:36 #3751 [Verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) =            │

00:00:36 #3752 [Verbose] > │     match v0 with                                                            │

00:00:36 #3753 [Verbose] > │     | UH1_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:36 #3754 [Verbose] > │         let v6 : UH2 = UH2_0(v3, v1)                                         │

00:00:36 #3755 [Verbose] > │         let v7 : UH2 = UH2_0(v4, v2)                                         │

00:00:36 #3756 [Verbose] > │         method5(v5, v6, v7)                                                  │

00:00:36 #3757 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:36 #3758 [Verbose] > │         struct (v1, v2)                                                      │

00:00:36 #3759 [Verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:36 #3760 [Verbose] > │     match v0 with                                                            │

00:00:36 #3761 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:36 #3762 [Verbose] > │         let v4 : UH2 = UH2_0(v2, v1)                                         │

00:00:36 #3763 [Verbose] > │         method6(v3, v4)                                                      │

00:00:36 #3764 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:36 #3765 [Verbose] > │         v1                                                                   │

00:00:36 #3766 [Verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float *   │

00:00:36 #3767 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:36 #3768 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:36 #3769 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:36 #3770 [Verbose] > │     let v4 : float = 1.0                                                     │

00:00:36 #3771 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:36 #3772 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:36 #3773 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:36 #3774 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:36 #3775 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:36 #3776 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:36 #3777 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:36 #3778 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:36 #3779 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:36 #3780 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:36 #3781 [Verbose] > │     let v21 : bool = v17 <= 31557600.0                                       │

00:00:36 #3782 [Verbose] > │     if v21 then                                                              │

00:00:36 #3783 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:36 #3784 [Verbose] > │ v1)                                                                          │

00:00:36 #3785 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:36 #3786 [Verbose] > │         method7(v0, v22, v23)                                                │

00:00:36 #3787 [Verbose] > │     else                                                                     │

00:00:36 #3788 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:36 #3789 [Verbose] > │         method3(v1, v25)                                                     │

00:00:36 #3790 [Verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:36 #3791 [Verbose] > │     match v0 with                                                            │

00:00:36 #3792 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:36 #3793 [Verbose] > │         let v12 : UH1 = method8(v11, v1)                                     │

00:00:36 #3794 [Verbose] > │         let v13 : float = v7 / 31557600.0                                    │

00:00:36 #3795 [Verbose] > │         let v14 : float = v8 / 299792458.0                                   │

00:00:36 #3796 [Verbose] > │         UH1_0(v13, v14, v12)                                                 │

00:00:36 #3797 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:36 #3798 [Verbose] > │         v1                                                                   │

00:00:36 #3799 [Verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:36 #3800 [Verbose] > │     match v0 with                                                            │

00:00:36 #3801 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:36 #3802 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:36 #3803 [Verbose] > │         method10(v3, v4)                                                     │

00:00:36 #3804 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:36 #3805 [Verbose] > │         v1                                                                   │

00:00:36 #3806 [Verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 =               │

00:00:36 #3807 [Verbose] > │     match v1 with                                                            │

00:00:36 #3808 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:36 #3809 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:36 #3810 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:36 #3811 [Verbose] > │         method11(v0, v4, v5)                                                 │

00:00:36 #3812 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:36 #3813 [Verbose] > │         v2                                                                   │

00:00:36 #3814 [Verbose] > │ and method9 (v0 : UH2) : (float []) =                                        │

00:00:36 #3815 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:36 #3816 [Verbose] > │     let v2 : int32 = method10(v0, v1)                                        │

00:00:36 #3817 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:36 #3818 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:36 #3819 [Verbose] > │     let v5 : int32 = method11(v3, v0, v4)                                    │

00:00:36 #3820 [Verbose] > │     v3                                                                       │

00:00:36 #3821 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:36 #3822 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:36 #3823 [Verbose] > │     let v0 : ((struct (float * float * float * float * float * float * float │

00:00:36 #3824 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:36 #3825 [Verbose] > │ float * float * float)) -> (struct (float * float * float * float * float *  │

00:00:36 #3826 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:36 #3827 [Verbose] > │ float * float * float * float * float))) = closure0()                        │

00:00:36 #3828 [Verbose] > │     let v1 : (struct (float * float * float * float * float * float * float  │

00:00:36 #3829 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:36 #3830 [Verbose] > │ float * float * float)) = closure2()                                         │

00:00:36 #3831 [Verbose] > │     let v2 : (struct (float * float * float * float * float * float * float  │

00:00:36 #3832 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:36 #3833 [Verbose] > │ float * float * float)) = v0 v1                                              │

00:00:36 #3834 [Verbose] > │     let v3 : (struct (float * float * float * float * float * float * float  │

00:00:36 #3835 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:36 #3836 [Verbose] > │ float * float * float)) = closure3()                                         │

00:00:36 #3837 [Verbose] > │     let v4 : (struct (float * float * float * float * float * float * float  │

00:00:36 #3838 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:36 #3839 [Verbose] > │ float * float * float)) = v0 v3                                              │

00:00:36 #3840 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:36 #3841 [Verbose] > │     let v6 : int32 = 0                                                       │

00:00:36 #3842 [Verbose] > │     let v7 : UH0 = method1(v2, v5, v6)                                       │

00:00:36 #3843 [Verbose] > │     let v8 : UH1 = UH1_1                                                     │

00:00:36 #3844 [Verbose] > │     let v9 : UH1 = method4(v7, v8)                                           │

00:00:36 #3845 [Verbose] > │     let v10 : UH2 = UH2_1                                                    │

00:00:36 #3846 [Verbose] > │     let v11 : UH2 = UH2_1                                                    │

00:00:36 #3847 [Verbose] > │     let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11)                │

00:00:36 #3848 [Verbose] > │     let v14 : UH2 = UH2_1                                                    │

00:00:36 #3849 [Verbose] > │     let v15 : UH2 = method6(v12, v14)                                        │

00:00:36 #3850 [Verbose] > │     let v16 : UH2 = UH2_1                                                    │

00:00:36 #3851 [Verbose] > │     let v17 : UH2 = method6(v13, v16)                                        │

00:00:36 #3852 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:36 #3853 [Verbose] > │     let v19 : int32 = 0                                                      │

00:00:36 #3854 [Verbose] > │     let v20 : UH0 = method7(v4, v18, v19)                                    │

00:00:36 #3855 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:36 #3856 [Verbose] > │     let v22 : UH1 = method8(v20, v21)                                        │

00:00:36 #3857 [Verbose] > │     let v23 : UH2 = UH2_1                                                    │

00:00:36 #3858 [Verbose] > │     let v24 : UH2 = UH2_1                                                    │

00:00:36 #3859 [Verbose] > │     let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24)               │

00:00:36 #3860 [Verbose] > │     let v27 : UH2 = UH2_1                                                    │

00:00:36 #3861 [Verbose] > │     let v28 : UH2 = method6(v25, v27)                                        │

00:00:36 #3862 [Verbose] > │     let v29 : UH2 = UH2_1                                                    │

00:00:36 #3863 [Verbose] > │     let v30 : UH2 = method6(v26, v29)                                        │

00:00:36 #3864 [Verbose] > │     let v31 : (float []) = method9(v15)                                      │

00:00:36 #3865 [Verbose] > │     let v32 : (float []) = method9(v17)                                      │

00:00:36 #3866 [Verbose] > │     let v33 : (float []) = method9(v30)                                      │

00:00:36 #3867 [Verbose] > │     let v34 : string = "newtonian"                                           │

00:00:36 #3868 [Verbose] > │     let v35 : string = "relativistic"                                        │

00:00:36 #3869 [Verbose] > │     let v36 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:36 #3870 [Verbose] > │ (v34, v31, v32); struct (v35, v31, v33)|]                                    │

00:00:36 #3871 [Verbose] > │     let v37 : string = "response to a constant force"                        │

00:00:36 #3872 [Verbose] > │     let v38 : string = "time (years)"                                        │

00:00:36 #3873 [Verbose] > │     let v39 : string = "velocity (multiples of c)"                           │

00:00:36 #3874 [Verbose] > │     struct (v37, v38, v39, v36)                                              │

00:00:36 #3875 [Verbose] > │ method0()                                                                    │

00:00:36 #3876 [Verbose] > │                                                                              │

00:00:36 #3877 [Verbose] > │                                                                              │

00:00:36 #3878 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:36 #3879 [Verbose] >

00:00:36 #3880 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:36 #3881 [Verbose] > inl uniform_lorentz_force v_e v_b (st : particle_state) =

00:00:36 #3882 [Verbose] >     st.charge *^ (v_e ^+^ st.velocity >< v_b)

00:00:36 #3883 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5570-7088-70c0d850fede\main.spi

00:00:37 #3884 [Verbose] >

00:00:37 #3885 [Verbose] > ╭─[ 298.59ms - stdout ]────────────────────────────────────────────────────────╮

00:00:37 #3886 [Verbose] > │ ()                                                                           │

00:00:37 #3887 [Verbose] > │                                                                              │

00:00:37 #3888 [Verbose] > │                                                                              │

00:00:37 #3889 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:37 #3890 [Verbose] >

00:00:37 #3891 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:37 #3892 [Verbose] > // // test

00:00:37 #3893 [Verbose] >

00:00:37 #3894 [Verbose] > inl c : f64 = 299792458

00:00:37 #3895 [Verbose] > inl ~method = runge_kutta_4 0.000000001

00:00:37 #3896 [Verbose] > inl forces = [[ uniform_lorentz_force (zero_vec ()) (k_hat ()) ]]

00:00:37 #3897 [Verbose] > inl (particle_state default_particle_state') = default_particle_state ()

00:00:37 #3898 [Verbose] > inl initial_state =

00:00:37 #3899 [Verbose] >     particle_state { default_particle_state' with

00:00:37 #3900 [Verbose] >         mass = 0.000000000000000000000000001672621898

00:00:37 #3901 [Verbose] >         charge = 0.0000000000000000001602176621

00:00:37 #3902 [Verbose] >         velocity = 0.8 *^ (c *^ j_hat ())

00:00:37 #3903 [Verbose] >     }

00:00:37 #3904 [Verbose] >

00:00:37 #3905 [Verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state

00:00:37 #3906 [Verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state

00:00:37 #3907 [Verbose] >

00:00:37 #3908 [Verbose] > inl newton_x, newton_y =

00:00:37 #3909 [Verbose] >     newton_states

00:00:37 #3910 [Verbose] >     >> Some

00:00:37 #3911 [Verbose] >     |> seq.take_while_ (fun (particle_state st) i => i < 100i32)

00:00:37 #3912 [Verbose] >     |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)

00:00:37 #3913 [Verbose] >     |> listm'.unzip

00:00:37 #3914 [Verbose] >

00:00:37 #3915 [Verbose] > inl relativity_x, relativity_y =

00:00:37 #3916 [Verbose] >     relativity_states

00:00:37 #3917 [Verbose] >     >> Some

00:00:37 #3918 [Verbose] >     |> seq.take_while_ (fun (particle_state st) i => i < 165i32)

00:00:37 #3919 [Verbose] >     |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)

00:00:37 #3920 [Verbose] >     |> listm'.unzip

00:00:37 #3921 [Verbose] >

00:00:37 #3922 [Verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray

00:00:37 #3923 [Verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray

00:00:37 #3924 [Verbose] >

00:00:37 #3925 [Verbose] > inl relativity_x : a i32 _ = relativity_x |> listm.toArray

00:00:37 #3926 [Verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray

00:00:37 #3927 [Verbose] >

00:00:37 #3928 [Verbose] > "proton in a 1-t magnetic field",

00:00:37 #3929 [Verbose] > "x (m)",

00:00:37 #3930 [Verbose] > "y (m)",

00:00:37 #3931 [Verbose] > ;[[

00:00:37 #3932 [Verbose] >     "newtonian", newton_x, newton_y

00:00:37 #3933 [Verbose] >     "relativistic", relativity_x, relativity_y

00:00:37 #3934 [Verbose] > ]]

00:00:37 #3935 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5600-0080-0763da4e4ea0\main.spi

00:00:37 #3936 [Verbose] >

00:00:37 #3937 [Verbose] > ╭─[ 644.21ms - return value ]──────────────────────────────────────────────────╮

00:00:37 #3938 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:37 #3939 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:37 #3940 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:37 #3941 [Verbose] > │ stroke="none"/>                                                              │

00:00:37 #3942 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:37 #3943 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:37 #3944 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:37 #3945 [Verbose] > │ proton in a 1-t magnetic field                                               │

00:00:37 #3946 [Verbose] > │ </text>                                                                      │

00:00:37 #3947 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="58" y1="424" x2="58" │

00:00:37 #3948 [Verbose] > │ y2="75"/>                                                                    │

00:00:37 #3949 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:37 #3950 [Verbose] > │ y2="75"/>                                                                    │

00:00:37 #3951 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="81" y1="424" x2="81" │

00:00:37 #3952 [Verbose] > │ y2="75"/>                                                                    │

00:00:37 #3953 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="93" y1="424" x2="93" │

00:00:37 #3954 [Verbose] > │ y2="75"/>                                                                    │

00:00:37 #3955 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x...                     │

00:00:37 #3956 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:37 #3957 [Verbose] >

00:00:37 #3958 [Verbose] > ╭─[ 662.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:37 #3959 [Verbose] > │ type UH0 =                                                                   │

00:00:37 #3960 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:37 #3961 [Verbose] > │ * float * UH0                                                                │

00:00:37 #3962 [Verbose] > │     | UH0_1                                                                  │

00:00:37 #3963 [Verbose] > │ and UH1 =                                                                    │

00:00:37 #3964 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:37 #3965 [Verbose] > │     | UH1_1                                                                  │

00:00:37 #3966 [Verbose] > │ and UH2 =                                                                    │

00:00:37 #3967 [Verbose] > │     | UH2_0 of float * UH2                                                   │

00:00:37 #3968 [Verbose] > │     | UH2_1                                                                  │

00:00:37 #3969 [Verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float *      │

00:00:37 #3970 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:37 #3971 [Verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3  │

00:00:37 #3972 [Verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 :    │

00:00:37 #3973 [Verbose] > │ float) : struct (float * float * float * float * float * float * float *     │

00:00:37 #3974 [Verbose] > │ float * float) =                                                             │

00:00:37 #3975 [Verbose] > │     let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 :    │

00:00:37 #3976 [Verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1,  │

00:00:37 #3977 [Verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9)                                              │

00:00:37 #3978 [Verbose] > │     let v19 : float = v15 * 5E-10                                            │

00:00:37 #3979 [Verbose] > │     let v20 : float = v6 + v19                                               │

00:00:37 #3980 [Verbose] > │     let v21 : float = 5E-10 * v12                                            │

00:00:37 #3981 [Verbose] > │     let v22 : float = 5E-10 * v13                                            │

00:00:37 #3982 [Verbose] > │     let v23 : float = 5E-10 * v14                                            │

00:00:37 #3983 [Verbose] > │     let v24 : float = v3 + v21                                               │

00:00:37 #3984 [Verbose] > │     let v25 : float = v4 + v22                                               │

00:00:37 #3985 [Verbose] > │     let v26 : float = v5 + v23                                               │

00:00:37 #3986 [Verbose] > │     let v27 : float = 5E-10 * v16                                            │

00:00:37 #3987 [Verbose] > │     let v28 : float = 5E-10 * v17                                            │

00:00:37 #3988 [Verbose] > │     let v29 : float = 5E-10 * v18                                            │

00:00:37 #3989 [Verbose] > │     let v30 : float = v7 + v27                                               │

00:00:37 #3990 [Verbose] > │     let v31 : float = v8 + v28                                               │

00:00:37 #3991 [Verbose] > │     let v32 : float = v9 + v29                                               │

00:00:37 #3992 [Verbose] > │     let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 :    │

00:00:37 #3993 [Verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1,  │

00:00:37 #3994 [Verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32)                                       │

00:00:37 #3995 [Verbose] > │     let v42 : float = v38 * 5E-10                                            │

00:00:37 #3996 [Verbose] > │     let v43 : float = v6 + v42                                               │

00:00:37 #3997 [Verbose] > │     let v44 : float = 5E-10 * v35                                            │

00:00:37 #3998 [Verbose] > │     let v45 : float = 5E-10 * v36                                            │

00:00:37 #3999 [Verbose] > │     let v46 : float = 5E-10 * v37                                            │

00:00:37 #4000 [Verbose] > │     let v47 : float = v3 + v44                                               │

00:00:37 #4001 [Verbose] > │     let v48 : float = v4 + v45                                               │

00:00:37 #4002 [Verbose] > │     let v49 : float = v5 + v46                                               │

00:00:37 #4003 [Verbose] > │     let v50 : float = 5E-10 * v39                                            │

00:00:37 #4004 [Verbose] > │     let v51 : float = 5E-10 * v40                                            │

00:00:37 #4005 [Verbose] > │     let v52 : float = 5E-10 * v41                                            │

00:00:37 #4006 [Verbose] > │     let v53 : float = v7 + v50                                               │

00:00:37 #4007 [Verbose] > │     let v54 : float = v8 + v51                                               │

00:00:37 #4008 [Verbose] > │     let v55 : float = v9 + v52                                               │

00:00:37 #4009 [Verbose] > │     let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 :    │

00:00:37 #4010 [Verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1,  │

00:00:37 #4011 [Verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55)                                       │

00:00:37 #4012 [Verbose] > │     let v65 : float = v61 * 1E-09                                            │

00:00:37 #4013 [Verbose] > │     let v66 : float = v6 + v65                                               │

00:00:37 #4014 [Verbose] > │     let v67 : float = 1E-09 * v58                                            │

00:00:37 #4015 [Verbose] > │     let v68 : float = 1E-09 * v59                                            │

00:00:37 #4016 [Verbose] > │     let v69 : float = 1E-09 * v60                                            │

00:00:37 #4017 [Verbose] > │     let v70 : float = v3 + v67                                               │

00:00:37 #4018 [Verbose] > │     let v71 : float = v4 + v68                                               │

00:00:37 #4019 [Verbose] > │     let v72 : float = v5 + v69                                               │

00:00:37 #4020 [Verbose] > │     let v73 : float = 1E-09 * v62                                            │

00:00:37 #4021 [Verbose] > │     let v74 : float = 1E-09 * v63                                            │

00:00:37 #4022 [Verbose] > │     let v75 : float = 1E-09 * v64                                            │

00:00:37 #4023 [Verbose] > │     let v76 : float = v7 + v73                                               │

00:00:37 #4024 [Verbose] > │     let v77 : float = v8 + v74                                               │

00:00:37 #4025 [Verbose] > │     let v78 : float = v9 + v75                                               │

00:00:37 #4026 [Verbose] > │     let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 :    │

00:00:37 #4027 [Verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1,  │

00:00:37 #4028 [Verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78)                                       │

00:00:37 #4029 [Verbose] > │     let v88 : float = v10 + v33                                              │

00:00:37 #4030 [Verbose] > │     let v89 : float = v11 + v34                                              │

00:00:37 #4031 [Verbose] > │     let v90 : float = v15 + v38                                              │

00:00:37 #4032 [Verbose] > │     let v91 : float = v12 + v35                                              │

00:00:37 #4033 [Verbose] > │     let v92 : float = v13 + v36                                              │

00:00:37 #4034 [Verbose] > │     let v93 : float = v14 + v37                                              │

00:00:37 #4035 [Verbose] > │     let v94 : float = v16 + v39                                              │

00:00:37 #4036 [Verbose] > │     let v95 : float = v17 + v40                                              │

00:00:37 #4037 [Verbose] > │     let v96 : float = v18 + v41                                              │

00:00:37 #4038 [Verbose] > │     let v97 : float = v88 + v33                                              │

00:00:37 #4039 [Verbose] > │     let v98 : float = v89 + v34                                              │

00:00:37 #4040 [Verbose] > │     let v99 : float = v90 + v38                                              │

00:00:37 #4041 [Verbose] > │     let v100 : float = v91 + v35                                             │

00:00:37 #4042 [Verbose] > │     let v101 : float = v92 + v36                                             │

00:00:37 #4043 [Verbose] > │     let v102 : float = v93 + v37                                             │

00:00:37 #4044 [Verbose] > │     let v103 : float = v94 + v39                                             │

00:00:37 #4045 [Verbose] > │     let v104 : float = v95 + v40                                             │

00:00:37 #4046 [Verbose] > │     let v105 : float = v96 + v41                                             │

00:00:37 #4047 [Verbose] > │     let v106 : float = v97 + v56                                             │

00:00:37 #4048 [Verbose] > │     let v107 : float = v98 + v57                                             │

00:00:37 #4049 [Verbose] > │     let v108 : float = v99 + v61                                             │

00:00:37 #4050 [Verbose] > │     let v109 : float = v100 + v58                                            │

00:00:37 #4051 [Verbose] > │     let v110 : float = v101 + v59                                            │

00:00:37 #4052 [Verbose] > │     let v111 : float = v102 + v60                                            │

00:00:37 #4053 [Verbose] > │     let v112 : float = v103 + v62                                            │

00:00:37 #4054 [Verbose] > │     let v113 : float = v104 + v63                                            │

00:00:37 #4055 [Verbose] > │     let v114 : float = v105 + v64                                            │

00:00:37 #4056 [Verbose] > │     let v115 : float = v106 + v56                                            │

00:00:37 #4057 [Verbose] > │     let v116 : float = v107 + v57                                            │

00:00:37 #4058 [Verbose] > │     let v117 : float = v108 + v61                                            │

00:00:37 #4059 [Verbose] > │     let v118 : float = v109 + v58                                            │

00:00:37 #4060 [Verbose] > │     let v119 : float = v110 + v59                                            │

00:00:37 #4061 [Verbose] > │     let v120 : float = v111 + v60                                            │

00:00:37 #4062 [Verbose] > │     let v121 : float = v112 + v62                                            │

00:00:37 #4063 [Verbose] > │     let v122 : float = v113 + v63                                            │

00:00:37 #4064 [Verbose] > │     let v123 : float = v114 + v64                                            │

00:00:37 #4065 [Verbose] > │     let v124 : float = v115 + v79                                            │

00:00:37 #4066 [Verbose] > │     let v125 : float = v116 + v80                                            │

00:00:37 #4067 [Verbose] > │     let v126 : float = v117 + v84                                            │

00:00:37 #4068 [Verbose] > │     let v127 : float = v118 + v81                                            │

00:00:37 #4069 [Verbose] > │     let v128 : float = v119 + v82                                            │

00:00:37 #4070 [Verbose] > │     let v129 : float = v120 + v83                                            │

00:00:37 #4071 [Verbose] > │     let v130 : float = v121 + v85                                            │

00:00:37 #4072 [Verbose] > │     let v131 : float = v122 + v86                                            │

00:00:37 #4073 [Verbose] > │     let v132 : float = v123 + v87                                            │

00:00:37 #4074 [Verbose] > │     let v133 : float = v126 * 1.6666666666666669E-10                         │

00:00:37 #4075 [Verbose] > │     let v134 : float = v6 + v133                                             │

00:00:37 #4076 [Verbose] > │     let v135 : float = 1.6666666666666669E-10 * v127                         │

00:00:37 #4077 [Verbose] > │     let v136 : float = 1.6666666666666669E-10 * v128                         │

00:00:37 #4078 [Verbose] > │     let v137 : float = 1.6666666666666669E-10 * v129                         │

00:00:37 #4079 [Verbose] > │     let v138 : float = v3 + v135                                             │

00:00:37 #4080 [Verbose] > │     let v139 : float = v4 + v136                                             │

00:00:37 #4081 [Verbose] > │     let v140 : float = v5 + v137                                             │

00:00:37 #4082 [Verbose] > │     let v141 : float = 1.6666666666666669E-10 * v130                         │

00:00:37 #4083 [Verbose] > │     let v142 : float = 1.6666666666666669E-10 * v131                         │

00:00:37 #4084 [Verbose] > │     let v143 : float = 1.6666666666666669E-10 * v132                         │

00:00:37 #4085 [Verbose] > │     let v144 : float = v7 + v141                                             │

00:00:37 #4086 [Verbose] > │     let v145 : float = v8 + v142                                             │

00:00:37 #4087 [Verbose] > │     let v146 : float = v9 + v143                                             │

00:00:37 #4088 [Verbose] > │     struct (v1, v2, v138, v139, v140, v134, v144, v145, v146)                │

00:00:37 #4089 [Verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │

00:00:37 #4090 [Verbose] > │ * float * float * float) -> struct (float * float * float * float * float *  │

00:00:37 #4091 [Verbose] > │ float * float * float * float))) : (struct (float * float * float * float *  │

00:00:37 #4092 [Verbose] > │ float * float * float * float * float) -> struct (float * float * float *    │

00:00:37 #4093 [Verbose] > │ float * float * float * float * float * float)) =                            │

00:00:37 #4094 [Verbose] > │     closure1(v0)                                                             │

00:00:37 #4095 [Verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:37 #4096 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:37 #4097 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:37 #4098 [Verbose] > │     let v9 : float = v8 * 0.0                                                │

00:00:37 #4099 [Verbose] > │     let v10 : float = v7 - v9                                                │

00:00:37 #4100 [Verbose] > │     let v11 : float = v9 - v6                                                │

00:00:37 #4101 [Verbose] > │     let v12 : float = v6 * 0.0                                               │

00:00:37 #4102 [Verbose] > │     let v13 : float = v7 * 0.0                                               │

00:00:37 #4103 [Verbose] > │     let v14 : float = v12 - v13                                              │

00:00:37 #4104 [Verbose] > │     let v15 : float = v0 * v10                                               │

00:00:37 #4105 [Verbose] > │     let v16 : float = v0 * v11                                               │

00:00:37 #4106 [Verbose] > │     let v17 : float = v0 * v14                                               │

00:00:37 #4107 [Verbose] > │     let v18 : float = v15 / v1                                               │

00:00:37 #4108 [Verbose] > │     let v19 : float = v16 / v1                                               │

00:00:37 #4109 [Verbose] > │     let v20 : float = v17 / v1                                               │

00:00:37 #4110 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v18, v19, v20)                        │

00:00:37 #4111 [Verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:37 #4112 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:37 #4113 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:37 #4114 [Verbose] > │     let v9 : float = v8 * 0.0                                                │

00:00:37 #4115 [Verbose] > │     let v10 : float = v7 - v9                                                │

00:00:37 #4116 [Verbose] > │     let v11 : float = v9 - v6                                                │

00:00:37 #4117 [Verbose] > │     let v12 : float = v6 * 0.0                                               │

00:00:37 #4118 [Verbose] > │     let v13 : float = v7 * 0.0                                               │

00:00:37 #4119 [Verbose] > │     let v14 : float = v12 - v13                                              │

00:00:37 #4120 [Verbose] > │     let v15 : float = v0 * v10                                               │

00:00:37 #4121 [Verbose] > │     let v16 : float = v0 * v11                                               │

00:00:37 #4122 [Verbose] > │     let v17 : float = v0 * v14                                               │

00:00:37 #4123 [Verbose] > │     let v18 : float = v6 / 299792458.0                                       │

00:00:37 #4124 [Verbose] > │     let v19 : float = v7 / 299792458.0                                       │

00:00:37 #4125 [Verbose] > │     let v20 : float = v8 / 299792458.0                                       │

00:00:37 #4126 [Verbose] > │     let v21 : float = v18 * v18                                              │

00:00:37 #4127 [Verbose] > │     let v22 : float = v19 * v19                                              │

00:00:37 #4128 [Verbose] > │     let v23 : float = v21 + v22                                              │

00:00:37 #4129 [Verbose] > │     let v24 : float = v20 * v20                                              │

00:00:37 #4130 [Verbose] > │     let v25 : float = v23 + v24                                              │

00:00:37 #4131 [Verbose] > │     let v26 : float = 1.0 - v25                                              │

00:00:37 #4132 [Verbose] > │     let v27 : float = sqrt v26                                               │

00:00:37 #4133 [Verbose] > │     let v28 : float = v15 * v18                                              │

00:00:37 #4134 [Verbose] > │     let v29 : float = v16 * v19                                              │

00:00:37 #4135 [Verbose] > │     let v30 : float = v28 + v29                                              │

00:00:37 #4136 [Verbose] > │     let v31 : float = v17 * v20                                              │

00:00:37 #4137 [Verbose] > │     let v32 : float = v30 + v31                                              │

00:00:37 #4138 [Verbose] > │     let v33 : float = v32 * v18                                              │

00:00:37 #4139 [Verbose] > │     let v34 : float = v32 * v19                                              │

00:00:37 #4140 [Verbose] > │     let v35 : float = v32 * v20                                              │

00:00:37 #4141 [Verbose] > │     let v36 : float = -1.0 * v33                                             │

00:00:37 #4142 [Verbose] > │     let v37 : float = -1.0 * v34                                             │

00:00:37 #4143 [Verbose] > │     let v38 : float = -1.0 * v35                                             │

00:00:37 #4144 [Verbose] > │     let v39 : float = v15 + v36                                              │

00:00:37 #4145 [Verbose] > │     let v40 : float = v16 + v37                                              │

00:00:37 #4146 [Verbose] > │     let v41 : float = v17 + v38                                              │

00:00:37 #4147 [Verbose] > │     let v42 : float = v27 * v39                                              │

00:00:37 #4148 [Verbose] > │     let v43 : float = v27 * v40                                              │

00:00:37 #4149 [Verbose] > │     let v44 : float = v27 * v41                                              │

00:00:37 #4150 [Verbose] > │     let v45 : float = v42 / v1                                               │

00:00:37 #4151 [Verbose] > │     let v46 : float = v43 / v1                                               │

00:00:37 #4152 [Verbose] > │     let v47 : float = v44 / v1                                               │

00:00:37 #4153 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v45, v46, v47)                        │

00:00:37 #4154 [Verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float *   │

00:00:37 #4155 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:37 #4156 [Verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 :    │

00:00:37 #4157 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 :     │

00:00:37 #4158 [Verbose] > │ int32) : struct (float * float * float * float * float * float * float *     │

00:00:37 #4159 [Verbose] > │ float * float) =                                                             │

00:00:37 #4160 [Verbose] > │     let v11 : bool = v10 <= 0                                                │

00:00:37 #4161 [Verbose] > │     if v11 then                                                              │

00:00:37 #4162 [Verbose] > │         struct (v1, v2, v3, v4, v5, v6, v7, v8, v9)                          │

00:00:37 #4163 [Verbose] > │     else                                                                     │

00:00:37 #4164 [Verbose] > │         let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:37 #4165 [Verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct     │

00:00:37 #4166 [Verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9)                                         │

00:00:37 #4167 [Verbose] > │         let v21 : int32 = v10 - 1                                            │

00:00:37 #4168 [Verbose] > │         method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21)        │

00:00:37 #4169 [Verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:37 #4170 [Verbose] > │     match v0 with                                                            │

00:00:37 #4171 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:37 #4172 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:37 #4173 [Verbose] > │         method3(v11, v12)                                                    │

00:00:37 #4174 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:37 #4175 [Verbose] > │         v1                                                                   │

00:00:37 #4176 [Verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float *   │

00:00:37 #4177 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:37 #4178 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:37 #4179 [Verbose] > │     let v3 : float = 1.602176621E-19                                         │

00:00:37 #4180 [Verbose] > │     let v4 : float = 1.672621898E-27                                         │

00:00:37 #4181 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:37 #4182 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:37 #4183 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:37 #4184 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:37 #4185 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:37 #4186 [Verbose] > │     let v10 : float = 239833966.4                                            │

00:00:37 #4187 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:37 #4188 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:37 #4189 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:37 #4190 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:37 #4191 [Verbose] > │     let v21 : bool = v2 < 100                                                │

00:00:37 #4192 [Verbose] > │     if v21 then                                                              │

00:00:37 #4193 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:37 #4194 [Verbose] > │ v1)                                                                          │

00:00:37 #4195 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:37 #4196 [Verbose] > │         method1(v0, v22, v23)                                                │

00:00:37 #4197 [Verbose] > │     else                                                                     │

00:00:37 #4198 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:37 #4199 [Verbose] > │         method3(v1, v25)                                                     │

00:00:37 #4200 [Verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:37 #4201 [Verbose] > │     match v0 with                                                            │

00:00:37 #4202 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:37 #4203 [Verbose] > │         let v12 : UH1 = method4(v11, v1)                                     │

00:00:37 #4204 [Verbose] > │         UH1_0(v4, v5, v12)                                                   │

00:00:37 #4205 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:37 #4206 [Verbose] > │         v1                                                                   │

00:00:37 #4207 [Verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) =            │

00:00:37 #4208 [Verbose] > │     match v0 with                                                            │

00:00:37 #4209 [Verbose] > │     | UH1_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:37 #4210 [Verbose] > │         let v6 : UH2 = UH2_0(v3, v1)                                         │

00:00:37 #4211 [Verbose] > │         let v7 : UH2 = UH2_0(v4, v2)                                         │

00:00:37 #4212 [Verbose] > │         method5(v5, v6, v7)                                                  │

00:00:37 #4213 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:37 #4214 [Verbose] > │         struct (v1, v2)                                                      │

00:00:37 #4215 [Verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:37 #4216 [Verbose] > │     match v0 with                                                            │

00:00:37 #4217 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:37 #4218 [Verbose] > │         let v4 : UH2 = UH2_0(v2, v1)                                         │

00:00:37 #4219 [Verbose] > │         method6(v3, v4)                                                      │

00:00:37 #4220 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:37 #4221 [Verbose] > │         v1                                                                   │

00:00:37 #4222 [Verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float *   │

00:00:37 #4223 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:37 #4224 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:37 #4225 [Verbose] > │     let v3 : float = 1.602176621E-19                                         │

00:00:37 #4226 [Verbose] > │     let v4 : float = 1.672621898E-27                                         │

00:00:37 #4227 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:37 #4228 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:37 #4229 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:37 #4230 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:37 #4231 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:37 #4232 [Verbose] > │     let v10 : float = 239833966.4                                            │

00:00:37 #4233 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:37 #4234 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:37 #4235 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:37 #4236 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:37 #4237 [Verbose] > │     let v21 : bool = v2 < 165                                                │

00:00:37 #4238 [Verbose] > │     if v21 then                                                              │

00:00:37 #4239 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:37 #4240 [Verbose] > │ v1)                                                                          │

00:00:37 #4241 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:37 #4242 [Verbose] > │         method7(v0, v22, v23)                                                │

00:00:37 #4243 [Verbose] > │     else                                                                     │

00:00:37 #4244 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:37 #4245 [Verbose] > │         method3(v1, v25)                                                     │

00:00:37 #4246 [Verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:37 #4247 [Verbose] > │     match v0 with                                                            │

00:00:37 #4248 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:37 #4249 [Verbose] > │         let v12 : UH1 = method8(v11, v1)                                     │

00:00:37 #4250 [Verbose] > │         UH1_0(v4, v5, v12)                                                   │

00:00:37 #4251 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:37 #4252 [Verbose] > │         v1                                                                   │

00:00:37 #4253 [Verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:37 #4254 [Verbose] > │     match v0 with                                                            │

00:00:37 #4255 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:37 #4256 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:37 #4257 [Verbose] > │         method10(v3, v4)                                                     │

00:00:37 #4258 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:37 #4259 [Verbose] > │         v1                                                                   │

00:00:37 #4260 [Verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 =               │

00:00:37 #4261 [Verbose] > │     match v1 with                                                            │

00:00:37 #4262 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:37 #4263 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:37 #4264 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:37 #4265 [Verbose] > │         method11(v0, v4, v5)                                                 │

00:00:37 #4266 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:37 #4267 [Verbose] > │         v2                                                                   │

00:00:37 #4268 [Verbose] > │ and method9 (v0 : UH2) : (float []) =                                        │

00:00:37 #4269 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:37 #4270 [Verbose] > │     let v2 : int32 = method10(v0, v1)                                        │

00:00:37 #4271 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:37 #4272 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:37 #4273 [Verbose] > │     let v5 : int32 = method11(v3, v0, v4)                                    │

00:00:37 #4274 [Verbose] > │     v3                                                                       │

00:00:37 #4275 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:37 #4276 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:37 #4277 [Verbose] > │     let v0 : ((struct (float * float * float * float * float * float * float │

00:00:37 #4278 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:37 #4279 [Verbose] > │ float * float * float)) -> (struct (float * float * float * float * float *  │

00:00:37 #4280 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:37 #4281 [Verbose] > │ float * float * float * float * float))) = closure0()                        │

00:00:37 #4282 [Verbose] > │     let v1 : (struct (float * float * float * float * float * float * float  │

00:00:37 #4283 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:37 #4284 [Verbose] > │ float * float * float)) = closure2()                                         │

00:00:37 #4285 [Verbose] > │     let v2 : (struct (float * float * float * float * float * float * float  │

00:00:37 #4286 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:37 #4287 [Verbose] > │ float * float * float)) = v0 v1                                              │

00:00:37 #4288 [Verbose] > │     let v3 : (struct (float * float * float * float * float * float * float  │

00:00:37 #4289 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:37 #4290 [Verbose] > │ float * float * float)) = closure3()                                         │

00:00:37 #4291 [Verbose] > │     let v4 : (struct (float * float * float * float * float * float * float  │

00:00:37 #4292 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:37 #4293 [Verbose] > │ float * float * float)) = v0 v3                                              │

00:00:37 #4294 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:37 #4295 [Verbose] > │     let v6 : int32 = 0                                                       │

00:00:37 #4296 [Verbose] > │     let v7 : UH0 = method1(v2, v5, v6)                                       │

00:00:37 #4297 [Verbose] > │     let v8 : UH1 = UH1_1                                                     │

00:00:37 #4298 [Verbose] > │     let v9 : UH1 = method4(v7, v8)                                           │

00:00:37 #4299 [Verbose] > │     let v10 : UH2 = UH2_1                                                    │

00:00:37 #4300 [Verbose] > │     let v11 : UH2 = UH2_1                                                    │

00:00:37 #4301 [Verbose] > │     let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11)                │

00:00:37 #4302 [Verbose] > │     let v14 : UH2 = UH2_1                                                    │

00:00:37 #4303 [Verbose] > │     let v15 : UH2 = method6(v12, v14)                                        │

00:00:37 #4304 [Verbose] > │     let v16 : UH2 = UH2_1                                                    │

00:00:37 #4305 [Verbose] > │     let v17 : UH2 = method6(v13, v16)                                        │

00:00:37 #4306 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:37 #4307 [Verbose] > │     let v19 : int32 = 0                                                      │

00:00:37 #4308 [Verbose] > │     let v20 : UH0 = method7(v4, v18, v19)                                    │

00:00:37 #4309 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:37 #4310 [Verbose] > │     let v22 : UH1 = method8(v20, v21)                                        │

00:00:37 #4311 [Verbose] > │     let v23 : UH2 = UH2_1                                                    │

00:00:37 #4312 [Verbose] > │     let v24 : UH2 = UH2_1                                                    │

00:00:37 #4313 [Verbose] > │     let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24)               │

00:00:37 #4314 [Verbose] > │     let v27 : UH2 = UH2_1                                                    │

00:00:37 #4315 [Verbose] > │     let v28 : UH2 = method6(v25, v27)                                        │

00:00:37 #4316 [Verbose] > │     let v29 : UH2 = UH2_1                                                    │

00:00:37 #4317 [Verbose] > │     let v30 : UH2 = method6(v26, v29)                                        │

00:00:37 #4318 [Verbose] > │     let v31 : (float []) = method9(v15)                                      │

00:00:37 #4319 [Verbose] > │     let v32 : (float []) = method9(v17)                                      │

00:00:37 #4320 [Verbose] > │     let v33 : (float []) = method9(v28)                                      │

00:00:37 #4321 [Verbose] > │     let v34 : (float []) = method9(v30)                                      │

00:00:37 #4322 [Verbose] > │     let v35 : string = "newtonian"                                           │

00:00:37 #4323 [Verbose] > │     let v36 : string = "relativistic"                                        │

00:00:37 #4324 [Verbose] > │     let v37 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:37 #4325 [Verbose] > │ (v35, v31, v32); struct (v36, v33, v34)|]                                    │

00:00:37 #4326 [Verbose] > │     let v38 : string = "proton in a 1-t magnetic field"                      │

00:00:37 #4327 [Verbose] > │     let v39 : string = "x (m)"                                               │

00:00:37 #4328 [Verbose] > │     let v40 : string = "y (m)"                                               │

00:00:37 #4329 [Verbose] > │     struct (v38, v39, v40, v37)                                              │

00:00:37 #4330 [Verbose] > │ method0()                                                                    │

00:00:37 #4331 [Verbose] > │                                                                              │

00:00:37 #4332 [Verbose] > │                                                                              │

00:00:37 #4333 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:37 #4334 [Verbose] >

00:00:37 #4335 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:37 #4336 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:37 #4337 [Verbose] > │ ### system kinetic energy versus time 1                                      │

00:00:37 #4338 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:37 #4339 [Verbose] >

00:00:37 #4340 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:37 #4341 [Verbose] > // // test

00:00:37 #4342 [Verbose] >

00:00:37 #4343 [Verbose] > inl central_force f (particle_state st1) (particle_state st2) =

00:00:37 #4344 [Verbose] >     inl r1 = st1.pos_vec

00:00:37 #4345 [Verbose] >     inl r2 = st2.pos_vec

00:00:37 #4346 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:37 #4347 [Verbose] >     inl r21mag = magnitude r21

00:00:37 #4348 [Verbose] >     f r21mag *^ r21 ^/ r21mag

00:00:37 #4349 [Verbose] >

00:00:37 #4350 [Verbose] > inl billiard_force k re =

00:00:37 #4351 [Verbose] >     inl f r =

00:00:37 #4352 [Verbose] >         if r >= re

00:00:37 #4353 [Verbose] >         then 0

00:00:37 #4354 [Verbose] >         else -k * (r - re)

00:00:37 #4355 [Verbose] >     central_force f

00:00:37 #4356 [Verbose] >

00:00:37 #4357 [Verbose] > type force_vector = vec

00:00:37 #4358 [Verbose] > type two_body_force = particle_state -> particle_state -> force_vector

00:00:37 #4359 [Verbose] >

00:00:37 #4360 [Verbose] > union force =

00:00:37 #4361 [Verbose] >     | ExternalForce : i32 * one_body_force

00:00:37 #4362 [Verbose] >     | InternalForce : i32 * i32 * two_body_force

00:00:37 #4363 [Verbose] >

00:00:37 #4364 [Verbose] > nominal multi_particle_state = list particle_state

00:00:37 #4365 [Verbose] >

00:00:37 #4366 [Verbose] > nominal d_multi_particle_state = list d_particle_state

00:00:37 #4367 [Verbose] >

00:00:37 #4368 [Verbose] > inl force_on n sts force =

00:00:37 #4369 [Verbose] >     match force with

00:00:37 #4370 [Verbose] >     | ExternalForce (n0, f_one_body) =>

00:00:37 #4371 [Verbose] >         if n = n0

00:00:37 #4372 [Verbose] >         then f_one_body

00:00:37 #4373 [Verbose] >         else fun _ => zero_vec ()

00:00:37 #4374 [Verbose] >     | InternalForce (n0, n1, f_two_body) =>

00:00:37 #4375 [Verbose] >         if n = n0

00:00:37 #4376 [Verbose] >         then f_two_body (sts |> listm'.item n1)

00:00:37 #4377 [Verbose] >         elif n = n1

00:00:37 #4378 [Verbose] >         then f_two_body (sts |> listm'.item n0)

00:00:37 #4379 [Verbose] >         else fun _ => zero_vec ()

00:00:37 #4380 [Verbose] >

00:00:37 #4381 [Verbose] > inl forces_on n (multi_particle_state sts) fs =

00:00:37 #4382 [Verbose] >     fs |> listm.map (force_on n sts)

00:00:37 #4383 [Verbose] >

00:00:37 #4384 [Verbose] > inl newton_second_mps fs (multi_particle_state sts) : d_multi_particle_state =

00:00:37 #4385 [Verbose] >     inl deriv (n, st) =

00:00:37 #4386 [Verbose] >         newton_second_ps (forces_on n (multi_particle_state sts) fs) st

00:00:37 #4387 [Verbose] >     sts |> listm'.indexed |> listm.map deriv |> d_multi_particle_state

00:00:37 #4388 [Verbose] >

00:00:37 #4389 [Verbose] > instance (+++) d_multi_particle_state = fun (d_multi_particle_state dsts1)

00:00:37 #4390 [Verbose] > (d_multi_particle_state dsts2) =>

00:00:37 #4391 [Verbose] >     d_multi_particle_state (listm'.zip_with_ (+++) dsts1 dsts2)

00:00:37 #4392 [Verbose] >

00:00:37 #4393 [Verbose] > instance scale d_multi_particle_state = fun w (d_multi_particle_state dsts) =>

00:00:37 #4394 [Verbose] >     d_multi_particle_state (dsts |> listm.map (scale w))

00:00:37 #4395 [Verbose] >

00:00:37 #4396 [Verbose] > instance shift multi_particle_state = fun dt dsts (multi_particle_state sts) =>

00:00:37 #4397 [Verbose] >     inl (d_multi_particle_state dsts) =

00:00:37 #4398 [Verbose] >         real

00:00:37 #4399 [Verbose] >             match dsts with

00:00:37 #4400 [Verbose] >             | d_multi_particle_state _ => dsts

00:00:37 #4401 [Verbose] >     listm'.zip_with_ (shift dt) dsts sts |> multi_particle_state

00:00:37 #4402 [Verbose] >

00:00:37 #4403 [Verbose] > inl euler_cromer_mps dt : numerical_method multi_particle_state

00:00:37 #4404 [Verbose] > d_multi_particle_state =

00:00:37 #4405 [Verbose] >     fun deriv mpst0 =>

00:00:37 #4406 [Verbose] >         inl mpst1 = euler dt deriv mpst0

00:00:37 #4407 [Verbose] >         inl (multi_particle_state sts0) = mpst0

00:00:37 #4408 [Verbose] >         inl (multi_particle_state sts1) = mpst1

00:00:37 #4409 [Verbose] >         sts1

00:00:37 #4410 [Verbose] >         |> listm'.zip_ sts0

00:00:37 #4411 [Verbose] >         |> listm.map (fun ((particle_state st0), (particle_state st1)) =>

00:00:37 #4412 [Verbose] >             particle_state {

00:00:37 #4413 [Verbose] >                 st1 with

00:00:37 #4414 [Verbose] >                     pos_vec = st0.pos_vec ^+^ st1.velocity ^* dt

00:00:37 #4415 [Verbose] >             }

00:00:37 #4416 [Verbose] >         )

00:00:37 #4417 [Verbose] >         |> multi_particle_state

00:00:37 #4418 [Verbose] >

00:00:37 #4419 [Verbose] > inl update_mps (method : numerical_method multi_particle_state

00:00:37 #4420 [Verbose] > d_multi_particle_state) =

00:00:37 #4421 [Verbose] >     newton_second_mps >> method

00:00:37 #4422 [Verbose] >

00:00:37 #4423 [Verbose] > inl states_mps (method : numerical_method multi_particle_state

00:00:37 #4424 [Verbose] > d_multi_particle_state) =

00:00:37 #4425 [Verbose] >     newton_second_mps >> method >> seq.iterate_

00:00:37 #4426 [Verbose] >

00:00:37 #4427 [Verbose] >

00:00:37 #4428 [Verbose] > inl kinetic_energy (particle_state st) =

00:00:37 #4429 [Verbose] >     inl m = st.mass

00:00:37 #4430 [Verbose] >     inl v = magnitude st.velocity

00:00:37 #4431 [Verbose] >     0.5 * m * v ** 2

00:00:37 #4432 [Verbose] >

00:00:37 #4433 [Verbose] > inl system_ke (multi_particle_state sts) =

00:00:37 #4434 [Verbose] >     sts |> listm.map kinetic_energy |> listm'.sum

00:00:37 #4435 [Verbose] >

00:00:37 #4436 [Verbose] > inl linear_spring_pe k re (particle_state st1) (particle_state st2) =

00:00:37 #4437 [Verbose] >     inl r1 = st1.pos_vec

00:00:37 #4438 [Verbose] >     inl r2 = st2.pos_vec

00:00:37 #4439 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:37 #4440 [Verbose] >     inl r21mag = magnitude r21

00:00:37 #4441 [Verbose] >     k * (r21mag - re) ** 2 / 2

00:00:37 #4442 [Verbose] >

00:00:37 #4443 [Verbose] > inl earth_surface_gravity_pe (particle_state st) =

00:00:37 #4444 [Verbose] >     inl g = 9.80665

00:00:37 #4445 [Verbose] >     inl m = st.mass

00:00:37 #4446 [Verbose] >     inl z = st.pos_vec.z

00:00:37 #4447 [Verbose] >     m * g * z

00:00:37 #4448 [Verbose] >

00:00:37 #4449 [Verbose] > inl two_springs_pe (multi_particle_state sts) =

00:00:37 #4450 [Verbose] >     inl st0 = sts |> listm'.item 0i32

00:00:37 #4451 [Verbose] >     inl st1 = sts |> listm'.item 1i32

00:00:37 #4452 [Verbose] >     linear_spring_pe 100 0.5 (default_particle_state ()) st0

00:00:37 #4453 [Verbose] >     + linear_spring_pe 100 0.5 st0 st1

00:00:37 #4454 [Verbose] >     + earth_surface_gravity_pe st0

00:00:37 #4455 [Verbose] >     + earth_surface_gravity_pe st1

00:00:37 #4456 [Verbose] >

00:00:37 #4457 [Verbose] > inl two_springs_me mpst =

00:00:37 #4458 [Verbose] >     system_ke mpst + two_springs_pe mpst

00:00:37 #4459 [Verbose] >

00:00:37 #4460 [Verbose] > inl ball_radius () = 0.03

00:00:37 #4461 [Verbose] >

00:00:37 #4462 [Verbose] > inl billiard_forces k =

00:00:37 #4463 [Verbose] >     [[ InternalForce (0, 1, billiard_force k (2 * ball_radius ())) ]]

00:00:37 #4464 [Verbose] >

00:00:37 #4465 [Verbose] > inl billiard_update n_method k dt =

00:00:37 #4466 [Verbose] >     update_mps (n_method dt) (billiard_forces k)

00:00:37 #4467 [Verbose] >

00:00:37 #4468 [Verbose] > inl billiard_initial () =

00:00:37 #4469 [Verbose] >     inl ball_mass = 0.160

00:00:37 #4470 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:37 #4471 [Verbose] >     multi_particle_state [[

00:00:37 #4472 [Verbose] >         particle_state {

00:00:37 #4473 [Verbose] >             default_particle_state' with

00:00:37 #4474 [Verbose] >                 mass = ball_mass

00:00:37 #4475 [Verbose] >                 pos_vec = zero_vec ()

00:00:37 #4476 [Verbose] >                 velocity = 0.2 *^ i_hat ()

00:00:37 #4477 [Verbose] >         }

00:00:37 #4478 [Verbose] >         particle_state {

00:00:37 #4479 [Verbose] >             default_particle_state' with

00:00:37 #4480 [Verbose] >                 mass = ball_mass

00:00:37 #4481 [Verbose] >                 pos_vec = i_hat () ^+^ 0.02 *^ j_hat ()

00:00:37 #4482 [Verbose] >                 velocity = zero_vec ()

00:00:37 #4483 [Verbose] >         }

00:00:37 #4484 [Verbose] >     ]]

00:00:37 #4485 [Verbose] >

00:00:37 #4486 [Verbose] > inl billiard_states ~n_method k dt =

00:00:37 #4487 [Verbose] >     states_mps (n_method dt) (billiard_forces k) (billiard_initial ())

00:00:37 #4488 [Verbose] >

00:00:37 #4489 [Verbose] > inl billiard_states_finite n_method k dt =

00:00:37 #4490 [Verbose] >     billiard_states n_method k dt

00:00:37 #4491 [Verbose] >     >> Some

00:00:37 #4492 [Verbose] >     |> seq.take_while_ (fun (multi_particle_state mpst) (_ : i32) =>

00:00:37 #4493 [Verbose] >         (mpst |> listm'.item 0i32).time <= 10

00:00:37 #4494 [Verbose] >     )

00:00:37 #4495 [Verbose] >

00:00:37 #4496 [Verbose] > inl momentum (particle_state st) =

00:00:37 #4497 [Verbose] >     inl m = st.mass

00:00:37 #4498 [Verbose] >     inl v = st.velocity

00:00:37 #4499 [Verbose] >     m *^ v

00:00:37 #4500 [Verbose] >

00:00:37 #4501 [Verbose] > inl system_p (multi_particle_state sts) =

00:00:37 #4502 [Verbose] >     sts |> listm.map momentum |> sum_vec

00:00:37 #4503 [Verbose] >

00:00:37 #4504 [Verbose] >

00:00:37 #4505 [Verbose] > inl time_ke_ec_x, time_ke_ec_y =

00:00:37 #4506 [Verbose] >     billiard_states_finite euler_cromer_mps 30 0.03

00:00:37 #4507 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:37 #4508 [Verbose] >         (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)

00:00:37 #4509 [Verbose] >     )

00:00:37 #4510 [Verbose] >     |> listm'.unzip

00:00:37 #4511 [Verbose] >

00:00:37 #4512 [Verbose] > inl time_ke_rk4_x, time_ke_rk4_y =

00:00:37 #4513 [Verbose] >     billiard_states_finite runge_kutta_4 30 0.03

00:00:37 #4514 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:37 #4515 [Verbose] >         (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)

00:00:37 #4516 [Verbose] >     )

00:00:37 #4517 [Verbose] >     |> listm'.unzip

00:00:37 #4518 [Verbose] >

00:00:37 #4519 [Verbose] > inl time_ke_ec_x : a i32 _ = time_ke_ec_x |> listm.toArray

00:00:37 #4520 [Verbose] > inl time_ke_ec_y : a i32 _ = time_ke_ec_y |> listm.toArray

00:00:37 #4521 [Verbose] >

00:00:37 #4522 [Verbose] > inl time_ke_rk4_x : a i32 _ = time_ke_rk4_x |> listm.toArray

00:00:37 #4523 [Verbose] > inl time_ke_rk4_y : a i32 _ = time_ke_rk4_y |> listm.toArray

00:00:37 #4524 [Verbose] >

00:00:37 #4525 [Verbose] > "system kinetic energy versus time",

00:00:37 #4526 [Verbose] > "time (s)",

00:00:37 #4527 [Verbose] > "system kinetic energy (j)",

00:00:37 #4528 [Verbose] > ;[[

00:00:37 #4529 [Verbose] >     "euler-cromer", time_ke_ec_x, time_ke_ec_y

00:00:37 #4530 [Verbose] >     "runge-kutta 4", time_ke_rk4_x, time_ke_rk4_y

00:00:37 #4531 [Verbose] > ]]

00:00:38 #4532 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5687-8720-88813c45913d\main.spi

00:00:39 #4533 [Verbose] >

00:00:39 #4534 [Verbose] > ╭─[ 1.87s - return value ]─────────────────────────────────────────────────────╮

00:00:39 #4535 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:39 #4536 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:39 #4537 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:39 #4538 [Verbose] > │ stroke="none"/>                                                              │

00:00:39 #4539 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:39 #4540 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:39 #4541 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:39 #4542 [Verbose] > │ system kinetic energy versus time                                            │

00:00:39 #4543 [Verbose] > │ </text>                                                                      │

00:00:39 #4544 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:39 #4545 [Verbose] > │ y2="75"/>                                                                    │

00:00:39 #4546 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:39 #4547 [Verbose] > │ y2="75"/>                                                                    │

00:00:39 #4548 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:39 #4549 [Verbose] > │ y2="75"/>                                                                    │

00:00:39 #4550 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:39 #4551 [Verbose] > │ y2="75"/>                                                                    │

00:00:39 #4552 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1...                        │

00:00:39 #4553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:39 #4554 [Verbose] >

00:00:39 #4555 [Verbose] > ╭─[ 1.88s - stdout ]───────────────────────────────────────────────────────────╮

00:00:39 #4556 [Verbose] > │ type UH0 =                                                                   │

00:00:39 #4557 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:39 #4558 [Verbose] > │ * float * UH0                                                                │

00:00:39 #4559 [Verbose] > │     | UH0_1                                                                  │

00:00:39 #4560 [Verbose] > │ and UH1 =                                                                    │

00:00:39 #4561 [Verbose] > │     | UH1_0 of float * float * float * float * float * float * float * float │

00:00:39 #4562 [Verbose] > │ * float * UH1                                                                │

00:00:39 #4563 [Verbose] > │     | UH1_1                                                                  │

00:00:39 #4564 [Verbose] > │ and UH2 =                                                                    │

00:00:39 #4565 [Verbose] > │     | UH2_0 of float * float * float * float * float * float * float * float │

00:00:39 #4566 [Verbose] > │ * float * float * float * float * float * float * float * float * float *    │

00:00:39 #4567 [Verbose] > │ float * UH2                                                                  │

00:00:39 #4568 [Verbose] > │     | UH2_1                                                                  │

00:00:39 #4569 [Verbose] > │ and UH3 =                                                                    │

00:00:39 #4570 [Verbose] > │     | UH3_0 of int32 * float * float * float * float * float * float * float │

00:00:39 #4571 [Verbose] > │ * float * float * UH3                                                        │

00:00:39 #4572 [Verbose] > │     | UH3_1                                                                  │

00:00:39 #4573 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:39 #4574 [Verbose] > │     | US0_0                                                                  │

00:00:39 #4575 [Verbose] > │     | US0_1 of f1_0 : float * f1_1 : float * f1_2 : float * f1_3 : float *   │

00:00:39 #4576 [Verbose] > │ f1_4 : float * f1_5 : float * f1_6 : float * f1_7 : float * f1_8 : float     │

00:00:39 #4577 [Verbose] > │ and UH4 =                                                                    │

00:00:39 #4578 [Verbose] > │     | UH4_0 of UH0 * UH4                                                     │

00:00:39 #4579 [Verbose] > │     | UH4_1                                                                  │

00:00:39 #4580 [Verbose] > │ and UH5 =                                                                    │

00:00:39 #4581 [Verbose] > │     | UH5_0 of float * float * UH5                                           │

00:00:39 #4582 [Verbose] > │     | UH5_1                                                                  │

00:00:39 #4583 [Verbose] > │ and UH6 =                                                                    │

00:00:39 #4584 [Verbose] > │     | UH6_0 of float * UH6                                                   │

00:00:39 #4585 [Verbose] > │     | UH6_1                                                                  │

00:00:39 #4586 [Verbose] > │ let rec method2 (v0 : UH0, v1 : UH0) : UH0 =                                 │

00:00:39 #4587 [Verbose] > │     match v0 with                                                            │

00:00:39 #4588 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:39 #4589 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:39 #4590 [Verbose] > │         method2(v11, v12)                                                    │

00:00:39 #4591 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:39 #4592 [Verbose] > │         v1                                                                   │

00:00:39 #4593 [Verbose] > │ and method1 (v0 : float, v1 : UH0, v2 : UH1, v3 : UH0) : UH0 =               │

00:00:39 #4594 [Verbose] > │     match v2 with                                                            │

00:00:39 #4595 [Verbose] > │     | UH1_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *)        │

00:00:39 #4596 [Verbose] > │         match v3 with                                                        │

00:00:39 #4597 [Verbose] > │         | UH0_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* Cons │

00:00:39 #4598 [Verbose] > │ *)                                                                           │

00:00:39 #4599 [Verbose] > │             let v24 : float = v9 * v0                                        │

00:00:39 #4600 [Verbose] > │             let v25 : float = v19 + v24                                      │

00:00:39 #4601 [Verbose] > │             let v26 : float = v0 * v6                                        │

00:00:39 #4602 [Verbose] > │             let v27 : float = v0 * v7                                        │

00:00:39 #4603 [Verbose] > │             let v28 : float = v0 * v8                                        │

00:00:39 #4604 [Verbose] > │             let v29 : float = v16 + v26                                      │

00:00:39 #4605 [Verbose] > │             let v30 : float = v17 + v27                                      │

00:00:39 #4606 [Verbose] > │             let v31 : float = v18 + v28                                      │

00:00:39 #4607 [Verbose] > │             let v32 : float = v0 * v10                                       │

00:00:39 #4608 [Verbose] > │             let v33 : float = v0 * v11                                       │

00:00:39 #4609 [Verbose] > │             let v34 : float = v0 * v12                                       │

00:00:39 #4610 [Verbose] > │             let v35 : float = v20 + v32                                      │

00:00:39 #4611 [Verbose] > │             let v36 : float = v21 + v33                                      │

00:00:39 #4612 [Verbose] > │             let v37 : float = v22 + v34                                      │

00:00:39 #4613 [Verbose] > │             let v38 : UH0 = UH0_0(v14, v15, v29, v30, v31, v25, v35, v36,    │

00:00:39 #4614 [Verbose] > │ v37, v1)                                                                     │

00:00:39 #4615 [Verbose] > │             method1(v0, v38, v13, v23)                                       │

00:00:39 #4616 [Verbose] > │         | _ ->                                                               │

00:00:39 #4617 [Verbose] > │             let v40 : UH0 = UH0_1                                            │

00:00:39 #4618 [Verbose] > │             method2(v1, v40)                                                 │

00:00:39 #4619 [Verbose] > │     | _ ->                                                                   │

00:00:39 #4620 [Verbose] > │         let v43 : UH0 = UH0_1                                                │

00:00:39 #4621 [Verbose] > │         method2(v1, v43)                                                     │

00:00:39 #4622 [Verbose] > │ and method4 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:39 #4623 [Verbose] > │     match v0 with                                                            │

00:00:39 #4624 [Verbose] > │     | UH2_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15,    │

00:00:39 #4625 [Verbose] > │ v16, v17, v18, v19, v20) -> (* Cons *)                                       │

00:00:39 #4626 [Verbose] > │         let v21 : UH2 = UH2_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, │

00:00:39 #4627 [Verbose] > │ v13, v14, v15, v16, v17, v18, v19, v1)                                       │

00:00:39 #4628 [Verbose] > │         method4(v20, v21)                                                    │

00:00:39 #4629 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:39 #4630 [Verbose] > │         v1                                                                   │

00:00:39 #4631 [Verbose] > │ and method3 (v0 : UH2, v1 : UH0, v2 : UH0) : UH2 =                           │

00:00:39 #4632 [Verbose] > │     match v1 with                                                            │

00:00:39 #4633 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:39 #4634 [Verbose] > │         match v2 with                                                        │

00:00:39 #4635 [Verbose] > │         | UH0_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │

00:00:39 #4636 [Verbose] > │ *)                                                                           │

00:00:39 #4637 [Verbose] > │             let v23 : UH2 = UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v13, │

00:00:39 #4638 [Verbose] > │ v14, v15, v16, v17, v18, v19, v20, v21, v0)                                  │

00:00:39 #4639 [Verbose] > │             method3(v23, v12, v22)                                           │

00:00:39 #4640 [Verbose] > │         | _ ->                                                               │

00:00:39 #4641 [Verbose] > │             let v25 : UH2 = UH2_1                                            │

00:00:39 #4642 [Verbose] > │             method4(v0, v25)                                                 │

00:00:39 #4643 [Verbose] > │     | _ ->                                                                   │

00:00:39 #4644 [Verbose] > │         let v28 : UH2 = UH2_1                                                │

00:00:39 #4645 [Verbose] > │         method4(v0, v28)                                                     │

00:00:39 #4646 [Verbose] > │ and method5 (v0 : float, v1 : UH2, v2 : UH0) : UH0 =                         │

00:00:39 #4647 [Verbose] > │     match v1 with                                                            │

00:00:39 #4648 [Verbose] > │     | UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16,   │

00:00:39 #4649 [Verbose] > │ v17, v18, v19, v20, v21) -> (* Cons *)                                       │

00:00:39 #4650 [Verbose] > │         let v22 : UH0 = method5(v0, v21, v2)                                 │

00:00:39 #4651 [Verbose] > │         let v23 : float = v0 * v18                                           │

00:00:39 #4652 [Verbose] > │         let v24 : float = v0 * v19                                           │

00:00:39 #4653 [Verbose] > │         let v25 : float = v0 * v20                                           │

00:00:39 #4654 [Verbose] > │         let v26 : float = v5 + v23                                           │

00:00:39 #4655 [Verbose] > │         let v27 : float = v6 + v24                                           │

00:00:39 #4656 [Verbose] > │         let v28 : float = v7 + v25                                           │

00:00:39 #4657 [Verbose] > │         UH0_0(v12, v13, v26, v27, v28, v17, v18, v19, v20, v22)              │

00:00:39 #4658 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:39 #4659 [Verbose] > │         v2                                                                   │

00:00:39 #4660 [Verbose] > │ and closure2 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =              │

00:00:39 #4661 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:39 #4662 [Verbose] > │     let v4 : UH0 = UH0_1                                                     │

00:00:39 #4663 [Verbose] > │     let v5 : UH0 = method1(v0, v4, v3, v2)                                   │

00:00:39 #4664 [Verbose] > │     let v6 : UH2 = UH2_1                                                     │

00:00:39 #4665 [Verbose] > │     let v7 : UH2 = method3(v6, v2, v5)                                       │

00:00:39 #4666 [Verbose] > │     let v8 : UH0 = UH0_1                                                     │

00:00:39 #4667 [Verbose] > │     let v9 : UH0 = method5(v0, v7, v8)                                       │

00:00:39 #4668 [Verbose] > │     v9                                                                       │

00:00:39 #4669 [Verbose] > │ and closure1 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =               │

00:00:39 #4670 [Verbose] > │     closure2(v0, v1)                                                         │

00:00:39 #4671 [Verbose] > │ and closure0 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =              │

00:00:39 #4672 [Verbose] > │     closure1(v0)                                                             │

00:00:39 #4673 [Verbose] > │ and method6 (v0 : UH0, v1 : UH3, v2 : int32) : struct (UH3 * int32) =        │

00:00:39 #4674 [Verbose] > │     match v0 with                                                            │

00:00:39 #4675 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:39 #4676 [Verbose] > │         let v13 : int32 = v2 + 1                                             │

00:00:39 #4677 [Verbose] > │         let v14 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1)  │

00:00:39 #4678 [Verbose] > │         method6(v12, v14, v13)                                               │

00:00:39 #4679 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:39 #4680 [Verbose] > │         struct (v1, v2)                                                      │

00:00:39 #4681 [Verbose] > │ and method7 (v0 : UH3, v1 : UH3) : UH3 =                                     │

00:00:39 #4682 [Verbose] > │     match v0 with                                                            │

00:00:39 #4683 [Verbose] > │     | UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)     │

00:00:39 #4684 [Verbose] > │         let v13 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1)  │

00:00:39 #4685 [Verbose] > │         method7(v12, v13)                                                    │

00:00:39 #4686 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:39 #4687 [Verbose] > │         v1                                                                   │

00:00:39 #4688 [Verbose] > │ and closure4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5 │

00:00:39 #4689 [Verbose] > │ : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 :       │

00:00:39 #4690 [Verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:39 #4691 [Verbose] > │ : float, v17 : float) : struct (float * float * float) =                     │

00:00:39 #4692 [Verbose] > │     let v18 : float = -1.0 * v2                                              │

00:00:39 #4693 [Verbose] > │     let v19 : float = -1.0 * v3                                              │

00:00:39 #4694 [Verbose] > │     let v20 : float = -1.0 * v4                                              │

00:00:39 #4695 [Verbose] > │     let v21 : float = v11 + v18                                              │

00:00:39 #4696 [Verbose] > │     let v22 : float = v12 + v19                                              │

00:00:39 #4697 [Verbose] > │     let v23 : float = v13 + v20                                              │

00:00:39 #4698 [Verbose] > │     let v24 : float = v21 * v21                                              │

00:00:39 #4699 [Verbose] > │     let v25 : float = v22 * v22                                              │

00:00:39 #4700 [Verbose] > │     let v26 : float = v24 + v25                                              │

00:00:39 #4701 [Verbose] > │     let v27 : float = v23 * v23                                              │

00:00:39 #4702 [Verbose] > │     let v28 : float = v26 + v27                                              │

00:00:39 #4703 [Verbose] > │     let v29 : float = sqrt v28                                               │

00:00:39 #4704 [Verbose] > │     let v30 : bool = v29 >= 0.06                                             │

00:00:39 #4705 [Verbose] > │     let v33 : float =                                                        │

00:00:39 #4706 [Verbose] > │         if v30 then                                                          │

00:00:39 #4707 [Verbose] > │             0.0                                                              │

00:00:39 #4708 [Verbose] > │         else                                                                 │

00:00:39 #4709 [Verbose] > │             let v31 : float = v29 - 0.06                                     │

00:00:39 #4710 [Verbose] > │             let v32 : float = -30.0 * v31                                    │

00:00:39 #4711 [Verbose] > │             v32                                                              │

00:00:39 #4712 [Verbose] > │     let v34 : float = v33 * v21                                              │

00:00:39 #4713 [Verbose] > │     let v35 : float = v33 * v22                                              │

00:00:39 #4714 [Verbose] > │     let v36 : float = v33 * v23                                              │

00:00:39 #4715 [Verbose] > │     let v37 : float = v34 / v29                                              │

00:00:39 #4716 [Verbose] > │     let v38 : float = v35 / v29                                              │

00:00:39 #4717 [Verbose] > │     let v39 : float = v36 / v29                                              │

00:00:39 #4718 [Verbose] > │     struct (v37, v38, v39)                                                   │

00:00:39 #4719 [Verbose] > │ and closure5 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:39 #4720 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:39 #4721 [Verbose] > │ float * float) =                                                             │

00:00:39 #4722 [Verbose] > │     struct (0.0, 0.0, 0.0)                                                   │

00:00:39 #4723 [Verbose] > │ and method8 (v0 : UH0, v1 : UH3, v2 : UH1) : UH1 =                           │

00:00:39 #4724 [Verbose] > │     match v1 with                                                            │

00:00:39 #4725 [Verbose] > │     | UH3_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *)    │

00:00:39 #4726 [Verbose] > │         let v14 : UH1 = method8(v0, v13, v2)                                 │

00:00:39 #4727 [Verbose] > │         let v15 : bool = v3 = 0                                              │

00:00:39 #4728 [Verbose] > │         let v134 : (struct (float * float * float * float * float * float *  │

00:00:39 #4729 [Verbose] > │ float * float * float) -> struct (float * float * float)) =                  │

00:00:39 #4730 [Verbose] > │             if v15 then                                                      │

00:00:39 #4731 [Verbose] > │                 let v42 : US0 =                                              │

00:00:39 #4732 [Verbose] > │                     match v0 with                                            │

00:00:39 #4733 [Verbose] > │                     | UH0_0(v16, v17, v18, v19, v20, v21, v22, v23, v24,     │

00:00:39 #4734 [Verbose] > │ v25) -> (* Cons *)                                                           │

00:00:39 #4735 [Verbose] > │                         match v25 with                                       │

00:00:39 #4736 [Verbose] > │                         | UH0_0(v26, v27, v28, v29, v30, v31, v32, v33, v34, │

00:00:39 #4737 [Verbose] > │ v35) -> (* Cons *)                                                           │

00:00:39 #4738 [Verbose] > │                             US0_1(v26, v27, v28, v29, v30, v31, v32, v33,    │

00:00:39 #4739 [Verbose] > │ v34)                                                                         │

00:00:39 #4740 [Verbose] > │                         | UH0_1 -> (* Nil *)                                 │

00:00:39 #4741 [Verbose] > │                             US0_0                                            │

00:00:39 #4742 [Verbose] > │                     | UH0_1 -> (* Nil *)                                     │

00:00:39 #4743 [Verbose] > │                         US0_0                                                │

00:00:39 #4744 [Verbose] > │                 let struct (v70 : float, v71 : float, v72 : float, v73 :     │

00:00:39 #4745 [Verbose] > │ float, v74 : float, v75 : float, v76 : float, v77 : float, v78 : float) =    │

00:00:39 #4746 [Verbose] > │                     match v42 with                                           │

00:00:39 #4747 [Verbose] > │                     | US0_0 -> (* None *)                                    │

00:00:39 #4748 [Verbose] > │                         failwith<struct (float * float * float * float *     │

00:00:39 #4749 [Verbose] > │ float * float * float * float * float)> "Option does not have a value."      │

00:00:39 #4750 [Verbose] > │                     | US0_1(v43, v44, v45, v46, v47, v48, v49, v50, v51) ->  │

00:00:39 #4751 [Verbose] > │ (* Some *)                                                                   │

00:00:39 #4752 [Verbose] > │                         struct (v43, v44, v45, v46, v47, v48, v49, v50, v51) │

00:00:39 #4753 [Verbose] > │                 closure4(v70, v71, v72, v73, v74, v75, v76, v77, v78)        │

00:00:39 #4754 [Verbose] > │             else                                                             │

00:00:39 #4755 [Verbose] > │                 let v80 : bool = v3 = 1                                      │

00:00:39 #4756 [Verbose] > │                 if v80 then                                                  │

00:00:39 #4757 [Verbose] > │                     let v94 : US0 =                                          │

00:00:39 #4758 [Verbose] > │                         match v0 with                                        │

00:00:39 #4759 [Verbose] > │                         | UH0_0(v81, v82, v83, v84, v85, v86, v87, v88, v89, │

00:00:39 #4760 [Verbose] > │ v90) -> (* Cons *)                                                           │

00:00:39 #4761 [Verbose] > │                             US0_1(v81, v82, v83, v84, v85, v86, v87, v88,    │

00:00:39 #4762 [Verbose] > │ v89)                                                                         │

00:00:39 #4763 [Verbose] > │                         | UH0_1 -> (* Nil *)                                 │

00:00:39 #4764 [Verbose] > │                             US0_0                                            │

00:00:39 #4765 [Verbose] > │                     let struct (v122 : float, v123 : float, v124 : float,    │

00:00:39 #4766 [Verbose] > │ v125 : float, v126 : float, v127 : float, v128 : float, v129 : float, v130 : │

00:00:39 #4767 [Verbose] > │ float) =                                                                     │

00:00:39 #4768 [Verbose] > │                         match v94 with                                       │

00:00:39 #4769 [Verbose] > │                         | US0_0 -> (* None *)                                │

00:00:39 #4770 [Verbose] > │                             failwith<struct (float * float * float * float * │

00:00:39 #4771 [Verbose] > │ float * float * float * float * float)> "Option does not have a value."      │

00:00:39 #4772 [Verbose] > │                         | US0_1(v95, v96, v97, v98, v99, v100, v101, v102,   │

00:00:39 #4773 [Verbose] > │ v103) -> (* Some *)                                                          │

00:00:39 #4774 [Verbose] > │                             struct (v95, v96, v97, v98, v99, v100, v101,     │

00:00:39 #4775 [Verbose] > │ v102, v103)                                                                  │

00:00:39 #4776 [Verbose] > │                     closure4(v122, v123, v124, v125, v126, v127, v128, v129, │

00:00:39 #4777 [Verbose] > │ v130)                                                                        │

00:00:39 #4778 [Verbose] > │                 else                                                         │

00:00:39 #4779 [Verbose] > │                     closure5()                                               │

00:00:39 #4780 [Verbose] > │         let struct (v135 : float, v136 : float, v137 : float) = v134 struct  │

00:00:39 #4781 [Verbose] > │ (v4, v5, v6, v7, v8, v9, v10, v11, v12)                                      │

00:00:39 #4782 [Verbose] > │         let v138 : float = v135 / v5                                         │

00:00:39 #4783 [Verbose] > │         let v139 : float = v136 / v5                                         │

00:00:39 #4784 [Verbose] > │         let v140 : float = v137 / v5                                         │

00:00:39 #4785 [Verbose] > │         UH1_0(0.0, 0.0, v10, v11, v12, 1.0, v138, v139, v140, v14)           │

00:00:39 #4786 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:39 #4787 [Verbose] > │         v2                                                                   │

00:00:39 #4788 [Verbose] > │ and closure3 () (v0 : UH0) : UH1 =                                           │

00:00:39 #4789 [Verbose] > │     let v1 : UH3 = UH3_1                                                     │

00:00:39 #4790 [Verbose] > │     let v2 : int32 = 0                                                       │

00:00:39 #4791 [Verbose] > │     let struct (v3 : UH3, v4 : int32) = method6(v0, v1, v2)                  │

00:00:39 #4792 [Verbose] > │     let v5 : UH3 = UH3_1                                                     │

00:00:39 #4793 [Verbose] > │     let v6 : UH3 = method7(v3, v5)                                           │

00:00:39 #4794 [Verbose] > │     let v7 : UH1 = UH1_1                                                     │

00:00:39 #4795 [Verbose] > │     let v8 : UH1 = method8(v0, v6, v7)                                       │

00:00:39 #4796 [Verbose] > │     v8                                                                       │

00:00:39 #4797 [Verbose] > │ and method10 (v0 : (UH0 -> UH0), v1 : UH0, v2 : int32) : UH0 =               │

00:00:39 #4798 [Verbose] > │     let v3 : bool = v2 <= 0                                                  │

00:00:39 #4799 [Verbose] > │     if v3 then                                                               │

00:00:39 #4800 [Verbose] > │         v1                                                                   │

00:00:39 #4801 [Verbose] > │     else                                                                     │

00:00:39 #4802 [Verbose] > │         let v4 : UH0 = v0 v1                                                 │

00:00:39 #4803 [Verbose] > │         let v5 : int32 = v2 - 1                                              │

00:00:39 #4804 [Verbose] > │         method10(v0, v4, v5)                                                 │

00:00:39 #4805 [Verbose] > │ and method11 (v0 : UH4, v1 : UH4) : UH4 =                                    │

00:00:39 #4806 [Verbose] > │     match v0 with                                                            │

00:00:39 #4807 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:39 #4808 [Verbose] > │         let v4 : UH4 = UH4_0(v2, v1)                                         │

00:00:39 #4809 [Verbose] > │         method11(v3, v4)                                                     │

00:00:39 #4810 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:39 #4811 [Verbose] > │         v1                                                                   │

00:00:39 #4812 [Verbose] > │ and method9 (v0 : (UH0 -> UH0), v1 : UH4, v2 : int32) : UH4 =                │

00:00:39 #4813 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:39 #4814 [Verbose] > │     let v4 : float = 0.16                                                    │

00:00:39 #4815 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:39 #4816 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:39 #4817 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:39 #4818 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:39 #4819 [Verbose] > │     let v9 : float = 0.2                                                     │

00:00:39 #4820 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:39 #4821 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:39 #4822 [Verbose] > │     let v12 : float = 1.0                                                    │

00:00:39 #4823 [Verbose] > │     let v13 : float = 0.02                                                   │

00:00:39 #4824 [Verbose] > │     let v14 : float = 0.0                                                    │

00:00:39 #4825 [Verbose] > │     let v15 : float = 0.0                                                    │

00:00:39 #4826 [Verbose] > │     let v16 : float = 0.0                                                    │

00:00:39 #4827 [Verbose] > │     let v17 : float = 0.0                                                    │

00:00:39 #4828 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:39 #4829 [Verbose] > │     let v19 : UH0 = UH0_0(v3, v4, v12, v13, v14, v8, v15, v16, v17, v18)     │

00:00:39 #4830 [Verbose] > │     let v20 : UH0 = UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v19)         │

00:00:39 #4831 [Verbose] > │     let v21 : UH0 = method10(v0, v20, v2)                                    │

00:00:39 #4832 [Verbose] > │     let v35 : US0 =                                                          │

00:00:39 #4833 [Verbose] > │         match v21 with                                                       │

00:00:39 #4834 [Verbose] > │         | UH0_0(v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) -> (* Cons │

00:00:39 #4835 [Verbose] > │ *)                                                                           │

00:00:39 #4836 [Verbose] > │             US0_1(v22, v23, v24, v25, v26, v27, v28, v29, v30)               │

00:00:39 #4837 [Verbose] > │         | UH0_1 -> (* Nil *)                                                 │

00:00:39 #4838 [Verbose] > │             US0_0                                                            │

00:00:39 #4839 [Verbose] > │     let struct (v63 : float, v64 : float, v65 : float, v66 : float, v67 :    │

00:00:39 #4840 [Verbose] > │ float, v68 : float, v69 : float, v70 : float, v71 : float) =                 │

00:00:39 #4841 [Verbose] > │         match v35 with                                                       │

00:00:39 #4842 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:39 #4843 [Verbose] > │             failwith<struct (float * float * float * float * float * float * │

00:00:39 #4844 [Verbose] > │ float * float * float)> "Option does not have a value."                      │

00:00:39 #4845 [Verbose] > │         | US0_1(v36, v37, v38, v39, v40, v41, v42, v43, v44) -> (* Some *)   │

00:00:39 #4846 [Verbose] > │             struct (v36, v37, v38, v39, v40, v41, v42, v43, v44)             │

00:00:39 #4847 [Verbose] > │     let v72 : bool = v68 <= 10.0                                             │

00:00:39 #4848 [Verbose] > │     if v72 then                                                              │

00:00:39 #4849 [Verbose] > │         let v73 : UH4 = UH4_0(v21, v1)                                       │

00:00:39 #4850 [Verbose] > │         let v74 : int32 = v2 + 1                                             │

00:00:39 #4851 [Verbose] > │         method9(v0, v73, v74)                                                │

00:00:39 #4852 [Verbose] > │     else                                                                     │

00:00:39 #4853 [Verbose] > │         let v76 : UH4 = UH4_1                                                │

00:00:39 #4854 [Verbose] > │         method11(v1, v76)                                                    │

00:00:39 #4855 [Verbose] > │ and method13 (v0 : UH0, v1 : UH6) : UH6 =                                    │

00:00:39 #4856 [Verbose] > │     match v0 with                                                            │

00:00:39 #4857 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:39 #4858 [Verbose] > │         let v12 : UH6 = method13(v11, v1)                                    │

00:00:39 #4859 [Verbose] > │         let v13 : float = v8 * v8                                            │

00:00:39 #4860 [Verbose] > │         let v14 : float = v9 * v9                                            │

00:00:39 #4861 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:39 #4862 [Verbose] > │         let v16 : float = v10 * v10                                          │

00:00:39 #4863 [Verbose] > │         let v17 : float = v15 + v16                                          │

00:00:39 #4864 [Verbose] > │         let v18 : float = sqrt v17                                           │

00:00:39 #4865 [Verbose] > │         let v19 : float = 0.5 * v3                                           │

00:00:39 #4866 [Verbose] > │         let v20 : float = v18 ** 2.0                                         │

00:00:39 #4867 [Verbose] > │         let v21 : float = v19 * v20                                          │

00:00:39 #4868 [Verbose] > │         UH6_0(v21, v12)                                                      │

00:00:39 #4869 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:39 #4870 [Verbose] > │         v1                                                                   │

00:00:39 #4871 [Verbose] > │ and method14 (v0 : UH6, v1 : float) : float =                                │

00:00:39 #4872 [Verbose] > │     match v0 with                                                            │

00:00:39 #4873 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:39 #4874 [Verbose] > │         let v4 : float = v1 + v2                                             │

00:00:39 #4875 [Verbose] > │         method14(v3, v4)                                                     │

00:00:39 #4876 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:39 #4877 [Verbose] > │         v1                                                                   │

00:00:39 #4878 [Verbose] > │ and method12 (v0 : UH4, v1 : UH5) : UH5 =                                    │

00:00:39 #4879 [Verbose] > │     match v0 with                                                            │

00:00:39 #4880 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:39 #4881 [Verbose] > │         let v4 : UH5 = method12(v3, v1)                                      │

00:00:39 #4882 [Verbose] > │         let v18 : US0 =                                                      │

00:00:39 #4883 [Verbose] > │             match v2 with                                                    │

00:00:39 #4884 [Verbose] > │             | UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons  │

00:00:39 #4885 [Verbose] > │ *)                                                                           │

00:00:39 #4886 [Verbose] > │                 US0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13)                │

00:00:39 #4887 [Verbose] > │             | UH0_1 -> (* Nil *)                                             │

00:00:39 #4888 [Verbose] > │                 US0_0                                                        │

00:00:39 #4889 [Verbose] > │         let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50  │

00:00:39 #4890 [Verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) =               │

00:00:39 #4891 [Verbose] > │             match v18 with                                                   │

00:00:39 #4892 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:39 #4893 [Verbose] > │                 failwith<struct (float * float * float * float * float *     │

00:00:39 #4894 [Verbose] > │ float * float * float * float)> "Option does not have a value."              │

00:00:39 #4895 [Verbose] > │             | US0_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some  │

00:00:39 #4896 [Verbose] > │ *)                                                                           │

00:00:39 #4897 [Verbose] > │                 struct (v19, v20, v21, v22, v23, v24, v25, v26, v27)         │

00:00:39 #4898 [Verbose] > │         let v55 : UH6 = UH6_1                                                │

00:00:39 #4899 [Verbose] > │         let v56 : UH6 = method13(v2, v55)                                    │

00:00:39 #4900 [Verbose] > │         let v57 : float = 0.0                                                │

00:00:39 #4901 [Verbose] > │         let v58 : float = method14(v56, v57)                                 │

00:00:39 #4902 [Verbose] > │         UH5_0(v51, v58, v4)                                                  │

00:00:39 #4903 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:39 #4904 [Verbose] > │         v1                                                                   │

00:00:39 #4905 [Verbose] > │ and method15 (v0 : UH5, v1 : UH6, v2 : UH6) : struct (UH6 * UH6) =           │

00:00:39 #4906 [Verbose] > │     match v0 with                                                            │

00:00:39 #4907 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:39 #4908 [Verbose] > │         let v6 : UH6 = UH6_0(v3, v1)                                         │

00:00:39 #4909 [Verbose] > │         let v7 : UH6 = UH6_0(v4, v2)                                         │

00:00:39 #4910 [Verbose] > │         method15(v5, v6, v7)                                                 │

00:00:39 #4911 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:39 #4912 [Verbose] > │         struct (v1, v2)                                                      │

00:00:39 #4913 [Verbose] > │ and method16 (v0 : UH6, v1 : UH6) : UH6 =                                    │

00:00:39 #4914 [Verbose] > │     match v0 with                                                            │

00:00:39 #4915 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:39 #4916 [Verbose] > │         let v4 : UH6 = UH6_0(v2, v1)                                         │

00:00:39 #4917 [Verbose] > │         method16(v3, v4)                                                     │

00:00:39 #4918 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:39 #4919 [Verbose] > │         v1                                                                   │

00:00:39 #4920 [Verbose] > │ and method18 (v0 : UH1, v1 : UH1) : UH1 =                                    │

00:00:39 #4921 [Verbose] > │     match v0 with                                                            │

00:00:39 #4922 [Verbose] > │     | UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:39 #4923 [Verbose] > │         let v12 : UH1 = UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:39 #4924 [Verbose] > │         method18(v11, v12)                                                   │

00:00:39 #4925 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:39 #4926 [Verbose] > │         v1                                                                   │

00:00:39 #4927 [Verbose] > │ and method17 (v0 : UH1, v1 : UH1, v2 : UH1) : UH1 =                          │

00:00:39 #4928 [Verbose] > │     match v1 with                                                            │

00:00:39 #4929 [Verbose] > │     | UH1_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:39 #4930 [Verbose] > │         match v2 with                                                        │

00:00:39 #4931 [Verbose] > │         | UH1_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │

00:00:39 #4932 [Verbose] > │ *)                                                                           │

00:00:39 #4933 [Verbose] > │             let v23 : float = v3 + v13                                       │

00:00:39 #4934 [Verbose] > │             let v24 : float = v4 + v14                                       │

00:00:39 #4935 [Verbose] > │             let v25 : float = v8 + v18                                       │

00:00:39 #4936 [Verbose] > │             let v26 : float = v5 + v15                                       │

00:00:39 #4937 [Verbose] > │             let v27 : float = v6 + v16                                       │

00:00:39 #4938 [Verbose] > │             let v28 : float = v7 + v17                                       │

00:00:39 #4939 [Verbose] > │             let v29 : float = v9 + v19                                       │

00:00:39 #4940 [Verbose] > │             let v30 : float = v10 + v20                                      │

00:00:39 #4941 [Verbose] > │             let v31 : float = v11 + v21                                      │

00:00:39 #4942 [Verbose] > │             let v32 : UH1 = UH1_0(v23, v24, v26, v27, v28, v25, v29, v30,    │

00:00:39 #4943 [Verbose] > │ v31, v0)                                                                     │

00:00:39 #4944 [Verbose] > │             method17(v32, v12, v22)                                          │

00:00:39 #4945 [Verbose] > │         | _ ->                                                               │

00:00:39 #4946 [Verbose] > │             let v34 : UH1 = UH1_1                                            │

00:00:39 #4947 [Verbose] > │             method18(v0, v34)                                                │

00:00:39 #4948 [Verbose] > │     | _ ->                                                                   │

00:00:39 #4949 [Verbose] > │         let v37 : UH1 = UH1_1                                                │

00:00:39 #4950 [Verbose] > │         method18(v0, v37)                                                    │

00:00:39 #4951 [Verbose] > │ and closure8 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =              │

00:00:39 #4952 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:39 #4953 [Verbose] > │     let v4 : float = v0 / 2.0                                                │

00:00:39 #4954 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:39 #4955 [Verbose] > │     let v6 : UH0 = method1(v4, v5, v3, v2)                                   │

00:00:39 #4956 [Verbose] > │     let v7 : UH1 = v1 v6                                                     │

00:00:39 #4957 [Verbose] > │     let v8 : UH0 = UH0_1                                                     │

00:00:39 #4958 [Verbose] > │     let v9 : UH0 = method1(v4, v8, v7, v2)                                   │

00:00:39 #4959 [Verbose] > │     let v10 : UH1 = v1 v9                                                    │

00:00:39 #4960 [Verbose] > │     let v11 : UH0 = UH0_1                                                    │

00:00:39 #4961 [Verbose] > │     let v12 : UH0 = method1(v0, v11, v10, v2)                                │

00:00:39 #4962 [Verbose] > │     let v13 : UH1 = v1 v12                                                   │

00:00:39 #4963 [Verbose] > │     let v14 : float = v0 / 6.0                                               │

00:00:39 #4964 [Verbose] > │     let v15 : UH1 = UH1_1                                                    │

00:00:39 #4965 [Verbose] > │     let v16 : UH1 = method17(v15, v3, v7)                                    │

00:00:39 #4966 [Verbose] > │     let v17 : UH1 = UH1_1                                                    │

00:00:39 #4967 [Verbose] > │     let v18 : UH1 = method17(v17, v16, v7)                                   │

00:00:39 #4968 [Verbose] > │     let v19 : UH1 = UH1_1                                                    │

00:00:39 #4969 [Verbose] > │     let v20 : UH1 = method17(v19, v18, v10)                                  │

00:00:39 #4970 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:39 #4971 [Verbose] > │     let v22 : UH1 = method17(v21, v20, v10)                                  │

00:00:39 #4972 [Verbose] > │     let v23 : UH1 = UH1_1                                                    │

00:00:39 #4973 [Verbose] > │     let v24 : UH1 = method17(v23, v22, v13)                                  │

00:00:39 #4974 [Verbose] > │     let v25 : UH0 = UH0_1                                                    │

00:00:39 #4975 [Verbose] > │     let v26 : UH0 = method1(v14, v25, v24, v2)                               │

00:00:39 #4976 [Verbose] > │     v26                                                                      │

00:00:39 #4977 [Verbose] > │ and closure7 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =               │

00:00:39 #4978 [Verbose] > │     closure8(v0, v1)                                                         │

00:00:39 #4979 [Verbose] > │ and closure6 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =              │

00:00:39 #4980 [Verbose] > │     closure7(v0)                                                             │

00:00:39 #4981 [Verbose] > │ and method19 (v0 : UH4, v1 : UH5) : UH5 =                                    │

00:00:39 #4982 [Verbose] > │     match v0 with                                                            │

00:00:39 #4983 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:39 #4984 [Verbose] > │         let v4 : UH5 = method19(v3, v1)                                      │

00:00:39 #4985 [Verbose] > │         let v18 : US0 =                                                      │

00:00:39 #4986 [Verbose] > │             match v2 with                                                    │

00:00:39 #4987 [Verbose] > │             | UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons  │

00:00:39 #4988 [Verbose] > │ *)                                                                           │

00:00:39 #4989 [Verbose] > │                 US0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13)                │

00:00:39 #4990 [Verbose] > │             | UH0_1 -> (* Nil *)                                             │

00:00:39 #4991 [Verbose] > │                 US0_0                                                        │

00:00:39 #4992 [Verbose] > │         let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50  │

00:00:39 #4993 [Verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) =               │

00:00:39 #4994 [Verbose] > │             match v18 with                                                   │

00:00:39 #4995 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:39 #4996 [Verbose] > │                 failwith<struct (float * float * float * float * float *     │

00:00:39 #4997 [Verbose] > │ float * float * float * float)> "Option does not have a value."              │

00:00:39 #4998 [Verbose] > │             | US0_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some  │

00:00:39 #4999 [Verbose] > │ *)                                                                           │

00:00:39 #5000 [Verbose] > │                 struct (v19, v20, v21, v22, v23, v24, v25, v26, v27)         │

00:00:39 #5001 [Verbose] > │         let v55 : UH6 = UH6_1                                                │

00:00:39 #5002 [Verbose] > │         let v56 : UH6 = method13(v2, v55)                                    │

00:00:39 #5003 [Verbose] > │         let v57 : float = 0.0                                                │

00:00:39 #5004 [Verbose] > │         let v58 : float = method14(v56, v57)                                 │

00:00:39 #5005 [Verbose] > │         UH5_0(v51, v58, v4)                                                  │

00:00:39 #5006 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:39 #5007 [Verbose] > │         v1                                                                   │

00:00:39 #5008 [Verbose] > │ and method21 (v0 : UH6, v1 : int32) : int32 =                                │

00:00:39 #5009 [Verbose] > │     match v0 with                                                            │

00:00:39 #5010 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:39 #5011 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:39 #5012 [Verbose] > │         method21(v3, v4)                                                     │

00:00:39 #5013 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:39 #5014 [Verbose] > │         v1                                                                   │

00:00:39 #5015 [Verbose] > │ and method22 (v0 : (float []), v1 : UH6, v2 : int32) : int32 =               │

00:00:39 #5016 [Verbose] > │     match v1 with                                                            │

00:00:39 #5017 [Verbose] > │     | UH6_0(v3, v4) -> (* Cons *)                                            │

00:00:39 #5018 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:39 #5019 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:39 #5020 [Verbose] > │         method22(v0, v4, v5)                                                 │

00:00:39 #5021 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:39 #5022 [Verbose] > │         v2                                                                   │

00:00:39 #5023 [Verbose] > │ and method20 (v0 : UH6) : (float []) =                                       │

00:00:39 #5024 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:39 #5025 [Verbose] > │     let v2 : int32 = method21(v0, v1)                                        │

00:00:39 #5026 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:39 #5027 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:39 #5028 [Verbose] > │     let v5 : int32 = method22(v3, v0, v4)                                    │

00:00:39 #5029 [Verbose] > │     v3                                                                       │

00:00:39 #5030 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:39 #5031 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:39 #5032 [Verbose] > │     let v0 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure0()          │

00:00:39 #5033 [Verbose] > │     let v1 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v0 0.03                        │

00:00:39 #5034 [Verbose] > │     let v2 : (UH0 -> UH1) = closure3()                                       │

00:00:39 #5035 [Verbose] > │     let v3 : (UH0 -> UH0) = v1 v2                                            │

00:00:39 #5036 [Verbose] > │     let v4 : UH4 = UH4_1                                                     │

00:00:39 #5037 [Verbose] > │     let v5 : int32 = 0                                                       │

00:00:39 #5038 [Verbose] > │     let v6 : UH4 = method9(v3, v4, v5)                                       │

00:00:39 #5039 [Verbose] > │     let v7 : UH5 = UH5_1                                                     │

00:00:39 #5040 [Verbose] > │     let v8 : UH5 = method12(v6, v7)                                          │

00:00:39 #5041 [Verbose] > │     let v9 : UH6 = UH6_1                                                     │

00:00:39 #5042 [Verbose] > │     let v10 : UH6 = UH6_1                                                    │

00:00:39 #5043 [Verbose] > │     let struct (v11 : UH6, v12 : UH6) = method15(v8, v9, v10)                │

00:00:39 #5044 [Verbose] > │     let v13 : UH6 = UH6_1                                                    │

00:00:39 #5045 [Verbose] > │     let v14 : UH6 = method16(v11, v13)                                       │

00:00:39 #5046 [Verbose] > │     let v15 : UH6 = UH6_1                                                    │

00:00:39 #5047 [Verbose] > │     let v16 : UH6 = method16(v12, v15)                                       │

00:00:39 #5048 [Verbose] > │     let v17 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure6()         │

00:00:39 #5049 [Verbose] > │     let v18 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v17 0.03                      │

00:00:39 #5050 [Verbose] > │     let v19 : (UH0 -> UH0) = v18 v2                                          │

00:00:39 #5051 [Verbose] > │     let v20 : UH4 = UH4_1                                                    │

00:00:39 #5052 [Verbose] > │     let v21 : int32 = 0                                                      │

00:00:39 #5053 [Verbose] > │     let v22 : UH4 = method9(v19, v20, v21)                                   │

00:00:39 #5054 [Verbose] > │     let v23 : UH5 = UH5_1                                                    │

00:00:39 #5055 [Verbose] > │     let v24 : UH5 = method19(v22, v23)                                       │

00:00:39 #5056 [Verbose] > │     let v25 : UH6 = UH6_1                                                    │

00:00:39 #5057 [Verbose] > │     let v26 : UH6 = UH6_1                                                    │

00:00:39 #5058 [Verbose] > │     let struct (v27 : UH6, v28 : UH6) = method15(v24, v25, v26)              │

00:00:39 #5059 [Verbose] > │     let v29 : UH6 = UH6_1                                                    │

00:00:39 #5060 [Verbose] > │     let v30 : UH6 = method16(v27, v29)                                       │

00:00:39 #5061 [Verbose] > │     let v31 : UH6 = UH6_1                                                    │

00:00:39 #5062 [Verbose] > │     let v32 : UH6 = method16(v28, v31)                                       │

00:00:39 #5063 [Verbose] > │     let v33 : (float []) = method20(v14)                                     │

00:00:39 #5064 [Verbose] > │     let v34 : (float []) = method20(v16)                                     │

00:00:39 #5065 [Verbose] > │     let v35 : (float []) = method20(v30)                                     │

00:00:39 #5066 [Verbose] > │     let v36 : (float []) = method20(v32)                                     │

00:00:39 #5067 [Verbose] > │     let v37 : string = "euler-cromer"                                        │

00:00:39 #5068 [Verbose] > │     let v38 : string = "runge-kutta 4"                                       │

00:00:39 #5069 [Verbose] > │     let v39 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:39 #5070 [Verbose] > │ (v37, v33, v34); struct (v38, v35, v36)|]                                    │

00:00:39 #5071 [Verbose] > │     let v40 : string = "system kinetic energy versus time"                   │

00:00:39 #5072 [Verbose] > │     let v41 : string = "time (s)"                                            │

00:00:39 #5073 [Verbose] > │     let v42 : string = "system kinetic energy (j)"                           │

00:00:39 #5074 [Verbose] > │     struct (v40, v41, v42, v39)                                              │

00:00:39 #5075 [Verbose] > │ method0()                                                                    │

00:00:39 #5076 [Verbose] > │                                                                              │

00:00:39 #5077 [Verbose] > │                                                                              │

00:00:39 #5078 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:39 #5079 [Verbose] >

00:00:39 #5080 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:39 #5081 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:39 #5082 [Verbose] > │ ### wave 1                                                                   │

00:00:39 #5083 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:39 #5084 [Verbose] >

00:00:39 #5085 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:39 #5086 [Verbose] > // // test

00:00:39 #5087 [Verbose] >

00:00:39 #5088 [Verbose] > inl linear_spring k re (particle_state st1) (particle_state st2) =

00:00:39 #5089 [Verbose] >     inl r1 = st1.pos_vec

00:00:39 #5090 [Verbose] >     inl r2 = st2.pos_vec

00:00:39 #5091 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:39 #5092 [Verbose] >     inl r21mag = magnitude r21

00:00:39 #5093 [Verbose] >     -k * (r21mag - re) *^ r21 ^/ r21mag

00:00:39 #5094 [Verbose] >

00:00:39 #5095 [Verbose] > inl fixed_linear_spring k re r1 =

00:00:39 #5096 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:39 #5097 [Verbose] >     linear_spring k re (particle_state { default_particle_state' with pos_vec =

00:00:39 #5098 [Verbose] > r1 })

00:00:39 #5099 [Verbose] >

00:00:39 #5100 [Verbose] > inl forces_string () =

00:00:39 #5101 [Verbose] >     [[

00:00:39 #5102 [Verbose] >         ExternalForce (0, fixed_linear_spring 5384 0 (zero_vec ()))

00:00:39 #5103 [Verbose] >         ExternalForce (63, fixed_linear_spring 5384 0 (0.65 *^ i_hat ()))

00:00:39 #5104 [Verbose] >     ]] /@ (

00:00:39 #5105 [Verbose] >         listm'.init_series 0 59 1

00:00:39 #5106 [Verbose] >         |> listm.map (fun n => InternalForce (n, n + 1, linear_spring 5384 0))

00:00:39 #5107 [Verbose] >     )

00:00:39 #5108 [Verbose] >

00:00:39 #5109 [Verbose] > inl string_update dt =

00:00:39 #5110 [Verbose] >     update_mps (runge_kutta_4 dt) (forces_string ())

00:00:39 #5111 [Verbose] >

00:00:39 #5112 [Verbose] > inl string_initial_overtone n =

00:00:39 #5113 [Verbose] >     inl ball_mass = 0.0008293 * 0.65 / 64

00:00:39 #5114 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:39 #5115 [Verbose] >     listm'.init_series 0.01 0.64 0.01

00:00:39 #5116 [Verbose] >     |> listm.map (fun x =>

00:00:39 #5117 [Verbose] >         inl y = 0.005 * sin (conv n * pi * x / 0.65)

00:00:39 #5118 [Verbose] >         particle_state {

00:00:39 #5119 [Verbose] >             default_particle_state' with

00:00:39 #5120 [Verbose] >                 mass = ball_mass

00:00:39 #5121 [Verbose] >                 pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()

00:00:39 #5122 [Verbose] >                 velocity = zero_vec ()

00:00:39 #5123 [Verbose] >         }

00:00:39 #5124 [Verbose] >     )

00:00:39 #5125 [Verbose] >     |> multi_particle_state

00:00:39 #5126 [Verbose] >

00:00:39 #5127 [Verbose] > inl string_initial_pluck () =

00:00:39 #5128 [Verbose] >     inl ball_mass = 0.0008293 * 0.65 / 64

00:00:39 #5129 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:39 #5130 [Verbose] >     listm'.init_series 0.01 0.64 0.01

00:00:39 #5131 [Verbose] >     |> listm.map (fun x =>

00:00:39 #5132 [Verbose] >         inl y =

00:00:39 #5133 [Verbose] >             inl n = if x <= 0.51 then 0 else 0.65

00:00:39 #5134 [Verbose] >             0.005 / (0.51 - n) * (x - n)

00:00:39 #5135 [Verbose] >         particle_state {

00:00:39 #5136 [Verbose] >             default_particle_state' with

00:00:39 #5137 [Verbose] >                 mass = ball_mass

00:00:39 #5138 [Verbose] >                 pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()

00:00:39 #5139 [Verbose] >                 velocity = zero_vec ()

00:00:39 #5140 [Verbose] >         }

00:00:39 #5141 [Verbose] >     )

00:00:39 #5142 [Verbose] >     |> multi_particle_state

00:00:39 #5143 [Verbose] >

00:00:39 #5144 [Verbose] > let main () =

00:00:39 #5145 [Verbose] >     inl ~frames = listm'.init_series 0 9 1f64

00:00:39 #5146 [Verbose] >     inl initial_state = string_initial_overtone 3i32

00:00:39 #5147 [Verbose] >     inl frames =

00:00:39 #5148 [Verbose] >         frames

00:00:39 #5149 [Verbose] >         |> listm.map (fun n =>

00:00:39 #5150 [Verbose] >             inl (multi_particle_state sts) =

00:00:39 #5151 [Verbose] >                 seq.iterate' (string_update 0.000025) initial_state |> fun f =>

00:00:39 #5152 [Verbose] > f 0f64

00:00:39 #5153 [Verbose] >             inl rs =

00:00:39 #5154 [Verbose] >                 [[ zero_vec () ]]

00:00:39 #5155 [Verbose] >                 /@ (sts |> listm.map (fun (particle_state st) => st.pos_vec))

00:00:39 #5156 [Verbose] >                 /@ [[ 0.65 *^ i_hat () ]]

00:00:39 #5157 [Verbose] >             inl x, y =

00:00:39 #5158 [Verbose] >                 rs

00:00:39 #5159 [Verbose] >                 |> listm.map (fun r => r.x, r.y)

00:00:39 #5160 [Verbose] >                 |> listm'.unzip

00:00:39 #5161 [Verbose] >             inl x : a i32 _ = x |> listm.toArray

00:00:39 #5162 [Verbose] >             inl y : a i32 _ = y |> listm.toArray

00:00:39 #5163 [Verbose] >             x, y

00:00:39 #5164 [Verbose] >         )

00:00:39 #5165 [Verbose] >         |> listm.toArray : a i32 _

00:00:39 #5166 [Verbose] >

00:00:39 #5167 [Verbose] >     inl n = 0i32

00:00:39 #5168 [Verbose] >

00:00:39 #5169 [Verbose] >     inl x, y = index frames n

00:00:39 #5170 [Verbose] >

00:00:39 #5171 [Verbose] >     "wave",

00:00:39 #5172 [Verbose] >     "position (m)",

00:00:39 #5173 [Verbose] >     "displacement (m)",

00:00:39 #5174 [Verbose] >     ;[[

00:00:39 #5175 [Verbose] >         ($"$\"{!n}\"" : string), x, y

00:00:39 #5176 [Verbose] >     ]]

00:00:40 #5177 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5892-9269-926cd3b257ad\main.spi

00:00:40 #5178 [Verbose] > Stack overflow.

00:00:40 #5179 [Verbose] > Repeat 4 times:

00:00:40 #5180 [Verbose] > --------------------------------

00:00:40 #5181 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5182 [Verbose] > --------------------------------

00:00:40 #5183 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5184 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5185 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5186 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5187 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5188 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5189 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5190 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5191 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5192 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5193 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5194 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5195 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5196 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5197 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5198 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5199 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5200 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5201 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5202 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5203 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5204 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5205 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5206 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5207 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5208 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5209 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5210 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5211 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5212 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5213 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5214 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5215 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5216 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5217 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5218 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5219 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5220 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5221 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5222 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5223 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5224 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5225 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5226 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5227 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5228 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5229 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5230 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5231 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5232 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5233 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5234 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5235 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5236 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5237 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5238 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5239 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5240 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5241 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5242 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5243 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5244 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5245 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5246 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5247 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5248 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5249 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5250 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5251 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5252 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5253 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5254 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5255 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5256 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5257 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5258 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5259 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5260 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5261 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5262 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5263 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5264 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5265 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5266 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5267 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5268 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5269 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5270 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5271 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5272 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5273 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5274 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5275 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5276 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5277 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5278 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5279 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5280 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5281 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5282 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5283 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5284 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5285 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5286 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5287 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5288 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5289 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5290 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5291 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5292 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5293 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5294 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5295 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5296 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5297 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5298 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5299 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5300 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5301 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5302 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5303 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5304 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5305 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5306 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5307 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5308 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5309 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5310 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5311 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5312 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5313 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5314 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5315 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5316 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5317 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5318 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5319 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5320 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5321 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5322 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5323 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5324 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5325 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5326 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5327 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5328 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5329 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5330 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5331 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5332 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5333 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5334 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5335 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5336 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5337 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5338 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5339 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5340 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5341 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5342 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5343 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5344 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5345 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5346 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5347 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5348 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5349 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5350 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5351 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5352 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5353 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5354 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5355 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5356 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5357 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5358 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5359 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5360 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5361 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5362 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5363 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5364 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5365 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5366 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5367 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5368 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5369 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5370 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5371 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5372 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5373 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5374 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5375 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5376 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5377 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5378 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5379 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5380 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5381 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5382 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5383 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5384 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5385 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5386 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5387 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5388 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5389 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5390 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5391 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5392 [Verbose] >    at Spiral.PartEval.Main.body@1060-29(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, Microsoft.FSharp.Core.FSharpFunc`2<Boolean,Microsoft.FSharp.Core.FSharpFunc`2<LangEnv,Microsoft.FSharp.Core.FSharpFunc`2<Data,Data>>>, E, E, System.String, Int32, LangEnv, L`2<Int32,Ty>, H`1<<>f__AnonymousType3599534058`5<Microsoft.FSharp.Collections.FSharpMap`2<System.String,Ty>,Boolean,UnionLayout,System.Tuple`2<System.String,Ty>[],System.Collections.Generic.Dictionary`2<System.String,Int32>>>, Microsoft.FSharp.Collections.FSharpSet`1<System.String>)

00:00:40 #5393 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5394 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5395 [Verbose] >    at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5396 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5397 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5398 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5399 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5400 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5401 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5402 [Verbose] >    at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5403 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5404 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:40 #5405 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5406 [Verbose] >    at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5407 [Verbose] >    at Spiral.PartEval.Main.term_scope@579(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:40 #5408 [Verbose] >    at Spiral.PartEval.Main.peval(TopEnv, E)

00:00:40 #5409 [Verbose] >    at Spiral.Supervisor.file_build$cont@383(System.String, SupervisorState, PrepassTopEnv, Microsoft.FSharp.Core.FSharpOption`1<E>, Microsoft.FSharp.Core.Unit)

00:00:40 #5410 [Verbose] >    at Spiral.Supervisor.x2yJ@1-28(SupervisorErrorSources, System.String, System.String, SupervisorState, PrepassTopEnv)

00:00:40 #5411 [Verbose] >    at Spiral.Supervisor+x2yJ@380-41.Do(PrepassTopEnv)

00:00:40 #5412 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5413 [Verbose] >    at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5414 [Verbose] >    at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5415 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5416 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5417 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5418 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5419 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5420 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5421 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5422 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5423 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5424 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5425 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5426 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5427 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5428 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5429 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5430 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5431 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5432 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5433 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5434 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5435 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5436 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5437 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5438 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5439 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5440 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5441 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5442 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5443 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5444 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5445 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5446 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5447 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5448 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5449 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5450 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5451 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5452 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5453 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5454 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5455 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5456 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5457 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5458 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5459 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5460 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5461 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5462 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5463 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5464 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5465 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5466 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5467 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5468 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5469 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5470 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5471 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5472 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5473 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5474 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5475 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5476 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5477 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5478 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5479 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5480 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5481 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5482 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5483 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5484 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5485 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5486 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5487 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5488 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5489 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5490 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5491 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5492 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5493 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5494 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5495 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5496 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5497 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5498 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5499 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5500 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5501 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5502 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5503 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5504 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5505 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5506 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5507 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5508 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5509 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5510 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5511 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5512 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5513 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5514 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5515 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5516 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:40 #5517 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5518 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5519 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5520 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:40 #5521 [Verbose] >    at Hopac.Core.Worker.Run(Hopac.Scheduler, Int32)

00:00:40 #5522 [Verbose] >    at Hopac.Platform.Scheduler+thread@30.Invoke()

00:00:40 #5523 [Verbose] >    at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)

00:00:47 #5524 [Debug] executeAsync / exitCode: -1073741571 / output.Length: 186394

00:00:47 #5525 [Debug] awaitCompiler / exitCode: -1073741571 / result: pwd: C:\home\git\polyglot\lib\spiral

dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

Server bound to: http://localhost:13805

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3563-6396-649308ff3108\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3752-5249-5423c1b82fd8\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3771-7112-7c834137d874\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3814-1470-17228ce12241\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3841-4187-421066369573\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3872-7288-7f244ac87738\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3893-9369-9aef04e0d068\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3913-1313-1e910eff4e95\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3939-3921-3d9e1cfccd62\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3954-5448-5d2375bb80dc\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3974-7446-7843b6065d8b\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-3990-9022-9d082a653bb3\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4005-0577-0a28ac0f572a\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4020-2090-26526549710d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4038-3888-3d53436d808d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4058-5884-5a2a570ca588\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4088-8844-8c9c9153ebe2\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4111-1117-12042f2f6118\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4126-2654-23e360617ca0\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4142-4200-4a9db0945553\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4170-7065-757a666c4b87\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4226-2621-2314474311d7\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4240-4092-4ab2ab7ee34d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4261-6126-62fa89daeadd\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4338-3892-39d5822bbc2c\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4363-6324-6c02bb76acf5\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4413-1367-1a8525633d88\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4434-3492-3850f38fbd43\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4467-6709-6c23b11391f3\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4500-0051-0cb7e0ef89fb\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4521-2164-292435998bc7\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4554-5484-5dcc94a496df\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4589-8984-874e904df6b3\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4608-0849-0e17609ea45c\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4628-2815-2523e68eb9e1\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4644-4426-42e89a7e7717\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4661-6195-6927c9620949\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4681-8100-8b11eed5dc2e\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4698-9839-946543ef3b6e\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4715-1560-134b52f9a2b5\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4732-3291-39eacc875deb\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4751-5161-5eda518d431b\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4767-6797-6f7f694c9798\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4788-8823-84f880051a92\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4805-0567-0344527e908b\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4822-2295-2a4b6c3261b0\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4843-4394-4cd704f62be1\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4866-6691-62c7cd0c51f1\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4890-9058-90bf2ce01edd\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4913-1338-1c2255853f21\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4952-5205-5c17a482a0d1\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4969-6966-662ca6a34fa0\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-4988-8890-8a802d0299ac\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5006-0615-03b2e00c9894\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5023-2324-2365926d769b\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5053-5302-596a1da7b8ab\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5075-7577-7f8cd3e4e875\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5099-9915-94848a507f77\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5125-2517-2e97892ae4ca\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5150-5008-55990005bd3c\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5173-7384-74a1ac0c282e\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5198-9820-918020b65f6c\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5358-5897-54339e1531ef\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5456-5629-5431daf157dd\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5475-7596-700bcf3d6158\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5570-7088-70c0d850fede\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5600-0080-0763da4e4ea0\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5687-8720-88813c45913d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1302-5892-9269-926cd3b257ad\main.spi

[Stack overflow.]

[Repeat 4 times:]

[--------------------------------]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[--------------------------------]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.body@1060-29(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, Microsoft.FSharp.Core.FSharpFunc`2<Boolean,Microsoft.FSharp.Core.FSharpFunc`2<LangEnv,Microsoft.FSharp.Core.FSharpFunc`2<Data,Data>>>, E, E, System.String, Int32, LangEnv, L`2<Int32,Ty>, H`1<<>f__AnonymousType3599534058`5<Microsoft.FSharp.Collections.FSharpMap`2<System.String,Ty>,Boolean,UnionLayout,System.Tuple`2<System.String,Ty>[],System.Collections.Generic.Dictionary`2<System.String,Int32>>>, Microsoft.FSharp.Collections.FSharpSet`1<System.String>)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope@579(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.peval(TopEnv, E)]

[   at Spiral.Supervisor.file_build$cont@383(System.String, SupervisorState, PrepassTopEnv, Microsoft.FSharp.Core.FSharpOption`1<E>, Microsoft.FSharp.Core.Unit)]

[   at Spiral.Supervisor.x2yJ@1-28(SupervisorErrorSources, System.String, System.String, SupervisorState, PrepassTopEnv)]

[   at Spiral.Supervisor+x2yJ@380-41.Do(PrepassTopEnv)]

[   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Worker.Run(Hopac.Scheduler, Int32)]

[   at Hopac.Platform.Scheduler+thread@30.Invoke()]

[   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)]

00:00:47 #5526 [Warning] executeAsync / WaitForExitAsync / ex: System.Threading.Tasks.TaskCanceledException: A task was canceled.

00:00:47 #5527 [Debug] executeAsync / exitCode: -2147483648 / output.Length: 329047

00:00:47 #5528 [Debug] main / executeCommand / exitCode: -2147483648


# Invoke-Block / $Retries: 5 / $OnError: Stop / $exitcode: -2147483648 / $EnvVars: null / $Error: '' / $ScriptBlock:
'. ../../apps/spiral/dist/Supervisor$(GetExecutableSuffix) --executecommand "pwsh -c `"../../scripts/invoke-dib.ps1 physics.dib`""'


00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 physics.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # physics                                                                    │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > #!import ../../lib/fsharp/Plotting.dib

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:03 #21 [Verbose] > #r

00:00:03 #22 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

00:00:03 #23 [Verbose] > spNetCore.Html.Abstractions.dll"

00:00:03 #24 [Verbose] > #r

00:00:03 #25 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #26 [Verbose] > otNet.Interactive.dll"

00:00:03 #27 [Verbose] > #r

00:00:03 #28 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #29 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:03 #30 [Verbose] > #r

00:00:03 #31 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #32 [Verbose] > otNet.Interactive.Formatting.dll"

00:00:03 #33 [Verbose] > open System

00:00:03 #34 [Verbose] > open System.IO

00:00:03 #35 [Verbose] > open System.Text

00:00:03 #36 [Verbose] > open Microsoft.DotNet.Interactive.Formatting

00:00:07 #37 [Verbose] >

00:00:07 #38 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #39 [Verbose] > #r

00:00:07 #40 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:07 #41 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:07 #42 [Verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

00:00:07 #43 [Verbose] > #r

00:00:07 #44 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:07 #45 [Verbose] > otNet.Interactive.dll"

00:00:07 #46 [Verbose] > open type Microsoft.DotNet.Interactive.Kernel

00:00:07 #47 [Verbose] >

00:00:07 #48 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #49 [Verbose] > //// test

00:00:07 #50 [Verbose] >

00:00:07 #51 [Verbose] > Formatter.ListExpansionLimit <- 100

00:00:07 #52 [Verbose] >

00:00:07 #53 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #54 [Verbose] > #r

00:00:07 #55 [Verbose] > @"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

00:00:07 #56 [Verbose] > dard2.1/FSharp.Control.AsyncSeq.dll"

00:00:07 #57 [Verbose] > #r

00:00:07 #58 [Verbose] > @"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

00:00:07 #59 [Verbose] > 0/System.Reactive.dll"

00:00:07 #60 [Verbose] > #r

00:00:07 #61 [Verbose] > @"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib

00:00:07 #62 [Verbose] > netstandard2.0/System.Reactive.Linq.dll"

00:00:07 #63 [Verbose] > #r

00:00:07 #64 [Verbose] > @"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

00:00:07 #65 [Verbose] > #r

00:00:07 #66 [Verbose] > @"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

00:00:07 #67 [Verbose] > b/net6.0/System.CommandLine.dll"

00:00:07 #68 [Verbose] > #r

00:00:07 #69 [Verbose] > @"../../../../../../../.nuget/packages/fsharp.json/0.4.1/lib/netstandard2.0/FSha

00:00:07 #70 [Verbose] > rp.Json.dll"

00:00:07 #71 [Verbose] >

00:00:07 #72 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #73 [Verbose] > #if !INTERACTIVE

00:00:07 #74 [Verbose] > namespace Polyglot

00:00:07 #75 [Verbose] > #endif

00:00:07 #76 [Verbose] >

00:00:07 #77 [Verbose] > module Common =

00:00:07 #78 [Verbose] >

00:00:07 #79 [Verbose] >     let nl = System.Environment.NewLine

00:00:07 #80 [Verbose] >     let q = @""""

00:00:07 #81 [Verbose] >

00:00:07 #82 [Verbose] >     let inline cons head tail = head :: tail

00:00:07 #83 [Verbose] >

00:00:07 #84 [Verbose] >     module String =

00:00:07 #85 [Verbose] >         let inline contains (value : string) (input : string) =

00:00:07 #86 [Verbose] >             input.Contains value

00:00:07 #87 [Verbose] >

00:00:07 #88 [Verbose] >         let inline endsWith (value : string) (input : string) =

00:00:07 #89 [Verbose] >             input.EndsWith value

00:00:07 #90 [Verbose] >

00:00:07 #91 [Verbose] >         let inline padLeft totalWidth paddingChar (input : string) =

00:00:07 #92 [Verbose] >             input.PadLeft (totalWidth, paddingChar)

00:00:07 #93 [Verbose] >

00:00:07 #94 [Verbose] >         let inline replace (oldValue : string) (newValue : string) (input :

00:00:07 #95 [Verbose] > string) =

00:00:07 #96 [Verbose] >             input.Replace (oldValue, newValue)

00:00:07 #97 [Verbose] >

00:00:07 #98 [Verbose] >         let inline split separator (input : string) =

00:00:07 #99 [Verbose] >             input.Split separator

00:00:07 #100 [Verbose] >

00:00:07 #101 [Verbose] >         let inline spli...

00:00:09 #102 [Verbose] >

00:00:09 #103 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #104 [Verbose] > #if !INTERACTIVE

00:00:09 #105 [Verbose] > namespace Polyglot

00:00:09 #106 [Verbose] > #endif

00:00:09 #107 [Verbose] >

00:00:09 #108 [Verbose] > module CommonFSharp =

00:00:09 #109 [Verbose] >

00:00:09 #110 [Verbose] >     open Common

00:00:09 #111 [Verbose] >

00:00:09 #112 [Verbose] >     /// ## getUnionCaseName

00:00:09 #113 [Verbose] >

00:00:09 #114 [Verbose] >     let inline getUnionCaseName<'T> (x: 'T) =

00:00:09 #115 [Verbose] >         match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

00:00:09 #116 [Verbose] >         | case, _ -> case.Name

00:00:09 #117 [Verbose] >

00:00:09 #118 [Verbose] >

00:00:09 #119 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #120 [Verbose] > #if !INTERACTIVE

00:00:09 #121 [Verbose] > namespace Polyglot

00:00:09 #122 [Verbose] > #endif

00:00:09 #123 [Verbose] >

00:00:09 #124 [Verbose] > module Crypto =

00:00:09 #125 [Verbose] >

00:00:09 #126 [Verbose] >     open Common

00:00:09 #127 [Verbose] >

00:00:09 #128 [Verbose] >     /// ## hashText

00:00:09 #129 [Verbose] >

00:00:09 #130 [Verbose] >     let hashText (input : string) =

00:00:09 #131 [Verbose] >         use sha256 = System.Security.Cryptography.SHA256.Create ()

00:00:09 #132 [Verbose] >         input

00:00:09 #133 [Verbose] >         |> System.Text.Encoding.UTF8.GetBytes

00:00:09 #134 [Verbose] >         |> sha256.ComputeHash

00:00:09 #135 [Verbose] >         |> Array.map (fun b -> b.ToString "x2")

00:00:09 #136 [Verbose] >         |> String.concat ""

00:00:09 #137 [Verbose] >

00:00:09 #138 [Verbose] >

00:00:09 #139 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #140 [Verbose] > #if !INTERACTIVE

00:00:09 #141 [Verbose] > namespace Polyglot

00:00:09 #142 [Verbose] > #endif

00:00:09 #143 [Verbose] >

00:00:09 #144 [Verbose] > module Async =

00:00:09 #145 [Verbose] >

00:00:09 #146 [Verbose] >     open Common

00:00:09 #147 [Verbose] >

00:00:09 #148 [Verbose] >     /// ## choice

00:00:09 #149 [Verbose] >

00:00:09 #150 [Verbose] >     let inline choice asyncs = async {

00:00:09 #151 [Verbose] >         let e = Event<_> ()

00:00:09 #152 [Verbose] >         use cts = new System.Threading.CancellationTokenSource ()

00:00:09 #153 [Verbose] >         let fn =

00:00:09 #154 [Verbose] >             asyncs

00:00:09 #155 [Verbose] >             |> Seq.map (fun a -> async {

00:00:09 #156 [Verbose] >                 let! x = a

00:00:09 #157 [Verbose] >                 e.Trigger x

00:00:09 #158 [Verbose] >             })

00:00:09 #159 [Verbose] >             |> Async.Parallel

00:00:09 #160 [Verbose] >             |> Async.Ignore

00:00:09 #161 [Verbose] >         Async.Start (fn, cts.Token)

00:00:09 #162 [Verbose] >         let! result = Async.AwaitEvent e.Publish

00:00:09 #163 [Verbose] >         cts.Cancel ()

00:00:09 #164 [Verbose] >         return result

00:00:09 #165 [Verbose] >     }

00:00:09 #166 [Verbose] >

00:00:09 #167 [Verbose] >     /// ## map

00:00:09 #168 [Verbose] >

00:00:09 #169 [Verbose] >     let inline map fn a = async {

00:00:09 #170 [Verbose] >         let! x = a

00:00:09 #171 [Verbose] >         return fn x

00:00:09 #172 [Verbose] >     }

00:00:09 #173 [Verbose] >

00:00:09 #174 [Verbose] >     /// ## catch

00:00:09 #175 [Verbose] >

00:00:09 #176 [Verbose] >     let inline catch a =

00:00:09 #177 [Verbose] >         a

00:00:09 #178 [Verbose] >         |> Async.Catch

00:00:09 #179 [Verbose] >         ...

00:00:10 #180 [Verbose] >

00:00:10 #181 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #182 [Verbose] > #if !INTERACTIVE

00:00:10 #183 [Verbose] > namespace Polyglot

00:00:10 #184 [Verbose] > #endif

00:00:10 #185 [Verbose] >

00:00:10 #186 [Verbose] > module AsyncSeq =

00:00:10 #187 [Verbose] >

00:00:10 #188 [Verbose] >     open Common

00:00:10 #189 [Verbose] >

00:00:10 #190 [Verbose] >     /// ## subscribeEvent

00:00:10 #191 [Verbose] >

00:00:10 #192 [Verbose] >     let inline subscribeEvent (event: IEvent<'H, 'A>) map =

00:00:10 #193 [Verbose] >         let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,

00:00:10 #194 [Verbose] > 'A>(event.AddHandler, event.RemoveHandler)

00:00:10 #195 [Verbose] >         System.Reactive.Linq.Observable.Select (observable, fun event -> map

00:00:10 #196 [Verbose] > event.EventArgs)

00:00:10 #197 [Verbose] >         |> FSharp.Control.AsyncSeq.ofObservableBuffered

00:00:10 #198 [Verbose] >

00:00:10 #199 [Verbose] >     let subscribeToken (token : System.Threading.CancellationToken) =

00:00:10 #200 [Verbose] >         let tcs = new System.Threading.Tasks.TaskCompletionSource ()

00:00:10 #201 [Verbose] >         System.Action tcs.SetResult |> token.Register |> ignore

00:00:10 #202 [Verbose] >         let start = System.DateTime.Now.Ticks

00:00:10 #203 [Verbose] >         FSharp.Control.AsyncSeq.unfoldAsync

00:00:10 #204 [Verbose] >             (fun (...

00:00:10 #205 [Verbose] >

00:00:10 #206 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #207 [Verbose] > #if !INTERACTIVE

00:00:10 #208 [Verbose] > namespace Polyglot

00:00:10 #209 [Verbose] > #endif

00:00:10 #210 [Verbose] >

00:00:10 #211 [Verbose] > module Networking =

00:00:10 #212 [Verbose] >

00:00:10 #213 [Verbose] >     open Common

00:00:10 #214 [Verbose] >

00:00:10 #215 [Verbose] >     /// ## testPortOpen

00:00:10 #216 [Verbose] >

00:00:10 #217 [Verbose] >     let inline testPortOpen port = async {

00:00:10 #218 [Verbose] >         let! ct = Async.CancellationToken

00:00:10 #219 [Verbose] >         use client = new System.Net.Sockets.TcpClient ()

00:00:10 #220 [Verbose] >         try

00:00:10 #221 [Verbose] >             do! client.ConnectAsync ("127.0.0.1", port, ct) |>

00:00:10 #222 [Verbose] > Async.awaitValueTaskUnit

00:00:10 #223 [Verbose] >             return true

00:00:10 #224 [Verbose] >         with ex ->

00:00:10 #225 [Verbose] >             trace Verbose (fun () -> $"testPortOpen / ex: {ex |>

00:00:10 #226 [Verbose] > printException}") getLocals

00:00:10 #227 [Verbose] >             return false

00:00:10 #228 [Verbose] >     }

00:00:10 #229 [Verbose] >

00:00:10 #230 [Verbose] >     let inline testPortOpenTimeout timeout port = async {

00:00:10 #231 [Verbose] >         let! result =

00:00:10 #232 [Verbose] >             testPortOpen port

00:00:10 #233 [Verbose] >             |> Async.runWithTimeoutAsync timeout

00:00:10 #234 [Verbose] >         return

00:00:10 #235 [Verbose] >             match result with

00:00:10 #236 [Verbose] >             | None -> false

00:00:10 #237 [Verbose] >  ...

00:00:10 #238 [Verbose] >

00:00:10 #239 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #240 [Verbose] > #if !INTERACTIVE

00:00:10 #241 [Verbose] > namespace Polyglot

00:00:10 #242 [Verbose] > #endif

00:00:10 #243 [Verbose] >

00:00:10 #244 [Verbose] > module Runtime =

00:00:10 #245 [Verbose] >

00:00:10 #246 [Verbose] >     open Common

00:00:10 #247 [Verbose] >

00:00:10 #248 [Verbose] >     /// ## isWindows

00:00:10 #249 [Verbose] >

00:00:10 #250 [Verbose] >     let isWindows =

00:00:10 #251 [Verbose] >         fun () ->

00:00:10 #252 [Verbose] >             System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

00:00:10 #253 [Verbose] >                 System.Runtime.InteropServices.OSPlatform.Windows

00:00:10 #254 [Verbose] >         |> memoize

00:00:10 #255 [Verbose] >

00:00:10 #256 [Verbose] >     /// ## getExecutableSuffix

00:00:10 #257 [Verbose] >

00:00:10 #258 [Verbose] >     let inline getExecutableSuffix () =

00:00:10 #259 [Verbose] >         if isWindows ()

00:00:10 #260 [Verbose] >         then ".exe"

00:00:10 #261 [Verbose] >         else ""

00:00:10 #262 [Verbose] >

00:00:10 #263 [Verbose] >     /// ## splitCommand

00:00:10 #264 [Verbose] >

00:00:10 #265 [Verbose] >     type private CommandParseStep =

00:00:10 #266 [Verbose] >         | Start

00:00:10 #267 [Verbose] >         | Path of quoted: bool

00:00:10 #268 [Verbose] >         | Arguments

00:00:10 #269 [Verbose] >

00:00:10 #270 [Verbose] >     let splitCommand (command: string) =

00:00:10 #271 [Verbose] >         let rec loop (path, args) chars step =

00:00:10 #272 [Verbose] >             match chars, step with

00:00:10 #273 [Verbose] >             | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...

00:00:11 #274 [Verbose] >

00:00:11 #275 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:11 #276 [Verbose] > #if !INTERACTIVE

00:00:11 #277 [Verbose] > namespace Polyglot

00:00:11 #278 [Verbose] > #endif

00:00:11 #279 [Verbose] >

00:00:11 #280 [Verbose] > module FileSystem =

00:00:11 #281 [Verbose] >

00:00:11 #282 [Verbose] >     open Common

00:00:11 #283 [Verbose] >

00:00:11 #284 [Verbose] >     /// ## Operators

00:00:11 #285 [Verbose] >

00:00:11 #286 [Verbose] >     module Operators =

00:00:11 #287 [Verbose] >         let inline (</>) a b =

00:00:11 #288 [Verbose] >             System.IO.Path.Combine (a, b)

00:00:11 #289 [Verbose] >

00:00:11 #290 [Verbose] >     open Operators

00:00:11 #291 [Verbose] >

00:00:11 #292 [Verbose] >     /// ## createTempDirectoryName

00:00:11 #293 [Verbose] >

00:00:11 #294 [Verbose] >     let inline createTempDirectoryName () =

00:00:11 #295 [Verbose] >         let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name

00:00:11 #296 [Verbose] >

00:00:11 #297 [Verbose] >         System.IO.Path.GetTempPath ()

00:00:11 #298 [Verbose] >         </> $"!{root}"

00:00:11 #299 [Verbose] >         </> string (newGuidFromDateTime System.DateTime.Now)

00:00:11 #300 [Verbose] >

00:00:11 #301 [Verbose] >     /// ## createTempDirectory

00:00:11 #302 [Verbose] >

00:00:11 #303 [Verbose] >     let inline createTempDirectory () =

00:00:11 #304 [Verbose] >         let tempFolder = createTempDirectoryName ()

00:00:11 #305 [Verbose] >         let result = System.IO.Directory.CreateDirectory tempFolder

00:00:11 #306 [Verbose] >

00:00:11 #307 [Verbose] >         if not result.Exists then

00:00:11 #308 [Verbose] >             let ge...

00:00:14 #309 [Verbose] >

00:00:14 #310 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:14 #311 [Verbose] > open Common

00:00:14 #312 [Verbose] > open FileSystem.Operators

00:00:14 #313 [Verbose] >

00:00:14 #314 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:14 #315 [Verbose] > let tmpSpiralPath = Path.GetTempPath () </> "!dotnet-interactive-spiral"

00:00:14 #316 [Verbose] > let linePlotsDataPath = tmpSpiralPath </> "line-plots-data"

00:00:14 #317 [Verbose] > let linePlotsSvgPath = tmpSpiralPath </> "line-plots-svg"

00:00:14 #318 [Verbose] >

00:00:14 #319 [Verbose] > [[ tmpSpiralPath; linePlotsDataPath; linePlotsSvgPath ]]

00:00:14 #320 [Verbose] > |> List.iter (fun dir -> if Directory.Exists dir |> not then

00:00:14 #321 [Verbose] > Directory.CreateDirectory dir |> ignore)

00:00:14 #322 [Verbose] >

00:00:14 #323 [Verbose] > Formatter.Register<struct (string * string * string * struct (string * float

00:00:14 #324 [Verbose] > array * float array) array)> (

00:00:14 #325 [Verbose] >     (fun struct (caption, x_desc, y_desc, ys) ->

00:00:14 #326 [Verbose] >         let json = (caption, x_desc, y_desc, ys) |> FSharp.Json.Json.serialize

00:00:14 #327 [Verbose] >         async {

00:00:14 #328 [Verbose] >             let hashHex = json |> Crypto.hashText

00:00:14 #329 [Verbose] >             let svgPath = linePlotsSvgPath </> $"{hashHex}.svg"

00:00:14 #330 [Verbose] >

00:00:14 #331 [Verbose] >             if System.IO.File.Exi...

00:00:14 #332 [Verbose] >

00:00:14 #333 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #334 [Verbose] > // // test

00:00:14 #335 [Verbose] >

00:00:14 #336 [Verbose] > open testing

00:00:15 #337 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4347-4796-4e38a595efc2\main.spi

00:00:17 #338 [Verbose] >

00:00:17 #339 [Verbose] > ╭─[ 2.47s - stdout ]───────────────────────────────────────────────────────────╮

00:00:17 #340 [Verbose] > │ ()                                                                           │

00:00:17 #341 [Verbose] > │                                                                              │

00:00:17 #342 [Verbose] > │                                                                              │

00:00:17 #343 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #344 [Verbose] >

00:00:17 #345 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #346 [Verbose] > inl (/@) x = listm'.(/@) x

00:00:17 #347 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4535-3511-33a7e24bfa2f\main.spi

00:00:17 #348 [Verbose] >

00:00:17 #349 [Verbose] > ╭─[ 245.35ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #350 [Verbose] > │ ()                                                                           │

00:00:17 #351 [Verbose] > │                                                                              │

00:00:17 #352 [Verbose] > │                                                                              │

00:00:17 #353 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #354 [Verbose] >

00:00:17 #355 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:17 #356 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:17 #357 [Verbose] > │ ## init_series                                                               │

00:00:17 #358 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #359 [Verbose] >

00:00:17 #360 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #361 [Verbose] > // // test

00:00:17 #362 [Verbose] >

00:00:17 #363 [Verbose] > inl x : a _ f64 = am'.init_series -3 3 0.01

00:00:17 #364 [Verbose] > inl y = x |> am.map math.square

00:00:17 #365 [Verbose] > "square", "x", "y", ;[[ "square", x, y ]]

00:00:17 #366 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4559-5995-570c7e0d13f0\main.spi

00:00:17 #367 [Verbose] >

00:00:17 #368 [Verbose] > ╭─[ 400.44ms - return value ]──────────────────────────────────────────────────╮

00:00:17 #369 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:17 #370 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:17 #371 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:17 #372 [Verbose] > │ stroke="none"/>                                                              │

00:00:17 #373 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:17 #374 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:17 #375 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:17 #376 [Verbose] > │ square                                                                       │

00:00:17 #377 [Verbose] > │ </text>                                                                      │

00:00:17 #378 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:17 #379 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #380 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:17 #381 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #382 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:17 #383 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #384 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:17 #385 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #386 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:17 #387 [Verbose] > │ ...                                                                          │

00:00:17 #388 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #389 [Verbose] >

00:00:17 #390 [Verbose] > ╭─[ 418.11ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #391 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:17 #392 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:17 #393 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:17 #394 [Verbose] > │     let v2 : bool = v1 < 601                                                 │

00:00:17 #395 [Verbose] > │     v2                                                                       │

00:00:17 #396 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:17 #397 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:17 #398 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:17 #399 [Verbose] > │     v3                                                                       │

00:00:17 #400 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:17 #401 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:17 #402 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (601)                      │

00:00:17 #403 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:17 #404 [Verbose] > │     while method1(v1) do                                                     │

00:00:17 #405 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:17 #406 [Verbose] > │         let v4 : float = float v3                                            │

00:00:17 #407 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:17 #408 [Verbose] > │         let v6 : float = -3.0 + v5                                           │

00:00:17 #409 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:17 #410 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:17 #411 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:17 #412 [Verbose] > │         ()                                                                   │

00:00:17 #413 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:17 #414 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:17 #415 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:17 #416 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:17 #417 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:17 #418 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:17 #419 [Verbose] > │         let v14 : float = v13 ** 2.0                                         │

00:00:17 #420 [Verbose] > │         v9.[int v12] <- v14                                                  │

00:00:17 #421 [Verbose] > │         let v15 : int32 = v12 + 1                                            │

00:00:17 #422 [Verbose] > │         v10.l0 <- v15                                                        │

00:00:17 #423 [Verbose] > │         ()                                                                   │

00:00:17 #424 [Verbose] > │     let v16 : string = "square"                                              │

00:00:17 #425 [Verbose] > │     let v17 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:17 #426 [Verbose] > │ (v16, v0, v9)|]                                                              │

00:00:17 #427 [Verbose] > │     let v18 : string = "x"                                                   │

00:00:17 #428 [Verbose] > │     let v19 : string = "y"                                                   │

00:00:17 #429 [Verbose] > │     struct (v16, v18, v19, v17)                                              │

00:00:17 #430 [Verbose] > │ method0()                                                                    │

00:00:17 #431 [Verbose] > │                                                                              │

00:00:17 #432 [Verbose] > │                                                                              │

00:00:17 #433 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #434 [Verbose] >

00:00:17 #435 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #436 [Verbose] > // // test

00:00:17 #437 [Verbose] >

00:00:17 #438 [Verbose] > inl x : a _ f64 = am'.init_series -10 10 0.1

00:00:17 #439 [Verbose] > inl y_sin = x |> am.map sin

00:00:17 #440 [Verbose] > inl y_cos = x |> am.map cos

00:00:17 #441 [Verbose] > "sin cos", "x", "y", ;[[ "sin", x, y_sin; "cos", x, y_cos ]]

00:00:17 #442 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4603-0383-0a02605bf2d8\main.spi

00:00:17 #443 [Verbose] >

00:00:17 #444 [Verbose] > ╭─[ 205.26ms - return value ]──────────────────────────────────────────────────╮

00:00:17 #445 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:17 #446 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:17 #447 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:17 #448 [Verbose] > │ stroke="none"/>                                                              │

00:00:17 #449 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:17 #450 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:17 #451 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:17 #452 [Verbose] > │ sin cos                                                                      │

00:00:17 #453 [Verbose] > │ </text>                                                                      │

00:00:17 #454 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │

00:00:17 #455 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #456 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:17 #457 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #458 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │

00:00:17 #459 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #460 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:17 #461 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #462 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1="424"        │

00:00:17 #463 [Verbose] > │ x2="10...                                                                    │

00:00:17 #464 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #465 [Verbose] >

00:00:17 #466 [Verbose] > ╭─[ 215.29ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #467 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:17 #468 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:17 #469 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:17 #470 [Verbose] > │     let v2 : bool = v1 < 201                                                 │

00:00:17 #471 [Verbose] > │     v2                                                                       │

00:00:17 #472 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:17 #473 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:17 #474 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:17 #475 [Verbose] > │     v3                                                                       │

00:00:17 #476 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:17 #477 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:17 #478 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (201)                      │

00:00:17 #479 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:17 #480 [Verbose] > │     while method1(v1) do                                                     │

00:00:17 #481 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:17 #482 [Verbose] > │         let v4 : float = float v3                                            │

00:00:17 #483 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:17 #484 [Verbose] > │         let v6 : float = -10.0 + v5                                          │

00:00:17 #485 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:17 #486 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:17 #487 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:17 #488 [Verbose] > │         ()                                                                   │

00:00:17 #489 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:17 #490 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:17 #491 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:17 #492 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:17 #493 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:17 #494 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:17 #495 [Verbose] > │         let v14 : float = sin v13                                            │

00:00:17 #496 [Verbose] > │         v9.[int v12] <- v14                                                  │

00:00:17 #497 [Verbose] > │         let v15 : int32 = v12 + 1                                            │

00:00:17 #498 [Verbose] > │         v10.l0 <- v15                                                        │

00:00:17 #499 [Verbose] > │         ()                                                                   │

00:00:17 #500 [Verbose] > │     let v16 : (float []) = Array.zeroCreate<float> (v8)                      │

00:00:17 #501 [Verbose] > │     let v17 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:17 #502 [Verbose] > │     while method2(v8, v17) do                                                │

00:00:17 #503 [Verbose] > │         let v19 : int32 = v17.l0                                             │

00:00:17 #504 [Verbose] > │         let v20 : float = v0.[int v19]                                       │

00:00:17 #505 [Verbose] > │         let v21 : float = cos v20                                            │

00:00:17 #506 [Verbose] > │         v16.[int v19] <- v21                                                 │

00:00:17 #507 [Verbose] > │         let v22 : int32 = v19 + 1                                            │

00:00:17 #508 [Verbose] > │         v17.l0 <- v22                                                        │

00:00:17 #509 [Verbose] > │         ()                                                                   │

00:00:17 #510 [Verbose] > │     let v23 : string = "sin"                                                 │

00:00:17 #511 [Verbose] > │     let v24 : string = "cos"                                                 │

00:00:17 #512 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:17 #513 [Verbose] > │ (v23, v0, v9); struct (v24, v0, v16)|]                                       │

00:00:17 #514 [Verbose] > │     let v26 : string = "sin cos"                                             │

00:00:17 #515 [Verbose] > │     let v27 : string = "x"                                                   │

00:00:17 #516 [Verbose] > │     let v28 : string = "y"                                                   │

00:00:17 #517 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:17 #518 [Verbose] > │ method0()                                                                    │

00:00:17 #519 [Verbose] > │                                                                              │

00:00:17 #520 [Verbose] > │                                                                              │

00:00:17 #521 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #522 [Verbose] >

00:00:17 #523 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #524 [Verbose] > // // test

00:00:18 #525 [Verbose] >

00:00:18 #526 [Verbose] > inl y_pos y0 vy0 ay t =

00:00:18 #527 [Verbose] >     y0 + vy0 * t + ay * (t |> math.square) / 2

00:00:18 #528 [Verbose] >

00:00:18 #529 [Verbose] > inl x : a _ f64 = am'.init_series 0 5 0.01

00:00:18 #530 [Verbose] > inl y = x |> am.map (y_pos 0 20 -9.8)

00:00:18 #531 [Verbose] > "projectile motion", "time (s)", "", ;[[ "height of projectile (m)", x, y ]]

00:00:18 #532 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4627-2777-2568dd4b228c\main.spi

00:00:18 #533 [Verbose] >

00:00:18 #534 [Verbose] > ╭─[ 183.68ms - return value ]──────────────────────────────────────────────────╮

00:00:18 #535 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:18 #536 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:18 #537 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:18 #538 [Verbose] > │ stroke="none"/>                                                              │

00:00:18 #539 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:18 #540 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:18 #541 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:18 #542 [Verbose] > │ projectile motion                                                            │

00:00:18 #543 [Verbose] > │ </text>                                                                      │

00:00:18 #544 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:18 #545 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #546 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:18 #547 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #548 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:18 #549 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #550 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:18 #551 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #552 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="99" y1="42...        │

00:00:18 #553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #554 [Verbose] >

00:00:18 #555 [Verbose] > ╭─[ 194.76ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #556 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:18 #557 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:18 #558 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:18 #559 [Verbose] > │     let v2 : bool = v1 < 501                                                 │

00:00:18 #560 [Verbose] > │     v2                                                                       │

00:00:18 #561 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:18 #562 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:18 #563 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:18 #564 [Verbose] > │     v3                                                                       │

00:00:18 #565 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:18 #566 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:18 #567 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (501)                      │

00:00:18 #568 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:18 #569 [Verbose] > │     while method1(v1) do                                                     │

00:00:18 #570 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:18 #571 [Verbose] > │         let v4 : float = float v3                                            │

00:00:18 #572 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:18 #573 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:18 #574 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:18 #575 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:18 #576 [Verbose] > │         ()                                                                   │

00:00:18 #577 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:18 #578 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:18 #579 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:18 #580 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:18 #581 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:18 #582 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:18 #583 [Verbose] > │         let v13 : float = 20.0 * v12                                         │

00:00:18 #584 [Verbose] > │         let v14 : float = v12 ** 2.0                                         │

00:00:18 #585 [Verbose] > │         let v15 : float = -9.8 * v14                                         │

00:00:18 #586 [Verbose] > │         let v16 : float = v15 / 2.0                                          │

00:00:18 #587 [Verbose] > │         let v17 : float = v13 + v16                                          │

00:00:18 #588 [Verbose] > │         v8.[int v11] <- v17                                                  │

00:00:18 #589 [Verbose] > │         let v18 : int32 = v11 + 1                                            │

00:00:18 #590 [Verbose] > │         v9.l0 <- v18                                                         │

00:00:18 #591 [Verbose] > │         ()                                                                   │

00:00:18 #592 [Verbose] > │     let v19 : string = "height of projectile (m)"                            │

00:00:18 #593 [Verbose] > │     let v20 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:18 #594 [Verbose] > │ (v19, v0, v8)|]                                                              │

00:00:18 #595 [Verbose] > │     let v21 : string = "projectile motion"                                   │

00:00:18 #596 [Verbose] > │     let v22 : string = "time (s)"                                            │

00:00:18 #597 [Verbose] > │     let v23 : string = ""                                                    │

00:00:18 #598 [Verbose] > │     struct (v21, v22, v23, v20)                                              │

00:00:18 #599 [Verbose] > │ method0()                                                                    │

00:00:18 #600 [Verbose] > │                                                                              │

00:00:18 #601 [Verbose] > │                                                                              │

00:00:18 #602 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #603 [Verbose] >

00:00:18 #604 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:18 #605 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:18 #606 [Verbose] > │ ## velocity_cf                                                               │

00:00:18 #607 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #608 [Verbose] >

00:00:18 #609 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #610 [Verbose] > type mass = f64

00:00:18 #611 [Verbose] > type time = f64

00:00:18 #612 [Verbose] > type position = f64

00:00:18 #613 [Verbose] > type velocity = f64

00:00:18 #614 [Verbose] > type force = f64

00:00:18 #615 [Verbose] >

00:00:18 #616 [Verbose] > type velocity_cf = mass -> velocity -> list force -> (time -> velocity)

00:00:18 #617 [Verbose] >

00:00:18 #618 [Verbose] > inl velocity_cf m v0 fs =

00:00:18 #619 [Verbose] >     inl f_net = fs |> listm'.sum

00:00:18 #620 [Verbose] >     inl a0 = f_net / m

00:00:18 #621 [Verbose] >     inl v t = v0 + a0 * t

00:00:18 #622 [Verbose] >     v

00:00:18 #623 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4649-4955-4a4fc44b7855\main.spi

00:00:18 #624 [Verbose] >

00:00:18 #625 [Verbose] > ╭─[ 159.20ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #626 [Verbose] > │ ()                                                                           │

00:00:18 #627 [Verbose] > │                                                                              │

00:00:18 #628 [Verbose] > │                                                                              │

00:00:18 #629 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #630 [Verbose] >

00:00:18 #631 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #632 [Verbose] > // // test

00:00:18 #633 [Verbose] >

00:00:18 #634 [Verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 0

00:00:18 #635 [Verbose] > |> _equal 0.6

00:00:18 #636 [Verbose] >

00:00:18 #637 [Verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 1

00:00:18 #638 [Verbose] > |> _equal 0.2

00:00:18 #639 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4665-6573-679d961b95d0\main.spi

00:00:18 #640 [Verbose] >

00:00:18 #641 [Verbose] > ╭─[ 161.40ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #642 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:18 #643 [Verbose] > │     let v0 : string = $"_equal / actual: %A{0.6} / expected: %A{0.6}"        │

00:00:18 #644 [Verbose] > │     let v1 : string = $"_equal / actual: %A{0.2} / expected: %A{0.2}"        │

00:00:18 #645 [Verbose] > │     ()                                                                       │

00:00:18 #646 [Verbose] > │ method0()                                                                    │

00:00:18 #647 [Verbose] > │                                                                              │

00:00:18 #648 [Verbose] > │                                                                              │

00:00:18 #649 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #650 [Verbose] >

00:00:18 #651 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #652 [Verbose] > // // test

00:00:18 #653 [Verbose] >

00:00:18 #654 [Verbose] > inl x = am'.init_series 0 4 0.1

00:00:18 #655 [Verbose] > inl y = x |> am.map (velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]])

00:00:18 #656 [Verbose] > "car on an air track", "time (s)", "", ;[[ "velocity of car (m/s)", x, y ]]

00:00:18 #657 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4682-8224-8f0324c8673c\main.spi

00:00:18 #658 [Verbose] >

00:00:18 #659 [Verbose] > ╭─[ 183.12ms - return value ]──────────────────────────────────────────────────╮

00:00:18 #660 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:18 #661 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:18 #662 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:18 #663 [Verbose] > │ stroke="none"/>                                                              │

00:00:18 #664 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:18 #665 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:18 #666 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:18 #667 [Verbose] > │ car on an air track                                                          │

00:00:18 #668 [Verbose] > │ </text>                                                                      │

00:00:18 #669 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │

00:00:18 #670 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #671 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:18 #672 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #673 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │

00:00:18 #674 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #675 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:18 #676 [Verbose] > │ y2="75"/>                                                                    │

00:00:18 #677 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1=...          │

00:00:18 #678 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #679 [Verbose] >

00:00:18 #680 [Verbose] > ╭─[ 193.34ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #681 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:18 #682 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:18 #683 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:18 #684 [Verbose] > │     let v2 : bool = v1 < 41                                                  │

00:00:18 #685 [Verbose] > │     v2                                                                       │

00:00:18 #686 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:18 #687 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:18 #688 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:18 #689 [Verbose] > │     v3                                                                       │

00:00:18 #690 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:18 #691 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:18 #692 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (41)                       │

00:00:18 #693 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:18 #694 [Verbose] > │     while method1(v1) do                                                     │

00:00:18 #695 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:18 #696 [Verbose] > │         let v4 : float = float v3                                            │

00:00:18 #697 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:18 #698 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:18 #699 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:18 #700 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:18 #701 [Verbose] > │         ()                                                                   │

00:00:18 #702 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:18 #703 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:18 #704 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:18 #705 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:18 #706 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:18 #707 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:18 #708 [Verbose] > │         let v13 : float = -0.39999999999999997 * v12                         │

00:00:18 #709 [Verbose] > │         let v14 : float = 0.6 + v13                                          │

00:00:18 #710 [Verbose] > │         v8.[int v11] <- v14                                                  │

00:00:18 #711 [Verbose] > │         let v15 : int32 = v11 + 1                                            │

00:00:18 #712 [Verbose] > │         v9.l0 <- v15                                                         │

00:00:18 #713 [Verbose] > │         ()                                                                   │

00:00:18 #714 [Verbose] > │     let v16 : string = "velocity of car (m/s)"                               │

00:00:18 #715 [Verbose] > │     let v17 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:18 #716 [Verbose] > │ (v16, v0, v8)|]                                                              │

00:00:18 #717 [Verbose] > │     let v18 : string = "car on an air track"                                 │

00:00:18 #718 [Verbose] > │     let v19 : string = "time (s)"                                            │

00:00:18 #719 [Verbose] > │     let v20 : string = ""                                                    │

00:00:18 #720 [Verbose] > │     struct (v18, v19, v20, v17)                                              │

00:00:18 #721 [Verbose] > │ method0()                                                                    │

00:00:18 #722 [Verbose] > │                                                                              │

00:00:18 #723 [Verbose] > │                                                                              │

00:00:18 #724 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #725 [Verbose] >

00:00:18 #726 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:18 #727 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:18 #728 [Verbose] > │ ## derivative                                                                │

00:00:18 #729 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #730 [Verbose] >

00:00:18 #731 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #732 [Verbose] > type derivative = (f64 -> f64) -> f64 -> f64

00:00:18 #733 [Verbose] >

00:00:18 #734 [Verbose] > inl derivative dt : derivative =

00:00:18 #735 [Verbose] >     fun x t =>

00:00:18 #736 [Verbose] >         (x (t + dt / 2) - x (t - dt / 2)) / dt

00:00:18 #737 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4703-0377-04c5fc06c6f9\main.spi

00:00:18 #738 [Verbose] >

00:00:18 #739 [Verbose] > ╭─[ 133.28ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #740 [Verbose] > │ ()                                                                           │

00:00:18 #741 [Verbose] > │                                                                              │

00:00:18 #742 [Verbose] > │                                                                              │

00:00:18 #743 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #744 [Verbose] >

00:00:18 #745 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #746 [Verbose] > // // test

00:00:18 #747 [Verbose] >

00:00:18 #748 [Verbose] > derivative 1 (fun x => x ** 4 / 4) 1 - 1

00:00:18 #749 [Verbose] > |> _almost_equal 0.25

00:00:18 #750 [Verbose] >

00:00:18 #751 [Verbose] > derivative 0.001 (fun x => x ** 4 / 4) 1 - 1

00:00:18 #752 [Verbose] > |> _almost_equal 0.0000002499998827953931

00:00:18 #753 [Verbose] >

00:00:18 #754 [Verbose] > derivative 0.000001 (fun x => x ** 4 / 4) 1 - 1

00:00:18 #755 [Verbose] > |> _almost_equal 0.000000000001000088900582341

00:00:18 #756 [Verbose] >

00:00:18 #757 [Verbose] > derivative 0.000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:18 #758 [Verbose] > |> _almost_equal 0.00000008274037099909037

00:00:18 #759 [Verbose] >

00:00:18 #760 [Verbose] > derivative 0.000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:18 #761 [Verbose] > |> _almost_equal 0.00008890058234101161

00:00:18 #762 [Verbose] >

00:00:18 #763 [Verbose] > derivative 0.000000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:18 #764 [Verbose] > |> _almost_equal -0.0007992778373592246

00:00:18 #765 [Verbose] >

00:00:18 #766 [Verbose] > derivative 0.000000000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:18 #767 [Verbose] > |> _almost_equal -1

00:00:18 #768 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4717-1733-1bb582df1517\main.spi

00:00:19 #769 [Verbose] >

00:00:19 #770 [Verbose] > ╭─[ 163.01ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #771 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:19 #772 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.25} / expected:         │

00:00:19 #773 [Verbose] > │ %A{0.25}"                                                                    │

00:00:19 #774 [Verbose] > │     let v1 : string = $"_almost_equal / actual: %A{2.499998827953931E-07} /  │

00:00:19 #775 [Verbose] > │ expected: %A{2.499998827953931E-07}"                                         │

00:00:19 #776 [Verbose] > │     let v2 : string = $"_almost_equal / actual: %A{1.000088900582341E-12} /  │

00:00:19 #777 [Verbose] > │ expected: %A{1.000088900582341E-12}"                                         │

00:00:19 #778 [Verbose] > │     let v3 : string = $"_almost_equal / actual: %A{8.274037099909037E-08} /  │

00:00:19 #779 [Verbose] > │ expected: %A{8.274037099909037E-08}"                                         │

00:00:19 #780 [Verbose] > │     let v4 : string = $"_almost_equal / actual: %A{8.890058234101161E-05} /  │

00:00:19 #781 [Verbose] > │ expected: %A{8.890058234101161E-05}"                                         │

00:00:19 #782 [Verbose] > │     let v5 : string = $"_almost_equal / actual: %A{-0.0007992778373592246} / │

00:00:19 #783 [Verbose] > │ expected: %A{-0.0007992778373592246}"                                        │

00:00:19 #784 [Verbose] > │     let v6 : string = $"_almost_equal / actual: %A{-1.0} / expected:         │

00:00:19 #785 [Verbose] > │ %A{-1.0}"                                                                    │

00:00:19 #786 [Verbose] > │     ()                                                                       │

00:00:19 #787 [Verbose] > │ method0()                                                                    │

00:00:19 #788 [Verbose] > │                                                                              │

00:00:19 #789 [Verbose] > │                                                                              │

00:00:19 #790 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #791 [Verbose] >

00:00:19 #792 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:19 #793 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:19 #794 [Verbose] > │ ## integration                                                               │

00:00:19 #795 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #796 [Verbose] >

00:00:19 #797 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #798 [Verbose] > type integration = (f64 -> f64) -> f64 -> f64 -> f64

00:00:19 #799 [Verbose] >

00:00:19 #800 [Verbose] > inl integral dt : integration =

00:00:19 #801 [Verbose] >     fun f a b =>

00:00:19 #802 [Verbose] >         inl rec loop t y =

00:00:19 #803 [Verbose] >             if t < b

00:00:19 #804 [Verbose] >             then loop (t + dt) (y + f t * dt)

00:00:19 #805 [Verbose] >             else t, y

00:00:19 #806 [Verbose] >         loop (a + dt / 2) 0

00:00:19 #807 [Verbose] >         |> snd

00:00:19 #808 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4735-3501-3716c85c78c9\main.spi

00:00:19 #809 [Verbose] >

00:00:19 #810 [Verbose] > ╭─[ 176.36ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #811 [Verbose] > │ ()                                                                           │

00:00:19 #812 [Verbose] > │                                                                              │

00:00:19 #813 [Verbose] > │                                                                              │

00:00:19 #814 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #815 [Verbose] >

00:00:19 #816 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #817 [Verbose] > // // test

00:00:19 #818 [Verbose] >

00:00:19 #819 [Verbose] > integral 0.01 math.square 0 1

00:00:19 #820 [Verbose] > |> _almost_equal 0.33332500000000004

00:00:19 #821 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4752-5282-5c56ec0cd449\main.spi

00:00:19 #822 [Verbose] >

00:00:19 #823 [Verbose] > ╭─[ 157.65ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #824 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:19 #825 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.3333250000000004} /     │

00:00:19 #826 [Verbose] > │ expected: %A{0.33332500000000004}"                                           │

00:00:19 #827 [Verbose] > │     ()                                                                       │

00:00:19 #828 [Verbose] > │ method0()                                                                    │

00:00:19 #829 [Verbose] > │                                                                              │

00:00:19 #830 [Verbose] > │                                                                              │

00:00:19 #831 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #832 [Verbose] >

00:00:19 #833 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #834 [Verbose] > inl integral' dt : integration =

00:00:19 #835 [Verbose] >     fun f a b =>

00:00:19 #836 [Verbose] >         listm'.init_series (a + dt / 2) (b - dt / 2) dt

00:00:19 #837 [Verbose] >         |> listm.map (f >> (*) dt)

00:00:19 #838 [Verbose] >         |> listm'.sum

00:00:19 #839 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4769-6916-6ba97a081122\main.spi

00:00:19 #840 [Verbose] >

00:00:19 #841 [Verbose] > ╭─[ 153.60ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #842 [Verbose] > │ ()                                                                           │

00:00:19 #843 [Verbose] > │                                                                              │

00:00:19 #844 [Verbose] > │                                                                              │

00:00:19 #845 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #846 [Verbose] >

00:00:19 #847 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #848 [Verbose] > // // test

00:00:19 #849 [Verbose] >

00:00:19 #850 [Verbose] > integral' 0.1 math.square 0 1

00:00:19 #851 [Verbose] > |> _almost_equal (integral 0.1 math.square 0 1)

00:00:19 #852 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4784-8462-837c76d5f7b3\main.spi

00:00:19 #853 [Verbose] >

00:00:19 #854 [Verbose] > ╭─[ 150.79ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #855 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:19 #856 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.3325000000000001} /     │

00:00:19 #857 [Verbose] > │ expected: %A{0.33249999999999996}"                                           │

00:00:19 #858 [Verbose] > │     ()                                                                       │

00:00:19 #859 [Verbose] > │ method0()                                                                    │

00:00:19 #860 [Verbose] > │                                                                              │

00:00:19 #861 [Verbose] > │                                                                              │

00:00:19 #862 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #863 [Verbose] >

00:00:19 #864 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #865 [Verbose] > inl integral'' dt : integration =

00:00:19 #866 [Verbose] >     fun f a b =>

00:00:19 #867 [Verbose] >         am'.init_series (a + dt / 2) (b - dt / 2) dt

00:00:19 #868 [Verbose] >         |> am.map (f >> (*) dt)

00:00:19 #869 [Verbose] >         |> am'.sum

00:00:19 #870 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4800-0012-0c7f1004d754\main.spi

00:00:19 #871 [Verbose] >

00:00:19 #872 [Verbose] > ╭─[ 158.06ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #873 [Verbose] > │ ()                                                                           │

00:00:19 #874 [Verbose] > │                                                                              │

00:00:19 #875 [Verbose] > │                                                                              │

00:00:19 #876 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #877 [Verbose] >

00:00:19 #878 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #879 [Verbose] > // // test

00:00:19 #880 [Verbose] >

00:00:19 #881 [Verbose] > integral'' 0.01 math.square 0 1

00:00:19 #882 [Verbose] > |> _almost_equal (integral 0.01 math.square 0 1)

00:00:20 #883 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4816-1614-1cf2fc752c92\main.spi

00:00:20 #884 [Verbose] >

00:00:20 #885 [Verbose] > ╭─[ 286.43ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #886 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:20 #887 [Verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : float}                          │

00:00:20 #888 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:20 #889 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:20 #890 [Verbose] > │     let v2 : bool = v1 < 100                                                 │

00:00:20 #891 [Verbose] > │     v2                                                                       │

00:00:20 #892 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:20 #893 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:20 #894 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:20 #895 [Verbose] > │     v3                                                                       │

00:00:20 #896 [Verbose] > │ and method3 (v0 : int32, v1 : Mut1) : bool =                                 │

00:00:20 #897 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:20 #898 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:20 #899 [Verbose] > │     v3                                                                       │

00:00:20 #900 [Verbose] > │ and method0 () : unit =                                                      │

00:00:20 #901 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (100)                      │

00:00:20 #902 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:20 #903 [Verbose] > │     while method1(v1) do                                                     │

00:00:20 #904 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:20 #905 [Verbose] > │         let v4 : float = float v3                                            │

00:00:20 #906 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:20 #907 [Verbose] > │         let v6 : float = 0.005 + v5                                          │

00:00:20 #908 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:20 #909 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:20 #910 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:20 #911 [Verbose] > │         ()                                                                   │

00:00:20 #912 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:20 #913 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:20 #914 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:20 #915 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:20 #916 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:20 #917 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:20 #918 [Verbose] > │         let v14 : float = v13 ** 2.0                                         │

00:00:20 #919 [Verbose] > │         let v15 : float = 0.01 * v14                                         │

00:00:20 #920 [Verbose] > │         v9.[int v12] <- v15                                                  │

00:00:20 #921 [Verbose] > │         let v16 : int32 = v12 + 1                                            │

00:00:20 #922 [Verbose] > │         v10.l0 <- v16                                                        │

00:00:20 #923 [Verbose] > │         ()                                                                   │

00:00:20 #924 [Verbose] > │     let v17 : int32 = v9.Length                                              │

00:00:20 #925 [Verbose] > │     let v18 : Mut1 = {l0 = 0; l1 = 0.0} : Mut1                               │

00:00:20 #926 [Verbose] > │     while method3(v17, v18) do                                               │

00:00:20 #927 [Verbose] > │         let v20 : int32 = v18.l0                                             │

00:00:20 #928 [Verbose] > │         let v21 : float = v18.l1                                             │

00:00:20 #929 [Verbose] > │         let v22 : float = v9.[int v20]                                       │

00:00:20 #930 [Verbose] > │         let v23 : float = v21 + v22                                          │

00:00:20 #931 [Verbose] > │         let v24 : int32 = v20 + 1                                            │

00:00:20 #932 [Verbose] > │         v18.l0 <- v24                                                        │

00:00:20 #933 [Verbose] > │         v18.l1 <- v23                                                        │

00:00:20 #934 [Verbose] > │         ()                                                                   │

00:00:20 #935 [Verbose] > │     let v25 : float = v18.l1                                                 │

00:00:20 #936 [Verbose] > │     let v26 : float = 0.3333250000000004 - v25                               │

00:00:20 #937 [Verbose] > │     let v27 : float =  -v26                                                  │

00:00:20 #938 [Verbose] > │     let v28 : bool = v26 >= v27                                              │

00:00:20 #939 [Verbose] > │     let v29 : float =                                                        │

00:00:20 #940 [Verbose] > │         if v28 then                                                          │

00:00:20 #941 [Verbose] > │             v26                                                              │

00:00:20 #942 [Verbose] > │         else                                                                 │

00:00:20 #943 [Verbose] > │             v27                                                              │

00:00:20 #944 [Verbose] > │     let v30 : bool = v29 < 1E-08                                             │

00:00:20 #945 [Verbose] > │     let v31 : string = $"_almost_equal / actual: %A{v25} / expected:         │

00:00:20 #946 [Verbose] > │ %A{0.3333250000000004}"                                                      │

00:00:20 #947 [Verbose] > │     let v32 : bool = v30 = false                                             │

00:00:20 #948 [Verbose] > │     if v32 then                                                              │

00:00:20 #949 [Verbose] > │         failwith<unit> v31                                                   │

00:00:20 #950 [Verbose] > │ method0()                                                                    │

00:00:20 #951 [Verbose] > │                                                                              │

00:00:20 #952 [Verbose] > │                                                                              │

00:00:20 #953 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #954 [Verbose] >

00:00:20 #955 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:20 #956 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:20 #957 [Verbose] > │ ## anti_derivative                                                           │

00:00:20 #958 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #959 [Verbose] >

00:00:20 #960 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #961 [Verbose] > inl anti_derivative dt v0 a t =

00:00:20 #962 [Verbose] >     v0 + integral' dt a 0 t

00:00:20 #963 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4848-4806-4008b026bd73\main.spi

00:00:20 #964 [Verbose] >

00:00:20 #965 [Verbose] > ╭─[ 167.68ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #966 [Verbose] > │ ()                                                                           │

00:00:20 #967 [Verbose] > │                                                                              │

00:00:20 #968 [Verbose] > │                                                                              │

00:00:20 #969 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #970 [Verbose] >

00:00:20 #971 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:20 #972 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:20 #973 [Verbose] > │ ## velocity_ft                                                               │

00:00:20 #974 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #975 [Verbose] >

00:00:20 #976 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #977 [Verbose] > type velocity_ft = mass -> velocity -> list (time -> force) -> (time ->

00:00:20 #978 [Verbose] > velocity)

00:00:20 #979 [Verbose] >

00:00:20 #980 [Verbose] > inl velocity_ft dt : velocity_ft =

00:00:20 #981 [Verbose] >     fun m v0 fs =>

00:00:20 #982 [Verbose] >         inl f_net t = fs |> listm.map (fun f => f t) |> listm'.sum

00:00:20 #983 [Verbose] >         inl a t = f_net t / m

00:00:20 #984 [Verbose] >         anti_derivative dt v0 a

00:00:20 #985 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4865-6529-6ca6bdf23d91\main.spi

00:00:20 #986 [Verbose] >

00:00:20 #987 [Verbose] > ╭─[ 272.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #988 [Verbose] > │ ()                                                                           │

00:00:20 #989 [Verbose] > │                                                                              │

00:00:20 #990 [Verbose] > │                                                                              │

00:00:20 #991 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #992 [Verbose] >

00:00:20 #993 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:20 #994 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:20 #995 [Verbose] > │ ## position_ft                                                               │

00:00:20 #996 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #997 [Verbose] >

00:00:20 #998 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #999 [Verbose] > type position_ft = mass -> position -> velocity -> list (time -> force) -> (time

00:00:20 #1000 [Verbose] > -> position)

00:00:20 #1001 [Verbose] >

00:00:20 #1002 [Verbose] > inl position_ft dt : position_ft =

00:00:20 #1003 [Verbose] >     fun m x0 v0 fs =>

00:00:20 #1004 [Verbose] >         velocity_ft dt m v0 fs

00:00:20 #1005 [Verbose] >         |> anti_derivative dt x0

00:00:20 #1006 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4892-9292-9595fb5cb837\main.spi

00:00:20 #1007 [Verbose] >

00:00:20 #1008 [Verbose] > ╭─[ 142.02ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #1009 [Verbose] > │ ()                                                                           │

00:00:20 #1010 [Verbose] > │                                                                              │

00:00:20 #1011 [Verbose] > │                                                                              │

00:00:20 #1012 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1013 [Verbose] >

00:00:20 #1014 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #1015 [Verbose] > // // test

00:00:20 #1016 [Verbose] >

00:00:20 #1017 [Verbose] > inl pedal_coast (t : time) : force =

00:00:20 #1018 [Verbose] >     inl t_cycle = 20

00:00:20 #1019 [Verbose] >     inl n_complete : i32 = t / t_cycle |> conv

00:00:20 #1020 [Verbose] >     inl remainder = t - conv n_complete * t_cycle

00:00:20 #1021 [Verbose] >     if remainder > 0 && remainder < 10

00:00:20 #1022 [Verbose] >     then 10

00:00:20 #1023 [Verbose] >     else 0

00:00:20 #1024 [Verbose] >

00:00:20 #1025 [Verbose] > inl x = am'.init_series -5 45 0.1

00:00:20 #1026 [Verbose] > inl y = x |> am.map pedal_coast

00:00:20 #1027 [Verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "force on bike (N)", x, y ]]

00:00:20 #1028 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4907-0748-02d23667fab7\main.spi

00:00:20 #1029 [Verbose] >

00:00:20 #1030 [Verbose] > ╭─[ 178.51ms - return value ]──────────────────────────────────────────────────╮

00:00:20 #1031 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:20 #1032 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:20 #1033 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:20 #1034 [Verbose] > │ stroke="none"/>                                                              │

00:00:20 #1035 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:20 #1036 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:20 #1037 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:20 #1038 [Verbose] > │ child pedaling then coasting                                                 │

00:00:20 #1039 [Verbose] > │ </text>                                                                      │

00:00:20 #1040 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:20 #1041 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1042 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:20 #1043 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1044 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:20 #1045 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1046 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:20 #1047 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1048 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:20 #1049 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1050 [Verbose] >

00:00:20 #1051 [Verbose] > ╭─[ 189.72ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #1052 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:20 #1053 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:20 #1054 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:20 #1055 [Verbose] > │     let v2 : bool = v1 < 501                                                 │

00:00:20 #1056 [Verbose] > │     v2                                                                       │

00:00:20 #1057 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:20 #1058 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:20 #1059 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:20 #1060 [Verbose] > │     v3                                                                       │

00:00:20 #1061 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:20 #1062 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:20 #1063 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (501)                      │

00:00:20 #1064 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:20 #1065 [Verbose] > │     while method1(v1) do                                                     │

00:00:20 #1066 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:20 #1067 [Verbose] > │         let v4 : float = float v3                                            │

00:00:20 #1068 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:20 #1069 [Verbose] > │         let v6 : float = -5.0 + v5                                           │

00:00:20 #1070 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:20 #1071 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:20 #1072 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:20 #1073 [Verbose] > │         ()                                                                   │

00:00:20 #1074 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:20 #1075 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:20 #1076 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:20 #1077 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:20 #1078 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:20 #1079 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:20 #1080 [Verbose] > │         let v14 : float = v13 / 20.0                                         │

00:00:20 #1081 [Verbose] > │         let v15 : int32 = int32 v14                                          │

00:00:20 #1082 [Verbose] > │         let v16 : float = float v15                                          │

00:00:20 #1083 [Verbose] > │         let v17 : float = v16 * 20.0                                         │

00:00:21 #1084 [Verbose] > │         let v18 : float = v13 - v17                                          │

00:00:21 #1085 [Verbose] > │         let v19 : bool = v18 > 0.0                                           │

00:00:21 #1086 [Verbose] > │         let v21 : bool =                                                     │

00:00:21 #1087 [Verbose] > │             if v19 then                                                      │

00:00:21 #1088 [Verbose] > │                 let v20 : bool = v18 < 10.0                                  │

00:00:21 #1089 [Verbose] > │                 v20                                                          │

00:00:21 #1090 [Verbose] > │             else                                                             │

00:00:21 #1091 [Verbose] > │                 false                                                        │

00:00:21 #1092 [Verbose] > │         let v22 : float =                                                    │

00:00:21 #1093 [Verbose] > │             if v21 then                                                      │

00:00:21 #1094 [Verbose] > │                 10.0                                                         │

00:00:21 #1095 [Verbose] > │             else                                                             │

00:00:21 #1096 [Verbose] > │                 0.0                                                          │

00:00:21 #1097 [Verbose] > │         v9.[int v12] <- v22                                                  │

00:00:21 #1098 [Verbose] > │         let v23 : int32 = v12 + 1                                            │

00:00:21 #1099 [Verbose] > │         v10.l0 <- v23                                                        │

00:00:21 #1100 [Verbose] > │         ()                                                                   │

00:00:21 #1101 [Verbose] > │     let v24 : string = "force on bike (N)"                                   │

00:00:21 #1102 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:21 #1103 [Verbose] > │ (v24, v0, v9)|]                                                              │

00:00:21 #1104 [Verbose] > │     let v26 : string = "child pedaling then coasting"                        │

00:00:21 #1105 [Verbose] > │     let v27 : string = "time (s)"                                            │

00:00:21 #1106 [Verbose] > │     let v28 : string = ""                                                    │

00:00:21 #1107 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:21 #1108 [Verbose] > │ method0()                                                                    │

00:00:21 #1109 [Verbose] > │                                                                              │

00:00:21 #1110 [Verbose] > │                                                                              │

00:00:21 #1111 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1112 [Verbose] >

00:00:21 #1113 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #1114 [Verbose] > // // test

00:00:21 #1115 [Verbose] >

00:00:21 #1116 [Verbose] > inl x = am'.init_series -5 45 1

00:00:21 #1117 [Verbose] > inl y = x |> am.map (position_ft 0.1f64 20 0 0 [[ pedal_coast ]])

00:00:21 #1118 [Verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "position of bike (m)", x, y

00:00:21 #1119 [Verbose] > ]]

00:00:21 #1120 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4929-2909-2c6197c1b32d\main.spi

00:00:21 #1121 [Verbose] >

00:00:21 #1122 [Verbose] > ╭─[ 452.74ms - return value ]──────────────────────────────────────────────────╮

00:00:21 #1123 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:21 #1124 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:21 #1125 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:21 #1126 [Verbose] > │ stroke="none"/>                                                              │

00:00:21 #1127 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:21 #1128 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:21 #1129 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:21 #1130 [Verbose] > │ child pedaling then coasting                                                 │

00:00:21 #1131 [Verbose] > │ </text>                                                                      │

00:00:21 #1132 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:21 #1133 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1134 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:21 #1135 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1136 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:21 #1137 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1138 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:21 #1139 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1140 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:21 #1141 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1142 [Verbose] >

00:00:21 #1143 [Verbose] > ╭─[ 466.29ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #1144 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:21 #1145 [Verbose] > │ and UH0 =                                                                    │

00:00:21 #1146 [Verbose] > │     | UH0_0 of float * UH0                                                   │

00:00:21 #1147 [Verbose] > │     | UH0_1                                                                  │

00:00:21 #1148 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:21 #1149 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:21 #1150 [Verbose] > │     let v2 : bool = v1 < 51                                                  │

00:00:21 #1151 [Verbose] > │     v2                                                                       │

00:00:21 #1152 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:21 #1153 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:21 #1154 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #1155 [Verbose] > │     v3                                                                       │

00:00:21 #1156 [Verbose] > │ and method3 (v0 : float, v1 : float) : UH0 =                                 │

00:00:21 #1157 [Verbose] > │     let v2 : bool = v1 < v0                                                  │

00:00:21 #1158 [Verbose] > │     if v2 then                                                               │

00:00:21 #1159 [Verbose] > │         let v3 : float = 0.1 * v1                                            │

00:00:21 #1160 [Verbose] > │         let v4 : float = 0.05 + v3                                           │

00:00:21 #1161 [Verbose] > │         let v5 : float = v1 + 1.0                                            │

00:00:21 #1162 [Verbose] > │         let v6 : UH0 = method3(v0, v5)                                       │

00:00:21 #1163 [Verbose] > │         UH0_0(v4, v6)                                                        │

00:00:21 #1164 [Verbose] > │     else                                                                     │

00:00:21 #1165 [Verbose] > │         UH0_1                                                                │

00:00:21 #1166 [Verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:21 #1167 [Verbose] > │     match v0 with                                                            │

00:00:21 #1168 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:21 #1169 [Verbose] > │         let v4 : UH0 = method5(v3, v1)                                       │

00:00:21 #1170 [Verbose] > │         let v5 : float = v2 / 20.0                                           │

00:00:21 #1171 [Verbose] > │         let v6 : int32 = int32 v5                                            │

00:00:21 #1172 [Verbose] > │         let v7 : float = float v6                                            │

00:00:21 #1173 [Verbose] > │         let v8 : float = v7 * 20.0                                           │

00:00:21 #1174 [Verbose] > │         let v9 : float = v2 - v8                                             │

00:00:21 #1175 [Verbose] > │         let v10 : bool = v9 > 0.0                                            │

00:00:21 #1176 [Verbose] > │         let v12 : bool =                                                     │

00:00:21 #1177 [Verbose] > │             if v10 then                                                      │

00:00:21 #1178 [Verbose] > │                 let v11 : bool = v9 < 10.0                                   │

00:00:21 #1179 [Verbose] > │                 v11                                                          │

00:00:21 #1180 [Verbose] > │             else                                                             │

00:00:21 #1181 [Verbose] > │                 false                                                        │

00:00:21 #1182 [Verbose] > │         let v13 : float =                                                    │

00:00:21 #1183 [Verbose] > │             if v12 then                                                      │

00:00:21 #1184 [Verbose] > │                 10.0                                                         │

00:00:21 #1185 [Verbose] > │             else                                                             │

00:00:21 #1186 [Verbose] > │                 0.0                                                          │

00:00:21 #1187 [Verbose] > │         let v14 : float = v13 / 20.0                                         │

00:00:21 #1188 [Verbose] > │         let v15 : float = 0.1 * v14                                          │

00:00:21 #1189 [Verbose] > │         UH0_0(v15, v4)                                                       │

00:00:21 #1190 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:21 #1191 [Verbose] > │         v1                                                                   │

00:00:21 #1192 [Verbose] > │ and method6 (v0 : UH0, v1 : float) : float =                                 │

00:00:21 #1193 [Verbose] > │     match v0 with                                                            │

00:00:21 #1194 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:21 #1195 [Verbose] > │         let v4 : float = v1 + v2                                             │

00:00:21 #1196 [Verbose] > │         method6(v3, v4)                                                      │

00:00:21 #1197 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:21 #1198 [Verbose] > │         v1                                                                   │

00:00:21 #1199 [Verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:21 #1200 [Verbose] > │     match v0 with                                                            │

00:00:21 #1201 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:21 #1202 [Verbose] > │         let v4 : UH0 = method4(v3, v1)                                       │

00:00:21 #1203 [Verbose] > │         let v5 : float = v2 - 0.05                                           │

00:00:21 #1204 [Verbose] > │         let v6 : float = v5 - 0.05                                           │

00:00:21 #1205 [Verbose] > │         let v7 : float = v6 / 0.1                                            │

00:00:21 #1206 [Verbose] > │         let v8 : float = v7 + 1.0                                            │

00:00:21 #1207 [Verbose] > │         let v9 : float = 0.0                                                 │

00:00:21 #1208 [Verbose] > │         let v10 : UH0 = method3(v8, v9)                                      │

00:00:21 #1209 [Verbose] > │         let v11 : UH0 = UH0_1                                                │

00:00:21 #1210 [Verbose] > │         let v12 : UH0 = method5(v10, v11)                                    │

00:00:21 #1211 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:21 #1212 [Verbose] > │         let v14 : float = method6(v12, v13)                                  │

00:00:21 #1213 [Verbose] > │         let v15 : float = 0.1 * v14                                          │

00:00:21 #1214 [Verbose] > │         UH0_0(v15, v4)                                                       │

00:00:21 #1215 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:21 #1216 [Verbose] > │         v1                                                                   │

00:00:21 #1217 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:21 #1218 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:21 #1219 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (51)                       │

00:00:21 #1220 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:21 #1221 [Verbose] > │     while method1(v1) do                                                     │

00:00:21 #1222 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:21 #1223 [Verbose] > │         let v4 : float = float v3                                            │

00:00:21 #1224 [Verbose] > │         let v5 : float = -5.0 + v4                                           │

00:00:21 #1225 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:21 #1226 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:21 #1227 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:21 #1228 [Verbose] > │         ()                                                                   │

00:00:21 #1229 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:21 #1230 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:21 #1231 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:21 #1232 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:21 #1233 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:21 #1234 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:21 #1235 [Verbose] > │         let v13 : float = v12 - 0.05                                         │

00:00:21 #1236 [Verbose] > │         let v14 : float = v13 - 0.05                                         │

00:00:21 #1237 [Verbose] > │         let v15 : float = v14 / 0.1                                          │

00:00:21 #1238 [Verbose] > │         let v16 : float = v15 + 1.0                                          │

00:00:21 #1239 [Verbose] > │         let v17 : float = 0.0                                                │

00:00:21 #1240 [Verbose] > │         let v18 : UH0 = method3(v16, v17)                                    │

00:00:21 #1241 [Verbose] > │         let v19 : UH0 = UH0_1                                                │

00:00:21 #1242 [Verbose] > │         let v20 : UH0 = method4(v18, v19)                                    │

00:00:21 #1243 [Verbose] > │         let v21 : float = 0.0                                                │

00:00:21 #1244 [Verbose] > │         let v22 : float = method6(v20, v21)                                  │

00:00:21 #1245 [Verbose] > │         v8.[int v11] <- v22                                                  │

00:00:21 #1246 [Verbose] > │         let v23 : int32 = v11 + 1                                            │

00:00:21 #1247 [Verbose] > │         v9.l0 <- v23                                                         │

00:00:21 #1248 [Verbose] > │         ()                                                                   │

00:00:21 #1249 [Verbose] > │     let v24 : string = "position of bike (m)"                                │

00:00:21 #1250 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:21 #1251 [Verbose] > │ (v24, v0, v8)|]                                                              │

00:00:21 #1252 [Verbose] > │     let v26 : string = "child pedaling then coasting"                        │

00:00:21 #1253 [Verbose] > │     let v27 : string = "time (s)"                                            │

00:00:21 #1254 [Verbose] > │     let v28 : string = ""                                                    │

00:00:21 #1255 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:21 #1256 [Verbose] > │ method0()                                                                    │

00:00:21 #1257 [Verbose] > │                                                                              │

00:00:21 #1258 [Verbose] > │                                                                              │

00:00:21 #1259 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1260 [Verbose] >

00:00:21 #1261 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:21 #1262 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:21 #1263 [Verbose] > │ ## velocity_fv                                                               │

00:00:21 #1264 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1265 [Verbose] >

00:00:21 #1266 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #1267 [Verbose] > inl newton_second_v m fs v0 =

00:00:21 #1268 [Verbose] >     fs |> listm.map (fun f => f v0) |> listm'.sum |> fun x => x / m

00:00:21 #1269 [Verbose] >

00:00:21 #1270 [Verbose] > inl update_velocity dt m fs v0 =

00:00:21 #1271 [Verbose] >     v0 + newton_second_v m fs v0 * dt

00:00:21 #1272 [Verbose] >

00:00:21 #1273 [Verbose] > inl velocity_fv dt m v0 fs t =

00:00:21 #1274 [Verbose] >     stream.iterate (update_velocity dt m fs) v0

00:00:21 #1275 [Verbose] >     |> stream.try_item (t / dt |> math.round |> abs)

00:00:21 #1276 [Verbose] >     |> optionm'.default_value 0

00:00:21 #1277 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4982-8239-8ddb8ff0f067\main.spi

00:00:21 #1278 [Verbose] >

00:00:21 #1279 [Verbose] > ╭─[ 177.84ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #1280 [Verbose] > │ ()                                                                           │

00:00:21 #1281 [Verbose] > │                                                                              │

00:00:21 #1282 [Verbose] > │                                                                              │

00:00:21 #1283 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1284 [Verbose] >

00:00:21 #1285 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #1286 [Verbose] > inl f_air drag rho area v =

00:00:21 #1287 [Verbose] >     -drag * rho * area * abs v * v / 2

00:00:21 #1288 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5000-0014-0b415225b75d\main.spi

00:00:21 #1289 [Verbose] >

00:00:21 #1290 [Verbose] > ╭─[ 168.99ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #1291 [Verbose] > │ ()                                                                           │

00:00:21 #1292 [Verbose] > │                                                                              │

00:00:21 #1293 [Verbose] > │                                                                              │

00:00:21 #1294 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1295 [Verbose] >

00:00:21 #1296 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #1297 [Verbose] > // // test

00:00:21 #1298 [Verbose] >

00:00:21 #1299 [Verbose] > inl x = am'.init_series 0 60 0.5

00:00:21 #1300 [Verbose] > inl y = x |> am.map (velocity_fv 1 70 0f64 [[ fun _ => 100; f_air 2 1.225 0.6

00:00:21 #1301 [Verbose] > ]])

00:00:21 #1302 [Verbose] > "bike velocity", "time (s)", "", ;[[ "velocity of bike (m/s)", x, y ]]

00:00:22 #1303 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5017-1734-1e60bbd74247\main.spi

00:00:22 #1304 [Verbose] >

00:00:22 #1305 [Verbose] > ╭─[ 535.91ms - return value ]──────────────────────────────────────────────────╮

00:00:22 #1306 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:22 #1307 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:22 #1308 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:22 #1309 [Verbose] > │ stroke="none"/>                                                              │

00:00:22 #1310 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:22 #1311 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:22 #1312 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:22 #1313 [Verbose] > │ bike velocity                                                                │

00:00:22 #1314 [Verbose] > │ </text>                                                                      │

00:00:22 #1315 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:22 #1316 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1317 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:22 #1318 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1319 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:22 #1320 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1321 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:22 #1322 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1323 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x...    │

00:00:22 #1324 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1325 [Verbose] >

00:00:22 #1326 [Verbose] > ╭─[ 550.39ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #1327 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:22 #1328 [Verbose] > │ and UH0 =                                                                    │

00:00:22 #1329 [Verbose] > │     | UH0_0 of float * (unit -> UH0)                                         │

00:00:22 #1330 [Verbose] > │     | UH0_1                                                                  │

00:00:22 #1331 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:22 #1332 [Verbose] > │     | US0_0                                                                  │

00:00:22 #1333 [Verbose] > │     | US0_1 of f1_0 : float                                                  │

00:00:22 #1334 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:22 #1335 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:22 #1336 [Verbose] > │     let v2 : bool = v1 < 121                                                 │

00:00:22 #1337 [Verbose] > │     v2                                                                       │

00:00:22 #1338 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:22 #1339 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:22 #1340 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:22 #1341 [Verbose] > │     v3                                                                       │

00:00:22 #1342 [Verbose] > │ and closure129 () () : UH0 =                                                 │

00:00:22 #1343 [Verbose] > │     let v0 : (unit -> UH0) = closure129()                                    │

00:00:22 #1344 [Verbose] > │     UH0_0(11.664236870396083, v0)                                            │

00:00:22 #1345 [Verbose] > │ and closure128 () () : UH0 =                                                 │

00:00:22 #1346 [Verbose] > │     let v0 : (unit -> UH0) = closure129()                                    │

00:00:22 #1347 [Verbose] > │     UH0_0(11.664236870396081, v0)                                            │

00:00:22 #1348 [Verbose] > │ and closure127 () () : UH0 =                                                 │

00:00:22 #1349 [Verbose] > │     let v0 : (unit -> UH0) = closure128()                                    │

00:00:22 #1350 [Verbose] > │     UH0_0(11.66423687039608, v0)                                             │

00:00:22 #1351 [Verbose] > │ and closure126 () () : UH0 =                                                 │

00:00:22 #1352 [Verbose] > │     let v0 : (unit -> UH0) = closure127()                                    │

00:00:22 #1353 [Verbose] > │     UH0_0(11.664236870396078, v0)                                            │

00:00:22 #1354 [Verbose] > │ and closure125 () () : UH0 =                                                 │

00:00:22 #1355 [Verbose] > │     let v0 : (unit -> UH0) = closure126()                                    │

00:00:22 #1356 [Verbose] > │     UH0_0(11.664236870396074, v0)                                            │

00:00:22 #1357 [Verbose] > │ and closure124 () () : UH0 =                                                 │

00:00:22 #1358 [Verbose] > │     let v0 : (unit -> UH0) = closure125()                                    │

00:00:22 #1359 [Verbose] > │     UH0_0(11.66423687039607, v0)                                             │

00:00:22 #1360 [Verbose] > │ and closure123 () () : UH0 =                                                 │

00:00:22 #1361 [Verbose] > │     let v0 : (unit -> UH0) = closure124()                                    │

00:00:22 #1362 [Verbose] > │     UH0_0(11.664236870396065, v0)                                            │

00:00:22 #1363 [Verbose] > │ and closure122 () () : UH0 =                                                 │

00:00:22 #1364 [Verbose] > │     let v0 : (unit -> UH0) = closure123()                                    │

00:00:22 #1365 [Verbose] > │     UH0_0(11.664236870396058, v0)                                            │

00:00:22 #1366 [Verbose] > │ and closure121 () () : UH0 =                                                 │

00:00:22 #1367 [Verbose] > │     let v0 : (unit -> UH0) = closure122()                                    │

00:00:22 #1368 [Verbose] > │     UH0_0(11.66423687039605, v0)                                             │

00:00:22 #1369 [Verbose] > │ and closure120 () () : UH0 =                                                 │

00:00:22 #1370 [Verbose] > │     let v0 : (unit -> UH0) = closure121()                                    │

00:00:22 #1371 [Verbose] > │     UH0_0(11.664236870396037, v0)                                            │

00:00:22 #1372 [Verbose] > │ and closure119 () () : UH0 =                                                 │

00:00:22 #1373 [Verbose] > │     let v0 : (unit -> UH0) = closure120()                                    │

00:00:22 #1374 [Verbose] > │     UH0_0(11.66423687039602, v0)                                             │

00:00:22 #1375 [Verbose] > │ and closure118 () () : UH0 =                                                 │

00:00:22 #1376 [Verbose] > │     let v0 : (unit -> UH0) = closure119()                                    │

00:00:22 #1377 [Verbose] > │     UH0_0(11.664236870396, v0)                                               │

00:00:22 #1378 [Verbose] > │ and closure117 () () : UH0 =                                                 │

00:00:22 #1379 [Verbose] > │     let v0 : (unit -> UH0) = closure118()                                    │

00:00:22 #1380 [Verbose] > │     UH0_0(11.664236870395971, v0)                                            │

00:00:22 #1381 [Verbose] > │ and closure116 () () : UH0 =                                                 │

00:00:22 #1382 [Verbose] > │     let v0 : (unit -> UH0) = closure117()                                    │

00:00:22 #1383 [Verbose] > │     UH0_0(11.664236870395934, v0)                                            │

00:00:22 #1384 [Verbose] > │ and closure115 () () : UH0 =                                                 │

00:00:22 #1385 [Verbose] > │     let v0 : (unit -> UH0) = closure116()                                    │

00:00:22 #1386 [Verbose] > │     UH0_0(11.664236870395884, v0)                                            │

00:00:22 #1387 [Verbose] > │ and closure114 () () : UH0 =                                                 │

00:00:22 #1388 [Verbose] > │     let v0 : (unit -> UH0) = closure115()                                    │

00:00:22 #1389 [Verbose] > │     UH0_0(11.664236870395818, v0)                                            │

00:00:22 #1390 [Verbose] > │ and closure113 () () : UH0 =                                                 │

00:00:22 #1391 [Verbose] > │     let v0 : (unit -> UH0) = closure114()                                    │

00:00:22 #1392 [Verbose] > │     UH0_0(11.664236870395731, v0)                                            │

00:00:22 #1393 [Verbose] > │ and closure112 () () : UH0 =                                                 │

00:00:22 #1394 [Verbose] > │     let v0 : (unit -> UH0) = closure113()                                    │

00:00:22 #1395 [Verbose] > │     UH0_0(11.664236870395616, v0)                                            │

00:00:22 #1396 [Verbose] > │ and closure111 () () : UH0 =                                                 │

00:00:22 #1397 [Verbose] > │     let v0 : (unit -> UH0) = closure112()                                    │

00:00:22 #1398 [Verbose] > │     UH0_0(11.664236870395463, v0)                                            │

00:00:22 #1399 [Verbose] > │ and closure110 () () : UH0 =                                                 │

00:00:22 #1400 [Verbose] > │     let v0 : (unit -> UH0) = closure111()                                    │

00:00:22 #1401 [Verbose] > │     UH0_0(11.66423687039526, v0)                                             │

00:00:22 #1402 [Verbose] > │ and closure109 () () : UH0 =                                                 │

00:00:22 #1403 [Verbose] > │     let v0 : (unit -> UH0) = closure110()                                    │

00:00:22 #1404 [Verbose] > │     UH0_0(11.664236870394992, v0)                                            │

00:00:22 #1405 [Verbose] > │ and closure108 () () : UH0 =                                                 │

00:00:22 #1406 [Verbose] > │     let v0 : (unit -> UH0) = closure109()                                    │

00:00:22 #1407 [Verbose] > │     UH0_0(11.664236870394637, v0)                                            │

00:00:22 #1408 [Verbose] > │ and closure107 () () : UH0 =                                                 │

00:00:22 #1409 [Verbose] > │     let v0 : (unit -> UH0) = closure108()                                    │

00:00:22 #1410 [Verbose] > │     UH0_0(11.664236870394168, v0)                                            │

00:00:22 #1411 [Verbose] > │ and closure106 () () : UH0 =                                                 │

00:00:22 #1412 [Verbose] > │     let v0 : (unit -> UH0) = closure107()                                    │

00:00:22 #1413 [Verbose] > │     UH0_0(11.664236870393546, v0)                                            │

00:00:22 #1414 [Verbose] > │ and closure105 () () : UH0 =                                                 │

00:00:22 #1415 [Verbose] > │     let v0 : (unit -> UH0) = closure106()                                    │

00:00:22 #1416 [Verbose] > │     UH0_0(11.664236870392722, v0)                                            │

00:00:22 #1417 [Verbose] > │ and closure104 () () : UH0 =                                                 │

00:00:22 #1418 [Verbose] > │     let v0 : (unit -> UH0) = closure105()                                    │

00:00:22 #1419 [Verbose] > │     UH0_0(11.664236870391631, v0)                                            │

00:00:22 #1420 [Verbose] > │ and closure103 () () : UH0 =                                                 │

00:00:22 #1421 [Verbose] > │     let v0 : (unit -> UH0) = closure104()                                    │

00:00:22 #1422 [Verbose] > │     UH0_0(11.664236870390187, v0)                                            │

00:00:22 #1423 [Verbose] > │ and closure102 () () : UH0 =                                                 │

00:00:22 #1424 [Verbose] > │     let v0 : (unit -> UH0) = closure103()                                    │

00:00:22 #1425 [Verbose] > │     UH0_0(11.664236870388274, v0)                                            │

00:00:22 #1426 [Verbose] > │ and closure101 () () : UH0 =                                                 │

00:00:22 #1427 [Verbose] > │     let v0 : (unit -> UH0) = closure102()                                    │

00:00:22 #1428 [Verbose] > │     UH0_0(11.66423687038574, v0)                                             │

00:00:22 #1429 [Verbose] > │ and closure100 () () : UH0 =                                                 │

00:00:22 #1430 [Verbose] > │     let v0 : (unit -> UH0) = closure101()                                    │

00:00:22 #1431 [Verbose] > │     UH0_0(11.664236870382384, v0)                                            │

00:00:22 #1432 [Verbose] > │ and closure99 () () : UH0 =                                                  │

00:00:22 #1433 [Verbose] > │     let v0 : (unit -> UH0) = closure100()                                    │

00:00:22 #1434 [Verbose] > │     UH0_0(11.664236870377938, v0)                                            │

00:00:22 #1435 [Verbose] > │ and closure98 () () : UH0 =                                                  │

00:00:22 #1436 [Verbose] > │     let v0 : (unit -> UH0) = closure99()                                     │

00:00:22 #1437 [Verbose] > │     UH0_0(11.66423687037205, v0)                                             │

00:00:22 #1438 [Verbose] > │ and closure97 () () : UH0 =                                                  │

00:00:22 #1439 [Verbose] > │     let v0 : (unit -> UH0) = closure98()                                     │

00:00:22 #1440 [Verbose] > │     UH0_0(11.664236870364254, v0)                                            │

00:00:22 #1441 [Verbose] > │ and closure96 () () : UH0 =                                                  │

00:00:22 #1442 [Verbose] > │     let v0 : (unit -> UH0) = closure97()                                     │

00:00:22 #1443 [Verbose] > │     UH0_0(11.664236870353927, v0)                                            │

00:00:22 #1444 [Verbose] > │ and closure95 () () : UH0 =                                                  │

00:00:22 #1445 [Verbose] > │     let v0 : (unit -> UH0) = closure96()                                     │

00:00:22 #1446 [Verbose] > │     UH0_0(11.664236870340249, v0)                                            │

00:00:22 #1447 [Verbose] > │ and closure94 () () : UH0 =                                                  │

00:00:22 #1448 [Verbose] > │     let v0 : (unit -> UH0) = closure95()                                     │

00:00:22 #1449 [Verbose] > │     UH0_0(11.664236870322135, v0)                                            │

00:00:22 #1450 [Verbose] > │ and closure93 () () : UH0 =                                                  │

00:00:22 #1451 [Verbose] > │     let v0 : (unit -> UH0) = closure94()                                     │

00:00:22 #1452 [Verbose] > │     UH0_0(11.664236870298145, v0)                                            │

00:00:22 #1453 [Verbose] > │ and closure92 () () : UH0 =                                                  │

00:00:22 #1454 [Verbose] > │     let v0 : (unit -> UH0) = closure93()                                     │

00:00:22 #1455 [Verbose] > │     UH0_0(11.664236870266372, v0)                                            │

00:00:22 #1456 [Verbose] > │ and closure91 () () : UH0 =                                                  │

00:00:22 #1457 [Verbose] > │     let v0 : (unit -> UH0) = closure92()                                     │

00:00:22 #1458 [Verbose] > │     UH0_0(11.664236870224292, v0)                                            │

00:00:22 #1459 [Verbose] > │ and closure90 () () : UH0 =                                                  │

00:00:22 #1460 [Verbose] > │     let v0 : (unit -> UH0) = closure91()                                     │

00:00:22 #1461 [Verbose] > │     UH0_0(11.66423687016856, v0)                                             │

00:00:22 #1462 [Verbose] > │ and closure89 () () : UH0 =                                                  │

00:00:22 #1463 [Verbose] > │     let v0 : (unit -> UH0) = closure90()                                     │

00:00:22 #1464 [Verbose] > │     UH0_0(11.664236870094747, v0)                                            │

00:00:22 #1465 [Verbose] > │ and closure88 () () : UH0 =                                                  │

00:00:22 #1466 [Verbose] > │     let v0 : (unit -> UH0) = closure89()                                     │

00:00:22 #1467 [Verbose] > │     UH0_0(11.664236869996989, v0)                                            │

00:00:22 #1468 [Verbose] > │ and closure87 () () : UH0 =                                                  │

00:00:22 #1469 [Verbose] > │     let v0 : (unit -> UH0) = closure88()                                     │

00:00:22 #1470 [Verbose] > │     UH0_0(11.664236869867516, v0)                                            │

00:00:22 #1471 [Verbose] > │ and closure86 () () : UH0 =                                                  │

00:00:22 #1472 [Verbose] > │     let v0 : (unit -> UH0) = closure87()                                     │

00:00:22 #1473 [Verbose] > │     UH0_0(11.66423686969604, v0)                                             │

00:00:22 #1474 [Verbose] > │ and closure85 () () : UH0 =                                                  │

00:00:22 #1475 [Verbose] > │     let v0 : (unit -> UH0) = closure86()                                     │

00:00:22 #1476 [Verbose] > │     UH0_0(11.664236869468937, v0)                                            │

00:00:22 #1477 [Verbose] > │ and closure84 () () : UH0 =                                                  │

00:00:22 #1478 [Verbose] > │     let v0 : (unit -> UH0) = closure85()                                     │

00:00:22 #1479 [Verbose] > │     UH0_0(11.664236869168157, v0)                                            │

00:00:22 #1480 [Verbose] > │ and closure83 () () : UH0 =                                                  │

00:00:22 #1481 [Verbose] > │     let v0 : (unit -> UH0) = closure84()                                     │

00:00:22 #1482 [Verbose] > │     UH0_0(11.6642368687698, v0)                                              │

00:00:22 #1483 [Verbose] > │ and closure82 () () : UH0 =                                                  │

00:00:22 #1484 [Verbose] > │     let v0 : (unit -> UH0) = closure83()                                     │

00:00:22 #1485 [Verbose] > │     UH0_0(11.664236868242211, v0)                                            │

00:00:22 #1486 [Verbose] > │ and closure81 () () : UH0 =                                                  │

00:00:22 #1487 [Verbose] > │     let v0 : (unit -> UH0) = closure82()                                     │

00:00:22 #1488 [Verbose] > │     UH0_0(11.664236867543465, v0)                                            │

00:00:22 #1489 [Verbose] > │ and closure80 () () : UH0 =                                                  │

00:00:22 #1490 [Verbose] > │     let v0 : (unit -> UH0) = closure81()                                     │

00:00:22 #1491 [Verbose] > │     UH0_0(11.664236866618037, v0)                                            │

00:00:22 #1492 [Verbose] > │ and closure79 () () : UH0 =                                                  │

00:00:22 #1493 [Verbose] > │     let v0 : (unit -> UH0) = closure80()                                     │

00:00:22 #1494 [Verbose] > │     UH0_0(11.664236865392386, v0)                                            │

00:00:22 #1495 [Verbose] > │ and closure78 () () : UH0 =                                                  │

00:00:22 #1496 [Verbose] > │     let v0 : (unit -> UH0) = closure79()                                     │

00:00:22 #1497 [Verbose] > │     UH0_0(11.664236863769117, v0)                                            │

00:00:22 #1498 [Verbose] > │ and closure77 () () : UH0 =                                                  │

00:00:22 #1499 [Verbose] > │     let v0 : (unit -> UH0) = closure78()                                     │

00:00:22 #1500 [Verbose] > │     UH0_0(11.664236861619237, v0)                                            │

00:00:22 #1501 [Verbose] > │ and closure76 () () : UH0 =                                                  │

00:00:22 #1502 [Verbose] > │     let v0 : (unit -> UH0) = closure77()                                     │

00:00:22 #1503 [Verbose] > │     UH0_0(11.664236858771906, v0)                                            │

00:00:22 #1504 [Verbose] > │ and closure75 () () : UH0 =                                                  │

00:00:22 #1505 [Verbose] > │     let v0 : (unit -> UH0) = closure76()                                     │

00:00:22 #1506 [Verbose] > │     UH0_0(11.66423685500086, v0)                                             │

00:00:22 #1507 [Verbose] > │ and closure74 () () : UH0 =                                                  │

00:00:22 #1508 [Verbose] > │     let v0 : (unit -> UH0) = closure75()                                     │

00:00:22 #1509 [Verbose] > │     UH0_0(11.664236850006436, v0)                                            │

00:00:22 #1510 [Verbose] > │ and closure73 () () : UH0 =                                                  │

00:00:22 #1511 [Verbose] > │     let v0 : (unit -> UH0) = closure74()                                     │

00:00:22 #1512 [Verbose] > │     UH0_0(11.664236843391752, v0)                                            │

00:00:22 #1513 [Verbose] > │ and closure72 () () : UH0 =                                                  │

00:00:22 #1514 [Verbose] > │     let v0 : (unit -> UH0) = closure73()                                     │

00:00:22 #1515 [Verbose] > │     UH0_0(11.664236834631172, v0)                                            │

00:00:22 #1516 [Verbose] > │ and closure71 () () : UH0 =                                                  │

00:00:22 #1517 [Verbose] > │     let v0 : (unit -> UH0) = closure72()                                     │

00:00:22 #1518 [Verbose] > │     UH0_0(11.66423682302854, v0)                                             │

00:00:22 #1519 [Verbose] > │ and closure70 () () : UH0 =                                                  │

00:00:22 #1520 [Verbose] > │     let v0 : (unit -> UH0) = closure71()                                     │

00:00:22 #1521 [Verbose] > │     UH0_0(11.664236807661855, v0)                                            │

00:00:22 #1522 [Verbose] > │ and closure69 () () : UH0 =                                                  │

00:00:22 #1523 [Verbose] > │     let v0 : (unit -> UH0) = closure70()                                     │

00:00:22 #1524 [Verbose] > │     UH0_0(11.664236787310005, v0)                                            │

00:00:22 #1525 [Verbose] > │ and closure68 () () : UH0 =                                                  │

00:00:22 #1526 [Verbose] > │     let v0 : (unit -> UH0) = closure69()                                     │

00:00:22 #1527 [Verbose] > │     UH0_0(11.664236760355733, v0)                                            │

00:00:22 #1528 [Verbose] > │ and closure67 () () : UH0 =                                                  │

00:00:22 #1529 [Verbose] > │     let v0 : (unit -> UH0) = closure68()                                     │

00:00:22 #1530 [Verbose] > │     UH0_0(11.664236724657123, v0)                                            │

00:00:22 #1531 [Verbose] > │ and closure66 () () : UH0 =                                                  │

00:00:22 #1532 [Verbose] > │     let v0 : (unit -> UH0) = closure67()                                     │

00:00:22 #1533 [Verbose] > │     UH0_0(11.66423667737739, v0)                                             │

00:00:22 #1534 [Verbose] > │ and closure65 () () : UH0 =                                                  │

00:00:22 #1535 [Verbose] > │     let v0 : (unit -> UH0) = closure66()                                     │

00:00:22 #1536 [Verbose] > │     UH0_0(11.664236614759462, v0)                                            │

00:00:22 #1537 [Verbose] > │ and closure64 () () : UH0 =                                                  │

00:00:22 #1538 [Verbose] > │     let v0 : (unit -> UH0) = closure65()                                     │

00:00:22 #1539 [Verbose] > │     UH0_0(11.664236531827415, v0)                                            │

00:00:22 #1540 [Verbose] > │ and closure63 () () : UH0 =                                                  │

00:00:22 #1541 [Verbose] > │     let v0 : (unit -> UH0) = closure64()                                     │

00:00:22 #1542 [Verbose] > │     UH0_0(11.664236421991067, v0)                                            │

00:00:22 #1543 [Verbose] > │ and closure62 () () : UH0 =                                                  │

00:00:22 #1544 [Verbose] > │     let v0 : (unit -> UH0) = closure63()                                     │

00:00:22 #1545 [Verbose] > │     UH0_0(11.664236276522294, v0)                                            │

00:00:22 #1546 [Verbose] > │ and closure61 () () : UH0 =                                                  │

00:00:22 #1547 [Verbose] > │     let v0 : (unit -> UH0) = closure62()                                     │

00:00:22 #1548 [Verbose] > │     UH0_0(11.664236083861448, v0)                                            │

00:00:22 #1549 [Verbose] > │ and closure60 () () : UH0 =                                                  │

00:00:22 #1550 [Verbose] > │     let v0 : (unit -> UH0) = closure61()                                     │

00:00:22 #1551 [Verbose] > │     UH0_0(11.664235828698772, v0)                                            │

00:00:22 #1552 [Verbose] > │ and closure59 () () : UH0 =                                                  │

00:00:22 #1553 [Verbose] > │     let v0 : (unit -> UH0) = closure60()                                     │

00:00:22 #1554 [Verbose] > │     UH0_0(11.664235490757811, v0)                                            │

00:00:22 #1555 [Verbose] > │ and closure58 () () : UH0 =                                                  │

00:00:22 #1556 [Verbose] > │     let v0 : (unit -> UH0) = closure59()                                     │

00:00:22 #1557 [Verbose] > │     UH0_0(11.664235043184158, v0)                                            │

00:00:22 #1558 [Verbose] > │ and closure57 () () : UH0 =                                                  │

00:00:22 #1559 [Verbose] > │     let v0 : (unit -> UH0) = closure58()                                     │

00:00:22 #1560 [Verbose] > │     UH0_0(11.66423445041147, v0)                                             │

00:00:22 #1561 [Verbose] > │ and closure56 () () : UH0 =                                                  │

00:00:22 #1562 [Verbose] > │     let v0 : (unit -> UH0) = closure57()                                     │

00:00:22 #1563 [Verbose] > │     UH0_0(11.664233665335203, v0)                                            │

00:00:22 #1564 [Verbose] > │ and closure55 () () : UH0 =                                                  │

00:00:22 #1565 [Verbose] > │     let v0 : (unit -> UH0) = closure56()                                     │

00:00:22 #1566 [Verbose] > │     UH0_0(11.664232625569467, v0)                                            │

00:00:22 #1567 [Verbose] > │ and closure54 () () : UH0 =                                                  │

00:00:22 #1568 [Verbose] > │     let v0 : (unit -> UH0) = closure55()                                     │

00:00:22 #1569 [Verbose] > │     UH0_0(11.664231248489562, v0)                                            │

00:00:22 #1570 [Verbose] > │ and closure53 () () : UH0 =                                                  │

00:00:22 #1571 [Verbose] > │     let v0 : (unit -> UH0) = closure54()                                     │

00:00:22 #1572 [Verbose] > │     UH0_0(11.664229424666262, v0)                                            │

00:00:22 #1573 [Verbose] > │ and closure52 () () : UH0 =                                                  │

00:00:22 #1574 [Verbose] > │     let v0 : (unit -> UH0) = closure53()                                     │

00:00:22 #1575 [Verbose] > │     UH0_0(11.66422700917009, v0)                                             │

00:00:22 #1576 [Verbose] > │ and closure51 () () : UH0 =                                                  │

00:00:22 #1577 [Verbose] > │     let v0 : (unit -> UH0) = closure52()                                     │

00:00:22 #1578 [Verbose] > │     UH0_0(11.664223810054642, v0)                                            │

00:00:22 #1579 [Verbose] > │ and closure50 () () : UH0 =                                                  │

00:00:22 #1580 [Verbose] > │     let v0 : (unit -> UH0) = closure51()                                     │

00:00:22 #1581 [Verbose] > │     UH0_0(11.664219573103773, v0)                                            │

00:00:22 #1582 [Verbose] > │ and closure49 () () : UH0 =                                                  │

00:00:22 #1583 [Verbose] > │     let v0 : (unit -> UH0) = closure50()                                     │

00:00:22 #1584 [Verbose] > │     UH0_0(11.6642139616307, v0)                                              │

00:00:22 #1585 [Verbose] > │ and closure48 () () : UH0 =                                                  │

00:00:22 #1586 [Verbose] > │     let v0 : (unit -> UH0) = closure49()                                     │

00:00:22 #1587 [Verbose] > │     UH0_0(11.664206529723813, v0)                                            │

00:00:22 #1588 [Verbose] > │ and closure47 () () : UH0 =                                                  │

00:00:22 #1589 [Verbose] > │     let v0 : (unit -> UH0) = closure48()                                     │

00:00:22 #1590 [Verbose] > │     UH0_0(11.664196686813408, v0)                                            │

00:00:22 #1591 [Verbose] > │ and closure46 () () : UH0 =                                                  │

00:00:22 #1592 [Verbose] > │     let v0 : (unit -> UH0) = closure47()                                     │

00:00:22 #1593 [Verbose] > │     UH0_0(11.664183650743945, v0)                                            │

00:00:22 #1594 [Verbose] > │ and closure45 () () : UH0 =                                                  │

00:00:22 #1595 [Verbose] > │     let v0 : (unit -> UH0) = closure46()                                     │

00:00:22 #1596 [Verbose] > │     UH0_0(11.664166385623318, v0)                                            │

00:00:22 #1597 [Verbose] > │ and closure44 () () : UH0 =                                                  │

00:00:22 #1598 [Verbose] > │     let v0 : (unit -> UH0) = closure45()                                     │

00:00:22 #1599 [Verbose] > │     UH0_0(11.664143519511356, v0)                                            │

00:00:22 #1600 [Verbose] > │ and closure43 () () : UH0 =                                                  │

00:00:22 #1601 [Verbose] > │     let v0 : (unit -> UH0) = closure44()                                     │

00:00:22 #1602 [Verbose] > │     UH0_0(11.664113235408447, v0)                                            │

00:00:22 #1603 [Verbose] > │ and closure42 () () : UH0 =                                                  │

00:00:22 #1604 [Verbose] > │     let v0 : (unit -> UH0) = closure43()                                     │

00:00:22 #1605 [Verbose] > │     UH0_0(11.66407312688485, v0)                                             │

00:00:22 #1606 [Verbose] > │ and closure41 () () : UH0 =                                                  │

00:00:22 #1607 [Verbose] > │     let v0 : (unit -> UH0) = closure42()                                     │

00:00:22 #1608 [Verbose] > │     UH0_0(11.664020006883758, v0)                                            │

00:00:22 #1609 [Verbose] > │ and closure40 () () : UH0 =                                                  │

00:00:22 #1610 [Verbose] > │     let v0 : (unit -> UH0) = closure41()                                     │

00:00:22 #1611 [Verbose] > │     UH0_0(11.663949654514292, v0)                                            │

00:00:22 #1612 [Verbose] > │ and closure39 () () : UH0 =                                                  │

00:00:22 #1613 [Verbose] > │     let v0 : (unit -> UH0) = closure40()                                     │

00:00:22 #1614 [Verbose] > │     UH0_0(11.663856479730171, v0)                                            │

00:00:22 #1615 [Verbose] > │ and closure38 () () : UH0 =                                                  │

00:00:22 #1616 [Verbose] > │     let v0 : (unit -> UH0) = closure39()                                     │

00:00:22 #1617 [Verbose] > │     UH0_0(11.663733079277343, v0)                                            │

00:00:22 #1618 [Verbose] > │ and closure37 () () : UH0 =                                                  │

00:00:22 #1619 [Verbose] > │     let v0 : (unit -> UH0) = closure38()                                     │

00:00:22 #1620 [Verbose] > │     UH0_0(11.663569648675777, v0)                                            │

00:00:22 #1621 [Verbose] > │ and closure36 () () : UH0 =                                                  │

00:00:22 #1622 [Verbose] > │     let v0 : (unit -> UH0) = closure37()                                     │

00:00:22 #1623 [Verbose] > │     UH0_0(11.663353203599439, v0)                                            │

00:00:22 #1624 [Verbose] > │ and closure35 () () : UH0 =                                                  │

00:00:22 #1625 [Verbose] > │     let v0 : (unit -> UH0) = closure36()                                     │

00:00:22 #1626 [Verbose] > │     UH0_0(11.663066548940721, v0)                                            │

00:00:22 #1627 [Verbose] > │ and closure34 () () : UH0 =                                                  │

00:00:22 #1628 [Verbose] > │     let v0 : (unit -> UH0) = closure35()                                     │

00:00:22 #1629 [Verbose] > │     UH0_0(11.662686913915445, v0)                                            │

00:00:22 #1630 [Verbose] > │ and closure33 () () : UH0 =                                                  │

00:00:22 #1631 [Verbose] > │     let v0 : (unit -> UH0) = closure34()                                     │

00:00:22 #1632 [Verbose] > │     UH0_0(11.662184145236864, v0)                                            │

00:00:22 #1633 [Verbose] > │ and closure32 () () : UH0 =                                                  │

00:00:22 #1634 [Verbose] > │     let v0 : (unit -> UH0) = closure33()                                     │

00:00:22 #1635 [Verbose] > │     UH0_0(11.661518315638029, v0)                                            │

00:00:22 #1636 [Verbose] > │ and closure31 () () : UH0 =                                                  │

00:00:22 #1637 [Verbose] > │     let v0 : (unit -> UH0) = closure32()                                     │

00:00:22 #1638 [Verbose] > │     UH0_0(11.66063655920926, v0)                                             │

00:00:22 #1639 [Verbose] > │ and closure30 () () : UH0 =                                                  │

00:00:22 #1640 [Verbose] > │     let v0 : (unit -> UH0) = closure31()                                     │

00:00:22 #1641 [Verbose] > │     UH0_0(11.659468884709733, v0)                                            │

00:00:22 #1642 [Verbose] > │ and closure29 () () : UH0 =                                                  │

00:00:22 #1643 [Verbose] > │     let v0 : (unit -> UH0) = closure30()                                     │

00:00:22 #1644 [Verbose] > │     UH0_0(11.657922638782631, v0)                                            │

00:00:22 #1645 [Verbose] > │ and closure28 () () : UH0 =                                                  │

00:00:22 #1646 [Verbose] > │     let v0 : (unit -> UH0) = closure29()                                     │

00:00:22 #1647 [Verbose] > │     UH0_0(11.655875187195818, v0)                                            │

00:00:22 #1648 [Verbose] > │ and closure27 () () : UH0 =                                                  │

00:00:22 #1649 [Verbose] > │     let v0 : (unit -> UH0) = closure28()                                     │

00:00:22 #1650 [Verbose] > │     UH0_0(11.653164246713697, v0)                                            │

00:00:22 #1651 [Verbose] > │ and closure26 () () : UH0 =                                                  │

00:00:22 #1652 [Verbose] > │     let v0 : (unit -> UH0) = closure27()                                     │

00:00:22 #1653 [Verbose] > │     UH0_0(11.64957512416459, v0)                                             │

00:00:22 #1654 [Verbose] > │ and closure25 () () : UH0 =                                                  │

00:00:22 #1655 [Verbose] > │     let v0 : (unit -> UH0) = closure26()                                     │

00:00:22 #1656 [Verbose] > │     UH0_0(11.644823892116417, v0)                                            │

00:00:22 #1657 [Verbose] > │ and closure24 () () : UH0 =                                                  │

00:00:22 #1658 [Verbose] > │     let v0 : (unit -> UH0) = closure25()                                     │

00:00:22 #1659 [Verbose] > │     UH0_0(11.63853524018339, v0)                                             │

00:00:22 #1660 [Verbose] > │ and closure23 () () : UH0 =                                                  │

00:00:22 #1661 [Verbose] > │     let v0 : (unit -> UH0) = closure24()                                     │

00:00:22 #1662 [Verbose] > │     UH0_0(11.630213374558416, v0)                                            │

00:00:22 #1663 [Verbose] > │ and closure22 () () : UH0 =                                                  │

00:00:22 #1664 [Verbose] > │     let v0 : (unit -> UH0) = closure23()                                     │

00:00:22 #1665 [Verbose] > │     UH0_0(11.619203884549703, v0)                                            │

00:00:22 #1666 [Verbose] > │ and closure21 () () : UH0 =                                                  │

00:00:22 #1667 [Verbose] > │     let v0 : (unit -> UH0) = closure22()                                     │

00:00:22 #1668 [Verbose] > │     UH0_0(11.604643948207235, v0)                                            │

00:00:22 #1669 [Verbose] > │ and closure20 () () : UH0 =                                                  │

00:00:22 #1670 [Verbose] > │     let v0 : (unit -> UH0) = closure21()                                     │

00:00:22 #1671 [Verbose] > │     UH0_0(11.585397618384544, v0)                                            │

00:00:22 #1672 [Verbose] > │ and closure19 () () : UH0 =                                                  │

00:00:22 #1673 [Verbose] > │     let v0 : (unit -> UH0) = closure20()                                     │

00:00:22 #1674 [Verbose] > │     UH0_0(11.559972254267073, v0)                                            │

00:00:22 #1675 [Verbose] > │ and closure18 () () : UH0 =                                                  │

00:00:22 #1676 [Verbose] > │     let v0 : (unit -> UH0) = closure19()                                     │

00:00:22 #1677 [Verbose] > │     UH0_0(11.526411536153837, v0)                                            │

00:00:22 #1678 [Verbose] > │ and closure17 () () : UH0 =                                                  │

00:00:22 #1679 [Verbose] > │     let v0 : (unit -> UH0) = closure18()                                     │

00:00:22 #1680 [Verbose] > │     UH0_0(11.48216011776808, v0)                                             │

00:00:22 #1681 [Verbose] > │ and closure16 () () : UH0 =                                                  │

00:00:22 #1682 [Verbose] > │     let v0 : (unit -> UH0) = closure17()                                     │

00:00:22 #1683 [Verbose] > │     UH0_0(11.42389519391233, v0)                                             │

00:00:22 #1684 [Verbose] > │ and closure15 () () : UH0 =                                                  │

00:00:22 #1685 [Verbose] > │     let v0 : (unit -> UH0) = closure16()                                     │

00:00:22 #1686 [Verbose] > │     UH0_0(11.347321723441393, v0)                                            │

00:00:22 #1687 [Verbose] > │ and closure14 () () : UH0 =                                                  │

00:00:22 #1688 [Verbose] > │     let v0 : (unit -> UH0) = closure15()                                     │

00:00:22 #1689 [Verbose] > │     UH0_0(11.246931775734161, v0)                                            │

00:00:22 #1690 [Verbose] > │ and closure13 () () : UH0 =                                                  │

00:00:22 #1691 [Verbose] > │     let v0 : (unit -> UH0) = closure14()                                     │

00:00:22 #1692 [Verbose] > │     UH0_0(11.115736011467376, v0)                                            │

00:00:22 #1693 [Verbose] > │ and closure12 () () : UH0 =                                                  │

00:00:22 #1694 [Verbose] > │     let v0 : (unit -> UH0) = closure13()                                     │

00:00:22 #1695 [Verbose] > │     UH0_0(10.94498876251829, v0)                                             │

00:00:22 #1696 [Verbose] > │ and closure11 () () : UH0 =                                                  │

00:00:22 #1697 [Verbose] > │     let v0 : (unit -> UH0) = closure12()                                     │

00:00:22 #1698 [Verbose] > │     UH0_0(10.72394989903564, v0)                                             │

00:00:22 #1699 [Verbose] > │ and closure10 () () : UH0 =                                                  │

00:00:22 #1700 [Verbose] > │     let v0 : (unit -> UH0) = closure11()                                     │

00:00:22 #1701 [Verbose] > │     UH0_0(10.439758275369812, v0)                                            │

00:00:22 #1702 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:22 #1703 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:22 #1704 [Verbose] > │     UH0_0(10.077531599826058, v0)                                            │

00:00:22 #1705 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:22 #1706 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:22 #1707 [Verbose] > │     UH0_0(9.62084761372258, v0)                                              │

00:00:22 #1708 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:22 #1709 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:22 #1710 [Verbose] > │     UH0_0(9.052781056066443, v0)                                             │

00:00:22 #1711 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:22 #1712 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:22 #1713 [Verbose] > │     UH0_0(8.357635347880503, v0)                                             │

00:00:22 #1714 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:22 #1715 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:22 #1716 [Verbose] > │     UH0_0(7.523376447621674, v0)                                             │

00:00:22 #1717 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:22 #1718 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:22 #1719 [Verbose] > │     UH0_0(6.544529054818572, v0)                                             │

00:00:22 #1720 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:22 #1721 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:22 #1722 [Verbose] > │     UH0_0(5.424976512996006, v0)                                             │

00:00:22 #1723 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:22 #1724 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:22 #1725 [Verbose] > │     UH0_0(4.179852321428571, v0)                                             │

00:00:22 #1726 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:22 #1727 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:22 #1728 [Verbose] > │     UH0_0(2.835714285714286, v0)                                             │

00:00:22 #1729 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:22 #1730 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:22 #1731 [Verbose] > │     UH0_0(1.4285714285714286, v0)                                            │

00:00:22 #1732 [Verbose] > │ and method3 (v0 : float, v1 : UH0) : US0 =                                   │

00:00:22 #1733 [Verbose] > │     match v1 with                                                            │

00:00:22 #1734 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:22 #1735 [Verbose] > │         let v4 : bool = v0 <= 0.0                                            │

00:00:22 #1736 [Verbose] > │         if v4 then                                                           │

00:00:22 #1737 [Verbose] > │             US0_1(v2)                                                        │

00:00:22 #1738 [Verbose] > │         else                                                                 │

00:00:22 #1739 [Verbose] > │             let v6 : float = v0 - 1.0                                        │

00:00:22 #1740 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:22 #1741 [Verbose] > │             method3(v6, v7)                                                  │

00:00:22 #1742 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:22 #1743 [Verbose] > │         US0_0                                                                │

00:00:22 #1744 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:22 #1745 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:22 #1746 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (121)                      │

00:00:22 #1747 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:22 #1748 [Verbose] > │     while method1(v1) do                                                     │

00:00:22 #1749 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:22 #1750 [Verbose] > │         let v4 : float = float v3                                            │

00:00:22 #1751 [Verbose] > │         let v5 : float = 0.5 * v4                                            │

00:00:22 #1752 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:22 #1753 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:22 #1754 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:22 #1755 [Verbose] > │         ()                                                                   │

00:00:22 #1756 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:22 #1757 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:22 #1758 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:22 #1759 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:22 #1760 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:22 #1761 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:22 #1762 [Verbose] > │         let v13 : float = round v12                                          │

00:00:22 #1763 [Verbose] > │         let v14 : float =  -v13                                              │

00:00:22 #1764 [Verbose] > │         let v15 : bool = v13 >= v14                                          │

00:00:22 #1765 [Verbose] > │         let v16 : float =                                                    │

00:00:22 #1766 [Verbose] > │             if v15 then                                                      │

00:00:22 #1767 [Verbose] > │                 v13                                                          │

00:00:22 #1768 [Verbose] > │             else                                                             │

00:00:22 #1769 [Verbose] > │                 v14                                                          │

00:00:22 #1770 [Verbose] > │         let v17 : float = 0.0                                                │

00:00:22 #1771 [Verbose] > │         let v18 : (unit -> UH0) = closure0()                                 │

00:00:22 #1772 [Verbose] > │         let v19 : UH0 = UH0_0(v17, v18)                                      │

00:00:22 #1773 [Verbose] > │         let v20 : US0 = method3(v16, v19)                                    │

00:00:22 #1774 [Verbose] > │         let v23 : float =                                                    │

00:00:22 #1775 [Verbose] > │             match v20 with                                                   │

00:00:22 #1776 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:22 #1777 [Verbose] > │                 0.0                                                          │

00:00:22 #1778 [Verbose] > │             | US0_1(v21) -> (* Some *)                                       │

00:00:22 #1779 [Verbose] > │                 v21                                                          │

00:00:22 #1780 [Verbose] > │         v8.[int v11] <- v23                                                  │

00:00:22 #1781 [Verbose] > │         let v24 : int32 = v11 + 1                                            │

00:00:22 #1782 [Verbose] > │         v9.l0 <- v24                                                         │

00:00:22 #1783 [Verbose] > │         ()                                                                   │

00:00:22 #1784 [Verbose] > │     let v25 : string = "velocity of bike (m/s)"                              │

00:00:22 #1785 [Verbose] > │     let v26 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:22 #1786 [Verbose] > │ (v25, v0, v8)|]                                                              │

00:00:22 #1787 [Verbose] > │     let v27 : string = "bike velocity"                                       │

00:00:22 #1788 [Verbose] > │     let v28 : string = "time (s)"                                            │

00:00:22 #1789 [Verbose] > │     let v29 : string = ""                                                    │

00:00:22 #1790 [Verbose] > │     struct (v27, v28, v29, v26)                                              │

00:00:22 #1791 [Verbose] > │ method0()                                                                    │

00:00:22 #1792 [Verbose] > │                                                                              │

00:00:22 #1793 [Verbose] > │                                                                              │

00:00:22 #1794 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1795 [Verbose] >

00:00:22 #1796 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:22 #1797 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:22 #1798 [Verbose] > │ ## velocity_ftv                                                              │

00:00:22 #1799 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1800 [Verbose] >

00:00:22 #1801 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #1802 [Verbose] > inl newton_second_tv m fs (t, v0) =

00:00:22 #1803 [Verbose] >     inl f_net = fs |> listm.map (fun f => f (t, v0)) |> listm'.sum

00:00:22 #1804 [Verbose] >     inl acc = f_net / m

00:00:22 #1805 [Verbose] >     1, acc

00:00:22 #1806 [Verbose] >

00:00:22 #1807 [Verbose] > inl update_tv dt m fs (t, v0) =

00:00:22 #1808 [Verbose] >     inl dtdt, dvdt = newton_second_tv m fs (t, v0)

00:00:22 #1809 [Verbose] >     t + dtdt * dt, v0 + dvdt * dt

00:00:22 #1810 [Verbose] >

00:00:22 #1811 [Verbose] > inl velocity_ftv dt m tv0 fs t =

00:00:22 #1812 [Verbose] >     stream.iterate (join update_tv dt m fs) tv0

00:00:22 #1813 [Verbose] >     |> stream.try_item (t / dt |> math.round |> abs)

00:00:22 #1814 [Verbose] >     |> optionm.map snd

00:00:22 #1815 [Verbose] >     |> optionm'.default_value 0

00:00:22 #1816 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5094-9460-97c4ba2e3ce3\main.spi

00:00:22 #1817 [Verbose] >

00:00:22 #1818 [Verbose] > ╭─[ 174.54ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #1819 [Verbose] > │ ()                                                                           │

00:00:22 #1820 [Verbose] > │                                                                              │

00:00:22 #1821 [Verbose] > │                                                                              │

00:00:22 #1822 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1823 [Verbose] >

00:00:22 #1824 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #1825 [Verbose] > // // test

00:00:22 #1826 [Verbose] >

00:00:22 #1827 [Verbose] > inl x = am'.init_series 0 100 0.1

00:00:22 #1828 [Verbose] > inl y =

00:00:22 #1829 [Verbose] >     x

00:00:22 #1830 [Verbose] >     |> am.map (

00:00:22 #1831 [Verbose] >         velocity_ftv 0.1 20 (dyn (0, 0)) [[ fun (t, _) => pedal_coast t; fun (_,

00:00:22 #1832 [Verbose] > v) => f_air 2 1.225 0.5 v ]]

00:00:22 #1833 [Verbose] >     )

00:00:22 #1834 [Verbose] > "pedaling and coasting with air", "time (s)", "", ;[[ "velocity of bike (m/s)",

00:00:22 #1835 [Verbose] > x, y ]]

00:00:22 #1836 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5112-1205-189bea9774e2\main.spi

00:00:23 #1837 [Verbose] >

00:00:23 #1838 [Verbose] > ╭─[ 352.73ms - return value ]──────────────────────────────────────────────────╮

00:00:23 #1839 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:23 #1840 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:23 #1841 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:23 #1842 [Verbose] > │ stroke="none"/>                                                              │

00:00:23 #1843 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:23 #1844 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:23 #1845 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:23 #1846 [Verbose] > │ pedaling and coasting with air                                               │

00:00:23 #1847 [Verbose] > │ </text>                                                                      │

00:00:23 #1848 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:23 #1849 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1850 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:23 #1851 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1852 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:23 #1853 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1854 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:23 #1855 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #1856 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x...                     │

00:00:23 #1857 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1858 [Verbose] >

00:00:23 #1859 [Verbose] > ╭─[ 363.60ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #1860 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:23 #1861 [Verbose] > │ and UH0 =                                                                    │

00:00:23 #1862 [Verbose] > │     | UH0_0 of float * float * (unit -> UH0)                                 │

00:00:23 #1863 [Verbose] > │     | UH0_1                                                                  │

00:00:23 #1864 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:23 #1865 [Verbose] > │     | US0_0                                                                  │

00:00:23 #1866 [Verbose] > │     | US0_1 of f1_0 : float * f1_1 : float                                   │

00:00:23 #1867 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:23 #1868 [Verbose] > │     | US1_0                                                                  │

00:00:23 #1869 [Verbose] > │     | US1_1 of f1_0 : float                                                  │

00:00:23 #1870 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:23 #1871 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:23 #1872 [Verbose] > │     let v2 : bool = v1 < 1001                                                │

00:00:23 #1873 [Verbose] > │     v2                                                                       │

00:00:23 #1874 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:23 #1875 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:23 #1876 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:23 #1877 [Verbose] > │     v3                                                                       │

00:00:23 #1878 [Verbose] > │ and closure0 () struct (v0 : float, v1 : float) : struct (float * float) =   │

00:00:23 #1879 [Verbose] > │     let v2 : float =  -v1                                                    │

00:00:23 #1880 [Verbose] > │     let v3 : bool = v1 >= v2                                                 │

00:00:23 #1881 [Verbose] > │     let v4 : float =                                                         │

00:00:23 #1882 [Verbose] > │         if v3 then                                                           │

00:00:23 #1883 [Verbose] > │             v1                                                               │

00:00:23 #1884 [Verbose] > │         else                                                                 │

00:00:23 #1885 [Verbose] > │             v2                                                               │

00:00:23 #1886 [Verbose] > │     let v5 : float = -1.225 * v4                                             │

00:00:23 #1887 [Verbose] > │     let v6 : float = v5 * v1                                                 │

00:00:23 #1888 [Verbose] > │     let v7 : float = v6 / 2.0                                                │

00:00:23 #1889 [Verbose] > │     let v8 : float = v0 / 20.0                                               │

00:00:23 #1890 [Verbose] > │     let v9 : int32 = int32 v8                                                │

00:00:23 #1891 [Verbose] > │     let v10 : float = float v9                                               │

00:00:23 #1892 [Verbose] > │     let v11 : float = v10 * 20.0                                             │

00:00:23 #1893 [Verbose] > │     let v12 : float = v0 - v11                                               │

00:00:23 #1894 [Verbose] > │     let v13 : bool = v12 > 0.0                                               │

00:00:23 #1895 [Verbose] > │     let v15 : bool =                                                         │

00:00:23 #1896 [Verbose] > │         if v13 then                                                          │

00:00:23 #1897 [Verbose] > │             let v14 : bool = v12 < 10.0                                      │

00:00:23 #1898 [Verbose] > │             v14                                                              │

00:00:23 #1899 [Verbose] > │         else                                                                 │

00:00:23 #1900 [Verbose] > │             false                                                            │

00:00:23 #1901 [Verbose] > │     let v16 : float =                                                        │

00:00:23 #1902 [Verbose] > │         if v15 then                                                          │

00:00:23 #1903 [Verbose] > │             10.0                                                             │

00:00:23 #1904 [Verbose] > │         else                                                                 │

00:00:23 #1905 [Verbose] > │             0.0                                                              │

00:00:23 #1906 [Verbose] > │     let v17 : float = v16 + v7                                               │

00:00:23 #1907 [Verbose] > │     let v18 : float = v17 / 20.0                                             │

00:00:23 #1908 [Verbose] > │     let v19 : float = v0 + 0.1                                               │

00:00:23 #1909 [Verbose] > │     let v20 : float = v18 * 0.1                                              │

00:00:23 #1910 [Verbose] > │     let v21 : float = v1 + v20                                               │

00:00:23 #1911 [Verbose] > │     struct (v19, v21)                                                        │

00:00:23 #1912 [Verbose] > │ and method3 () : (struct (float * float) -> struct (float * float)) =        │

00:00:23 #1913 [Verbose] > │     closure0()                                                               │

00:00:23 #1914 [Verbose] > │ and closure1 (v0 : (struct (float * float) -> struct (float * float)), v1 :  │

00:00:23 #1915 [Verbose] > │ float, v2 : float, v3 : float, v4 : float) () : UH0 =                        │

00:00:23 #1916 [Verbose] > │     let struct (v5 : float, v6 : float) = v0 struct (v3, v4)                 │

00:00:23 #1917 [Verbose] > │     let v7 : (unit -> UH0) = closure1(v0, v1, v2, v5, v6)                    │

00:00:23 #1918 [Verbose] > │     UH0_0(v3, v4, v7)                                                        │

00:00:23 #1919 [Verbose] > │ and method4 (v0 : float, v1 : UH0) : US0 =                                   │

00:00:23 #1920 [Verbose] > │     match v1 with                                                            │

00:00:23 #1921 [Verbose] > │     | UH0_0(v2, v3, v4) -> (* StreamCons *)                                  │

00:00:23 #1922 [Verbose] > │         let v5 : bool = v0 <= 0.0                                            │

00:00:23 #1923 [Verbose] > │         if v5 then                                                           │

00:00:23 #1924 [Verbose] > │             US0_1(v2, v3)                                                    │

00:00:23 #1925 [Verbose] > │         else                                                                 │

00:00:23 #1926 [Verbose] > │             let v7 : float = v0 - 1.0                                        │

00:00:23 #1927 [Verbose] > │             let v8 : UH0 = v4 ()                                             │

00:00:23 #1928 [Verbose] > │             method4(v7, v8)                                                  │

00:00:23 #1929 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:23 #1930 [Verbose] > │         US0_0                                                                │

00:00:23 #1931 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:23 #1932 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:23 #1933 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (1001)                     │

00:00:23 #1934 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #1935 [Verbose] > │     while method1(v1) do                                                     │

00:00:23 #1936 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:23 #1937 [Verbose] > │         let v4 : float = float v3                                            │

00:00:23 #1938 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:23 #1939 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:23 #1940 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:23 #1941 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:23 #1942 [Verbose] > │         ()                                                                   │

00:00:23 #1943 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:23 #1944 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:23 #1945 [Verbose] > │     let v9 : int32 = v0.Length                                               │

00:00:23 #1946 [Verbose] > │     let v10 : (float []) = Array.zeroCreate<float> (v9)                      │

00:00:23 #1947 [Verbose] > │     let v11 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:23 #1948 [Verbose] > │     while method2(v9, v11) do                                                │

00:00:23 #1949 [Verbose] > │         let v13 : int32 = v11.l0                                             │

00:00:23 #1950 [Verbose] > │         let v14 : float = v0.[int v13]                                       │

00:00:23 #1951 [Verbose] > │         let v15 : (struct (float * float) -> struct (float * float)) =       │

00:00:23 #1952 [Verbose] > │ method3()                                                                    │

00:00:23 #1953 [Verbose] > │         let struct (v16 : float, v17 : float) = v15 struct (v7, v8)          │

00:00:23 #1954 [Verbose] > │         let v18 : float = v14 / 0.1                                          │

00:00:23 #1955 [Verbose] > │         let v19 : float = round v18                                          │

00:00:23 #1956 [Verbose] > │         let v20 : float =  -v19                                              │

00:00:23 #1957 [Verbose] > │         let v21 : bool = v19 >= v20                                          │

00:00:23 #1958 [Verbose] > │         let v22 : float =                                                    │

00:00:23 #1959 [Verbose] > │             if v21 then                                                      │

00:00:23 #1960 [Verbose] > │                 v19                                                          │

00:00:23 #1961 [Verbose] > │             else                                                             │

00:00:23 #1962 [Verbose] > │                 v20                                                          │

00:00:23 #1963 [Verbose] > │         let v23 : (unit -> UH0) = closure1(v15, v7, v8, v16, v17)            │

00:00:23 #1964 [Verbose] > │         let v24 : UH0 = UH0_0(v7, v8, v23)                                   │

00:00:23 #1965 [Verbose] > │         let v25 : US0 = method4(v22, v24)                                    │

00:00:23 #1966 [Verbose] > │         let v31 : US1 =                                                      │

00:00:23 #1967 [Verbose] > │             match v25 with                                                   │

00:00:23 #1968 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:23 #1969 [Verbose] > │                 US1_0                                                        │

00:00:23 #1970 [Verbose] > │             | US0_1(v26, v27) -> (* Some *)                                  │

00:00:23 #1971 [Verbose] > │                 US1_1(v27)                                                   │

00:00:23 #1972 [Verbose] > │         let v34 : float =                                                    │

00:00:23 #1973 [Verbose] > │             match v31 with                                                   │

00:00:23 #1974 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:23 #1975 [Verbose] > │                 0.0                                                          │

00:00:23 #1976 [Verbose] > │             | US1_1(v32) -> (* Some *)                                       │

00:00:23 #1977 [Verbose] > │                 v32                                                          │

00:00:23 #1978 [Verbose] > │         v10.[int v13] <- v34                                                 │

00:00:23 #1979 [Verbose] > │         let v35 : int32 = v13 + 1                                            │

00:00:23 #1980 [Verbose] > │         v11.l0 <- v35                                                        │

00:00:23 #1981 [Verbose] > │         ()                                                                   │

00:00:23 #1982 [Verbose] > │     let v36 : string = "velocity of bike (m/s)"                              │

00:00:23 #1983 [Verbose] > │     let v37 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:23 #1984 [Verbose] > │ (v36, v0, v10)|]                                                             │

00:00:23 #1985 [Verbose] > │     let v38 : string = "pedaling and coasting with air"                      │

00:00:23 #1986 [Verbose] > │     let v39 : string = "time (s)"                                            │

00:00:23 #1987 [Verbose] > │     let v40 : string = ""                                                    │

00:00:23 #1988 [Verbose] > │     struct (v38, v39, v40, v37)                                              │

00:00:23 #1989 [Verbose] > │ method0()                                                                    │

00:00:23 #1990 [Verbose] > │                                                                              │

00:00:23 #1991 [Verbose] > │                                                                              │

00:00:23 #1992 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1993 [Verbose] >

00:00:23 #1994 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:23 #1995 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:23 #1996 [Verbose] > │ ## velocity_ftxv                                                             │

00:00:23 #1997 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #1998 [Verbose] >

00:00:23 #1999 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2000 [Verbose] > nominal state_1d = time * position * velocity

00:00:23 #2001 [Verbose] > nominal rrr = f64 * f64 * f64

00:00:23 #2002 [Verbose] >

00:00:23 #2003 [Verbose] > inl newton_second_1d m fs (state_1d (t, x0, v0)) =

00:00:23 #2004 [Verbose] >     inl f_net = fs |> listm.map (fun f => f (state_1d (t, x0, v0))) |>

00:00:23 #2005 [Verbose] > listm'.sum

00:00:23 #2006 [Verbose] >     inl acc = f_net / m

00:00:23 #2007 [Verbose] >     rrr (1f64, v0, acc)

00:00:23 #2008 [Verbose] >

00:00:23 #2009 [Verbose] > inl euler_1d dt deriv (state_1d (t0, x0, v0) as t) =

00:00:23 #2010 [Verbose] >     inl (rrr (_, _, dvdt)) = deriv t

00:00:23 #2011 [Verbose] >     inl t1 = t0 + dt

00:00:23 #2012 [Verbose] >     inl x1 = x0 + v0 * dt

00:00:23 #2013 [Verbose] >     inl v1 = v0 + dvdt * dt

00:00:23 #2014 [Verbose] >     state_1d (t1, x1, v1)

00:00:23 #2015 [Verbose] >

00:00:23 #2016 [Verbose] > inl update_txv dt m fs =

00:00:23 #2017 [Verbose] >     newton_second_1d m fs |> euler_1d dt

00:00:23 #2018 [Verbose] >

00:00:23 #2019 [Verbose] > inl states_txv dt m txv0 fs =

00:00:23 #2020 [Verbose] >     seq.iterate_ (update_txv dt m fs) txv0

00:00:23 #2021 [Verbose] >

00:00:23 #2022 [Verbose] > inl velocity_1d sts t =

00:00:23 #2023 [Verbose] >     inl (state_1d (t0, _, _)) = sts 0

00:00:23 #2024 [Verbose] >     inl (state_1d (t1, _, _)) = sts 1

00:00:23 #2025 [Verbose] >     inl dt = t1 - t0

00:00:23 #2026 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:23 #2027 [Verbose] >     inl (state_1d (_, _, v0)) = sts num_steps

00:00:23 #2028 [Verbose] >     v0

00:00:23 #2029 [Verbose] >

00:00:23 #2030 [Verbose] > inl velocity_ftxv dt m txv0 fs =

00:00:23 #2031 [Verbose] >     states_txv dt m txv0 fs |> velocity_1d

00:00:23 #2032 [Verbose] >

00:00:23 #2033 [Verbose] > inl position_1d sts t =

00:00:23 #2034 [Verbose] >     inl (state_1d (t0, _, _)) = sts 0

00:00:23 #2035 [Verbose] >     inl (state_1d (t1, _, _)) = sts 1

00:00:23 #2036 [Verbose] >     inl dt = t1 - t0

00:00:23 #2037 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:23 #2038 [Verbose] >     inl (state_1d (_, x0, _)) = sts num_steps

00:00:23 #2039 [Verbose] >     x0

00:00:23 #2040 [Verbose] >

00:00:23 #2041 [Verbose] > inl position_ftxv dt m txv0 fs =

00:00:23 #2042 [Verbose] >     states_txv dt m txv0 fs |> position_1d

00:00:23 #2043 [Verbose] >

00:00:23 #2044 [Verbose] > inl spring_force k (state_1d (_, x0, _)) =

00:00:23 #2045 [Verbose] >     -k * x0

00:00:23 #2046 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5153-5378-5c742776fde4\main.spi

00:00:23 #2047 [Verbose] >

00:00:23 #2048 [Verbose] > ╭─[ 163.29ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #2049 [Verbose] > │ ()                                                                           │

00:00:23 #2050 [Verbose] > │                                                                              │

00:00:23 #2051 [Verbose] > │                                                                              │

00:00:23 #2052 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2053 [Verbose] >

00:00:23 #2054 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2055 [Verbose] > // // test

00:00:23 #2056 [Verbose] >

00:00:23 #2057 [Verbose] > inl damped_ho_forces () =

00:00:23 #2058 [Verbose] >     [[

00:00:23 #2059 [Verbose] >         spring_force 0.8

00:00:23 #2060 [Verbose] >         fun (state_1d (_, _, v0)) => f_air 2 1.225 (pi * math.square 0.02) v0

00:00:23 #2061 [Verbose] >         fun _ => -0.0027 * 9.80665

00:00:23 #2062 [Verbose] >     ]]

00:00:23 #2063 [Verbose] >

00:00:23 #2064 [Verbose] > inl damped_ho_states () =

00:00:23 #2065 [Verbose] >     states_txv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ())

00:00:23 #2066 [Verbose] >

00:00:23 #2067 [Verbose] > inl pingpong_position t =

00:00:23 #2068 [Verbose] >     position_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t

00:00:23 #2069 [Verbose] >

00:00:23 #2070 [Verbose] > inl x : a _ f64 = am'.init_series 0 3 0.01

00:00:23 #2071 [Verbose] > inl y = x |> am.map pingpong_position

00:00:23 #2072 [Verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "position (m)", x, y ]]

00:00:23 #2073 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5170-7016-7779910b23e0\main.spi

00:00:23 #2074 [Verbose] >

00:00:23 #2075 [Verbose] > ╭─[ 209.16ms - return value ]──────────────────────────────────────────────────╮

00:00:23 #2076 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:23 #2077 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:23 #2078 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:23 #2079 [Verbose] > │ stroke="none"/>                                                              │

00:00:23 #2080 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:23 #2081 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:23 #2082 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:23 #2083 [Verbose] > │ ping pong ball on a slinky                                                   │

00:00:23 #2084 [Verbose] > │ </text>                                                                      │

00:00:23 #2085 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:23 #2086 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2087 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:23 #2088 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2089 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:23 #2090 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2091 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:23 #2092 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2093 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9...                 │

00:00:23 #2094 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2095 [Verbose] >

00:00:23 #2096 [Verbose] > ╭─[ 223.12ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #2097 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:23 #2098 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:23 #2099 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:23 #2100 [Verbose] > │     let v2 : bool = v1 < 301                                                 │

00:00:23 #2101 [Verbose] > │     v2                                                                       │

00:00:23 #2102 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:23 #2103 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:23 #2104 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:23 #2105 [Verbose] > │     v3                                                                       │

00:00:23 #2106 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │

00:00:23 #2107 [Verbose] > │ * float * float) =                                                           │

00:00:23 #2108 [Verbose] > │     let v4 : bool = v3 <= 0.0                                                │

00:00:23 #2109 [Verbose] > │     if v4 then                                                               │

00:00:23 #2110 [Verbose] > │         struct (v0, v1, v2)                                                  │

00:00:23 #2111 [Verbose] > │     else                                                                     │

00:00:23 #2112 [Verbose] > │         let v5 : float =  -v2                                                │

00:00:23 #2113 [Verbose] > │         let v6 : bool = v2 >= v5                                             │

00:00:23 #2114 [Verbose] > │         let v7 : float =                                                     │

00:00:23 #2115 [Verbose] > │             if v6 then                                                       │

00:00:23 #2116 [Verbose] > │                 v2                                                           │

00:00:23 #2117 [Verbose] > │             else                                                             │

00:00:23 #2118 [Verbose] > │                 v5                                                           │

00:00:23 #2119 [Verbose] > │         let v8 : float = -0.0030787608005179976 * v7                         │

00:00:23 #2120 [Verbose] > │         let v9 : float = v8 * v2                                             │

00:00:23 #2121 [Verbose] > │         let v10 : float = v9 / 2.0                                           │

00:00:23 #2122 [Verbose] > │         let v11 : float = -0.8 * v1                                          │

00:00:23 #2123 [Verbose] > │         let v12 : float = v11 + v10                                          │

00:00:23 #2124 [Verbose] > │         let v13 : float = v12 + -0.026477955                                 │

00:00:23 #2125 [Verbose] > │         let v14 : float = v13 / 0.0027                                       │

00:00:23 #2126 [Verbose] > │         let v15 : float = v0 + 0.001                                         │

00:00:23 #2127 [Verbose] > │         let v16 : float = v2 * 0.001                                         │

00:00:23 #2128 [Verbose] > │         let v17 : float = v1 + v16                                           │

00:00:23 #2129 [Verbose] > │         let v18 : float = v14 * 0.001                                        │

00:00:23 #2130 [Verbose] > │         let v19 : float = v2 + v18                                           │

00:00:23 #2131 [Verbose] > │         let v20 : float = v3 - 1.0                                           │

00:00:23 #2132 [Verbose] > │         method3(v15, v17, v19, v20)                                          │

00:00:23 #2133 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:23 #2134 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:23 #2135 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (301)                      │

00:00:23 #2136 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #2137 [Verbose] > │     while method1(v1) do                                                     │

00:00:23 #2138 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:23 #2139 [Verbose] > │         let v4 : float = float v3                                            │

00:00:23 #2140 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:23 #2141 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:23 #2142 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:23 #2143 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:23 #2144 [Verbose] > │         ()                                                                   │

00:00:23 #2145 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:23 #2146 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:23 #2147 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #2148 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:23 #2149 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:23 #2150 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:23 #2151 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:23 #2152 [Verbose] > │         let v14 : float = 0.1                                                │

00:00:23 #2153 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:23 #2154 [Verbose] > │         let v16 : float = 0.0                                                │

00:00:23 #2155 [Verbose] > │         let struct (v17 : float, v18 : float, v19 : float) = method3(v13,    │

00:00:23 #2156 [Verbose] > │ v14, v15, v16)                                                               │

00:00:23 #2157 [Verbose] > │         let v20 : float = 0.0                                                │

00:00:23 #2158 [Verbose] > │         let v21 : float = 0.1                                                │

00:00:23 #2159 [Verbose] > │         let v22 : float = 0.0                                                │

00:00:23 #2160 [Verbose] > │         let v23 : float = 1.0                                                │

00:00:23 #2161 [Verbose] > │         let struct (v24 : float, v25 : float, v26 : float) = method3(v20,    │

00:00:23 #2162 [Verbose] > │ v21, v22, v23)                                                               │

00:00:23 #2163 [Verbose] > │         let v27 : float = v24 - v17                                          │

00:00:23 #2164 [Verbose] > │         let v28 : float = v12 / v27                                          │

00:00:23 #2165 [Verbose] > │         let v29 : float = round v28                                          │

00:00:23 #2166 [Verbose] > │         let v30 : float =  -v29                                              │

00:00:23 #2167 [Verbose] > │         let v31 : bool = v29 >= v30                                          │

00:00:23 #2168 [Verbose] > │         let v32 : float =                                                    │

00:00:23 #2169 [Verbose] > │             if v31 then                                                      │

00:00:23 #2170 [Verbose] > │                 v29                                                          │

00:00:23 #2171 [Verbose] > │             else                                                             │

00:00:23 #2172 [Verbose] > │                 v30                                                          │

00:00:23 #2173 [Verbose] > │         let v33 : float = 0.0                                                │

00:00:23 #2174 [Verbose] > │         let v34 : float = 0.1                                                │

00:00:23 #2175 [Verbose] > │         let v35 : float = 0.0                                                │

00:00:23 #2176 [Verbose] > │         let struct (v36 : float, v37 : float, v38 : float) = method3(v33,    │

00:00:23 #2177 [Verbose] > │ v34, v35, v32)                                                               │

00:00:23 #2178 [Verbose] > │         v8.[int v11] <- v37                                                  │

00:00:23 #2179 [Verbose] > │         let v39 : int32 = v11 + 1                                            │

00:00:23 #2180 [Verbose] > │         v9.l0 <- v39                                                         │

00:00:23 #2181 [Verbose] > │         ()                                                                   │

00:00:23 #2182 [Verbose] > │     let v40 : string = "position (m)"                                        │

00:00:23 #2183 [Verbose] > │     let v41 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:23 #2184 [Verbose] > │ (v40, v0, v8)|]                                                              │

00:00:23 #2185 [Verbose] > │     let v42 : string = "ping pong ball on a slinky"                          │

00:00:23 #2186 [Verbose] > │     let v43 : string = "time (s)"                                            │

00:00:23 #2187 [Verbose] > │     let v44 : string = ""                                                    │

00:00:23 #2188 [Verbose] > │     struct (v42, v43, v44, v41)                                              │

00:00:23 #2189 [Verbose] > │ method0()                                                                    │

00:00:23 #2190 [Verbose] > │                                                                              │

00:00:23 #2191 [Verbose] > │                                                                              │

00:00:23 #2192 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2193 [Verbose] >

00:00:23 #2194 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2195 [Verbose] > // // test

00:00:23 #2196 [Verbose] >

00:00:23 #2197 [Verbose] > inl pingpong_velocity t =

00:00:23 #2198 [Verbose] >     velocity_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t

00:00:23 #2199 [Verbose] >

00:00:23 #2200 [Verbose] > inl x = am'.init_series 0 3 0.01

00:00:23 #2201 [Verbose] > inl y = x |> am.map pingpong_velocity

00:00:23 #2202 [Verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "velocity (m/s)", x, y ]]

00:00:23 #2203 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5196-9652-9c12492d2769\main.spi

00:00:23 #2204 [Verbose] >

00:00:23 #2205 [Verbose] > ╭─[ 258.04ms - return value ]──────────────────────────────────────────────────╮

00:00:23 #2206 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:23 #2207 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:23 #2208 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:23 #2209 [Verbose] > │ stroke="none"/>                                                              │

00:00:23 #2210 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:23 #2211 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:23 #2212 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:23 #2213 [Verbose] > │ ping pong ball on a slinky                                                   │

00:00:23 #2214 [Verbose] > │ </text>                                                                      │

00:00:23 #2215 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:23 #2216 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2217 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:23 #2218 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2219 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:23 #2220 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2221 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:23 #2222 [Verbose] > │ y2="75"/>                                                                    │

00:00:23 #2223 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9...                 │

00:00:23 #2224 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2225 [Verbose] >

00:00:23 #2226 [Verbose] > ╭─[ 266.91ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #2227 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:23 #2228 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:23 #2229 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:23 #2230 [Verbose] > │     let v2 : bool = v1 < 301                                                 │

00:00:23 #2231 [Verbose] > │     v2                                                                       │

00:00:23 #2232 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:23 #2233 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:23 #2234 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:23 #2235 [Verbose] > │     v3                                                                       │

00:00:23 #2236 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │

00:00:23 #2237 [Verbose] > │ * float * float) =                                                           │

00:00:23 #2238 [Verbose] > │     let v4 : bool = v3 <= 0.0                                                │

00:00:23 #2239 [Verbose] > │     if v4 then                                                               │

00:00:23 #2240 [Verbose] > │         struct (v0, v1, v2)                                                  │

00:00:23 #2241 [Verbose] > │     else                                                                     │

00:00:23 #2242 [Verbose] > │         let v5 : float =  -v2                                                │

00:00:23 #2243 [Verbose] > │         let v6 : bool = v2 >= v5                                             │

00:00:23 #2244 [Verbose] > │         let v7 : float =                                                     │

00:00:23 #2245 [Verbose] > │             if v6 then                                                       │

00:00:23 #2246 [Verbose] > │                 v2                                                           │

00:00:23 #2247 [Verbose] > │             else                                                             │

00:00:23 #2248 [Verbose] > │                 v5                                                           │

00:00:23 #2249 [Verbose] > │         let v8 : float = -0.0030787608005179976 * v7                         │

00:00:23 #2250 [Verbose] > │         let v9 : float = v8 * v2                                             │

00:00:23 #2251 [Verbose] > │         let v10 : float = v9 / 2.0                                           │

00:00:23 #2252 [Verbose] > │         let v11 : float = -0.8 * v1                                          │

00:00:23 #2253 [Verbose] > │         let v12 : float = v11 + v10                                          │

00:00:23 #2254 [Verbose] > │         let v13 : float = v12 + -0.026477955                                 │

00:00:23 #2255 [Verbose] > │         let v14 : float = v13 / 0.0027                                       │

00:00:23 #2256 [Verbose] > │         let v15 : float = v0 + 0.001                                         │

00:00:23 #2257 [Verbose] > │         let v16 : float = v2 * 0.001                                         │

00:00:23 #2258 [Verbose] > │         let v17 : float = v1 + v16                                           │

00:00:23 #2259 [Verbose] > │         let v18 : float = v14 * 0.001                                        │

00:00:23 #2260 [Verbose] > │         let v19 : float = v2 + v18                                           │

00:00:23 #2261 [Verbose] > │         let v20 : float = v3 - 1.0                                           │

00:00:23 #2262 [Verbose] > │         method3(v15, v17, v19, v20)                                          │

00:00:23 #2263 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:23 #2264 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:23 #2265 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (301)                      │

00:00:23 #2266 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #2267 [Verbose] > │     while method1(v1) do                                                     │

00:00:23 #2268 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:23 #2269 [Verbose] > │         let v4 : float = float v3                                            │

00:00:23 #2270 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:23 #2271 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:23 #2272 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:23 #2273 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:23 #2274 [Verbose] > │         ()                                                                   │

00:00:23 #2275 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:23 #2276 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:23 #2277 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #2278 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:23 #2279 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:23 #2280 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:23 #2281 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:23 #2282 [Verbose] > │         let v14 : float = 0.1                                                │

00:00:23 #2283 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:23 #2284 [Verbose] > │         let v16 : float = 0.0                                                │

00:00:23 #2285 [Verbose] > │         let struct (v17 : float, v18 : float, v19 : float) = method3(v13,    │

00:00:23 #2286 [Verbose] > │ v14, v15, v16)                                                               │

00:00:23 #2287 [Verbose] > │         let v20 : float = 0.0                                                │

00:00:23 #2288 [Verbose] > │         let v21 : float = 0.1                                                │

00:00:23 #2289 [Verbose] > │         let v22 : float = 0.0                                                │

00:00:23 #2290 [Verbose] > │         let v23 : float = 1.0                                                │

00:00:23 #2291 [Verbose] > │         let struct (v24 : float, v25 : float, v26 : float) = method3(v20,    │

00:00:23 #2292 [Verbose] > │ v21, v22, v23)                                                               │

00:00:23 #2293 [Verbose] > │         let v27 : float = v24 - v17                                          │

00:00:23 #2294 [Verbose] > │         let v28 : float = v12 / v27                                          │

00:00:23 #2295 [Verbose] > │         let v29 : float = round v28                                          │

00:00:23 #2296 [Verbose] > │         let v30 : float =  -v29                                              │

00:00:23 #2297 [Verbose] > │         let v31 : bool = v29 >= v30                                          │

00:00:23 #2298 [Verbose] > │         let v32 : float =                                                    │

00:00:23 #2299 [Verbose] > │             if v31 then                                                      │

00:00:23 #2300 [Verbose] > │                 v29                                                          │

00:00:23 #2301 [Verbose] > │             else                                                             │

00:00:23 #2302 [Verbose] > │                 v30                                                          │

00:00:23 #2303 [Verbose] > │         let v33 : float = 0.0                                                │

00:00:23 #2304 [Verbose] > │         let v34 : float = 0.1                                                │

00:00:23 #2305 [Verbose] > │         let v35 : float = 0.0                                                │

00:00:23 #2306 [Verbose] > │         let struct (v36 : float, v37 : float, v38 : float) = method3(v33,    │

00:00:23 #2307 [Verbose] > │ v34, v35, v32)                                                               │

00:00:23 #2308 [Verbose] > │         v8.[int v11] <- v38                                                  │

00:00:23 #2309 [Verbose] > │         let v39 : int32 = v11 + 1                                            │

00:00:23 #2310 [Verbose] > │         v9.l0 <- v39                                                         │

00:00:23 #2311 [Verbose] > │         ()                                                                   │

00:00:23 #2312 [Verbose] > │     let v40 : string = "velocity (m/s)"                                      │

00:00:23 #2313 [Verbose] > │     let v41 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:23 #2314 [Verbose] > │ (v40, v0, v8)|]                                                              │

00:00:23 #2315 [Verbose] > │     let v42 : string = "ping pong ball on a slinky"                          │

00:00:23 #2316 [Verbose] > │     let v43 : string = "time (s)"                                            │

00:00:23 #2317 [Verbose] > │     let v44 : string = ""                                                    │

00:00:23 #2318 [Verbose] > │     struct (v42, v43, v44, v41)                                              │

00:00:23 #2319 [Verbose] > │ method0()                                                                    │

00:00:23 #2320 [Verbose] > │                                                                              │

00:00:23 #2321 [Verbose] > │                                                                              │

00:00:23 #2322 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2323 [Verbose] >

00:00:23 #2324 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:23 #2325 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:23 #2326 [Verbose] > │ ## shift                                                                     │

00:00:23 #2327 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2328 [Verbose] >

00:00:23 #2329 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2330 [Verbose] > type update_function s = s -> s

00:00:23 #2331 [Verbose] >

00:00:23 #2332 [Verbose] > type differential_equation s ds = s -> ds

00:00:23 #2333 [Verbose] >

00:00:23 #2334 [Verbose] > type numerical_method s ds = differential_equation s ds -> update_function s

00:00:23 #2335 [Verbose] >

00:00:23 #2336 [Verbose] >

00:00:23 #2337 [Verbose] > inl solver method =

00:00:23 #2338 [Verbose] >     method >> seq.iterate

00:00:23 #2339 [Verbose] > inl solver' method =

00:00:23 #2340 [Verbose] >     method >> seq.iterate'

00:00:23 #2341 [Verbose] > inl solver_ method =

00:00:23 #2342 [Verbose] >     method >> seq.iterate_

00:00:23 #2343 [Verbose] >

00:00:23 #2344 [Verbose] >

00:00:23 #2345 [Verbose] > inl euler_cromer_1d dt deriv (state_1d (t0, x0, v0) as t) =

00:00:23 #2346 [Verbose] >     inl (rrr (_, _, dvdt)) = deriv t

00:00:23 #2347 [Verbose] >     inl t1 = t0 + dt

00:00:23 #2348 [Verbose] >     inl v1 = v0 + dvdt * dt

00:00:23 #2349 [Verbose] >     inl x1 = x0 + v1 * dt

00:00:23 #2350 [Verbose] >     state_1d (t1, x1, v1)

00:00:23 #2351 [Verbose] >

00:00:23 #2352 [Verbose] > inl update_txv_ec dt m fs =

00:00:23 #2353 [Verbose] >     euler_cromer_1d dt (newton_second_1d m fs)

00:00:23 #2354 [Verbose] >

00:00:23 #2355 [Verbose] > prototype (+++) ds : ds -> ds -> ds

00:00:23 #2356 [Verbose] > prototype scale ds : f64 -> ds -> ds

00:00:23 #2357 [Verbose] >

00:00:23 #2358 [Verbose] > instance (+++) rrr = fun (rrr (dtdt0, dxdt0, dvdt0)) (rrr (dtdt1, dxdt1, dvdt1))

00:00:23 #2359 [Verbose] > =>

00:00:23 #2360 [Verbose] >     rrr (dtdt0 + dtdt1, dxdt0 + dxdt1, dvdt0 + dvdt1)

00:00:23 #2361 [Verbose] >

00:00:23 #2362 [Verbose] > instance scale rrr = fun w (rrr (dtdt0, dxdt0, dvdt0)) =>

00:00:23 #2363 [Verbose] >     rrr (w * dtdt0, w * dxdt0, w * dvdt0)

00:00:23 #2364 [Verbose] >

00:00:23 #2365 [Verbose] > prototype shift s : forall ds. f64 -> ds -> s -> s

00:00:23 #2366 [Verbose] >

00:00:23 #2367 [Verbose] > instance shift state_1d = fun dt ds (state_1d (t, x, v)) =>

00:00:23 #2368 [Verbose] >     inl dtdt, dxdt, dvdt =

00:00:23 #2369 [Verbose] >         real

00:00:23 #2370 [Verbose] >             match ds with

00:00:23 #2371 [Verbose] >             | rrr x => x

00:00:23 #2372 [Verbose] >             | state_1d x => x

00:00:23 #2373 [Verbose] >     state_1d (t + dtdt * dt, x + dxdt * dt, v + dvdt * dt)

00:00:23 #2374 [Verbose] >

00:00:23 #2375 [Verbose] > inl euler dt deriv st0 =

00:00:23 #2376 [Verbose] >     shift dt (deriv st0) st0

00:00:23 #2377 [Verbose] >

00:00:23 #2378 [Verbose] > inl runge_kutta_4 dt deriv st0 =

00:00:23 #2379 [Verbose] >     inl m0 = deriv st0

00:00:23 #2380 [Verbose] >     inl m1 = deriv (shift (dt / 2) m0 st0)

00:00:23 #2381 [Verbose] >     inl m2 = deriv (shift (dt / 2) m1 st0)

00:00:23 #2382 [Verbose] >     inl m3 = deriv (shift dt m2 st0)

00:00:23 #2383 [Verbose] >     shift (dt / 6) (m0 +++ m1 +++ m1 +++ m2 +++ m2 +++ m3) st0

00:00:23 #2384 [Verbose] >

00:00:23 #2385 [Verbose] > inl exponential (_, x0, v0) =

00:00:23 #2386 [Verbose] >     1f64, v0, x0

00:00:23 #2387 [Verbose] >

00:00:23 #2388 [Verbose] > inl of_state_1d (state_1d (t, x, v)) =

00:00:23 #2389 [Verbose] >     t, x, v

00:00:24 #2390 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5226-2661-225e57eb5c47\main.spi

00:00:24 #2391 [Verbose] >

00:00:24 #2392 [Verbose] > ╭─[ 202.26ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2393 [Verbose] > │ ()                                                                           │

00:00:24 #2394 [Verbose] > │                                                                              │

00:00:24 #2395 [Verbose] > │                                                                              │

00:00:24 #2396 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2397 [Verbose] >

00:00:24 #2398 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2399 [Verbose] > // // test

00:00:24 #2400 [Verbose] >

00:00:24 #2401 [Verbose] > solver (euler 0.01) (of_state_1d >> exponential >> state_1d) (state_1d (0, 1,

00:00:24 #2402 [Verbose] > 1)) 800i32

00:00:24 #2403 [Verbose] > |> _equal (state_1d (7.999999999999874, 2864.8311229272326, 2864.8311229272326))

00:00:24 #2404 [Verbose] >

00:00:24 #2405 [Verbose] > solver (euler_cromer_1d 0.1) (of_state_1d >> exponential >> rrr) (state_1d (0,

00:00:24 #2406 [Verbose] > 1, 1)) 80i32

00:00:24 #2407 [Verbose] > |> _equal (state_1d (7.999999999999988, 3043.379244966009, 2895.0121485099035))

00:00:24 #2408 [Verbose] >

00:00:24 #2409 [Verbose] > solver (runge_kutta_4 1) (of_state_1d >> exponential >> rrr) (state_1d (0, 1,

00:00:24 #2410 [Verbose] > 1)) 8i32

00:00:24 #2411 [Verbose] > |> _equal (state_1d (8.0, 2894.789038540849, 2894.789038540849))

00:00:24 #2412 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5246-4699-4313761607f4\main.spi

00:00:24 #2413 [Verbose] >

00:00:24 #2414 [Verbose] > ╭─[ 441.52ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2415 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:24 #2416 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (7.999999999999874,       │

00:00:24 #2417 [Verbose] > │ 2864.8311229272326, 2864.8311229272326)} / expected: %A{struct               │

00:00:24 #2418 [Verbose] > │ (7.999999999999874, 2864.8311229272326, 2864.8311229272326)}"                │

00:00:24 #2419 [Verbose] > │     let v1 : string = $"_equal / actual: %A{struct (7.999999999999988,       │

00:00:24 #2420 [Verbose] > │ 3043.379244966009, 2895.0121485099035)} / expected: %A{struct                │

00:00:24 #2421 [Verbose] > │ (7.999999999999988, 3043.379244966009, 2895.0121485099035)}"                 │

00:00:24 #2422 [Verbose] > │     let v2 : string = $"_equal / actual: %A{struct (8.0, 2894.789038540849,  │

00:00:24 #2423 [Verbose] > │ 2894.789038540849)} / expected: %A{struct (8.0, 2894.789038540849,           │

00:00:24 #2424 [Verbose] > │ 2894.789038540849)}"                                                         │

00:00:24 #2425 [Verbose] > │     ()                                                                       │

00:00:24 #2426 [Verbose] > │ method0()                                                                    │

00:00:24 #2427 [Verbose] > │                                                                              │

00:00:24 #2428 [Verbose] > │                                                                              │

00:00:24 #2429 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2430 [Verbose] >

00:00:24 #2431 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:24 #2432 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:24 #2433 [Verbose] > │ ## vec                                                                       │

00:00:24 #2434 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2435 [Verbose] >

00:00:24 #2436 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2437 [Verbose] > type vec =

00:00:24 #2438 [Verbose] >     {

00:00:24 #2439 [Verbose] >         x : f64

00:00:24 #2440 [Verbose] >         y : f64

00:00:24 #2441 [Verbose] >         z : f64

00:00:24 #2442 [Verbose] >     }

00:00:24 #2443 [Verbose] >

00:00:24 #2444 [Verbose] > inl vec x y z : vec =

00:00:24 #2445 [Verbose] >     { x y z }

00:00:24 #2446 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5291-9179-9ed99de7fdae\main.spi

00:00:24 #2447 [Verbose] >

00:00:24 #2448 [Verbose] > ╭─[ 177.36ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2449 [Verbose] > │ ()                                                                           │

00:00:24 #2450 [Verbose] > │                                                                              │

00:00:24 #2451 [Verbose] > │                                                                              │

00:00:24 #2452 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2453 [Verbose] >

00:00:24 #2454 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2455 [Verbose] > // // test

00:00:24 #2456 [Verbose] >

00:00:24 #2457 [Verbose] > vec 1 2 3 .z

00:00:24 #2458 [Verbose] > |> _equal 3

00:00:24 #2459 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5309-0982-0a03bec1d995\main.spi

00:00:25 #2460 [Verbose] >

00:00:25 #2461 [Verbose] > ╭─[ 215.44ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2462 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:25 #2463 [Verbose] > │     let v0 : string = $"_equal / actual: %A{3.0} / expected: %A{3.0}"        │

00:00:25 #2464 [Verbose] > │     ()                                                                       │

00:00:25 #2465 [Verbose] > │ method0()                                                                    │

00:00:25 #2466 [Verbose] > │                                                                              │

00:00:25 #2467 [Verbose] > │                                                                              │

00:00:25 #2468 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2469 [Verbose] >

00:00:25 #2470 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:25 #2471 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:25 #2472 [Verbose] > │ ### consts                                                                   │

00:00:25 #2473 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2474 [Verbose] >

00:00:25 #2475 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2476 [Verbose] > inl i_hat () = vec 1 0 0

00:00:25 #2477 [Verbose] > inl j_hat () = vec 0 1 0

00:00:25 #2478 [Verbose] > inl k_hat () = vec 0 0 1

00:00:25 #2479 [Verbose] > inl zero_vec () = vec 0 0 0

00:00:25 #2480 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5332-3206-3c610e12d526\main.spi

00:00:25 #2481 [Verbose] >

00:00:25 #2482 [Verbose] > ╭─[ 357.71ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2483 [Verbose] > │ ()                                                                           │

00:00:25 #2484 [Verbose] > │                                                                              │

00:00:25 #2485 [Verbose] > │                                                                              │

00:00:25 #2486 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2487 [Verbose] >

00:00:25 #2488 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:25 #2489 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:25 #2490 [Verbose] > │ ### ^+^                                                                      │

00:00:25 #2491 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2492 [Verbose] >

00:00:25 #2493 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2494 [Verbose] > inl (^+^) (a : vec) (b : vec) =

00:00:25 #2495 [Verbose] >     vec (a.x + b.x) (a.y + b.y) (a.z + b.z)

00:00:25 #2496 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5368-6822-60f928c2e242\main.spi

00:00:25 #2497 [Verbose] >

00:00:25 #2498 [Verbose] > ╭─[ 176.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2499 [Verbose] > │ ()                                                                           │

00:00:25 #2500 [Verbose] > │                                                                              │

00:00:25 #2501 [Verbose] > │                                                                              │

00:00:25 #2502 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2503 [Verbose] >

00:00:25 #2504 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2505 [Verbose] > // // test

00:00:25 #2506 [Verbose] >

00:00:25 #2507 [Verbose] > vec 1 2 3 ^+^ vec 4 5 6

00:00:25 #2508 [Verbose] > |> _equal (vec 5 7 9)

00:00:25 #2509 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5386-8606-87334633a383\main.spi

00:00:25 #2510 [Verbose] >

00:00:25 #2511 [Verbose] > ╭─[ 232.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2512 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:25 #2513 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 7.0, 9.0)} /        │

00:00:25 #2514 [Verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}"                                        │

00:00:25 #2515 [Verbose] > │     ()                                                                       │

00:00:25 #2516 [Verbose] > │ method0()                                                                    │

00:00:25 #2517 [Verbose] > │                                                                              │

00:00:25 #2518 [Verbose] > │                                                                              │

00:00:25 #2519 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2520 [Verbose] >

00:00:25 #2521 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:25 #2522 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:25 #2523 [Verbose] > │ ### sum_vec                                                                  │

00:00:25 #2524 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2525 [Verbose] >

00:00:25 #2526 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2527 [Verbose] > inl sum_vec vs =

00:00:25 #2528 [Verbose] >     vs |> listm.fold (^+^) (zero_vec ())

00:00:25 #2529 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5409-0990-0e16a9c9568b\main.spi

00:00:25 #2530 [Verbose] >

00:00:25 #2531 [Verbose] > ╭─[ 159.42ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2532 [Verbose] > │ ()                                                                           │

00:00:25 #2533 [Verbose] > │                                                                              │

00:00:25 #2534 [Verbose] > │                                                                              │

00:00:25 #2535 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2536 [Verbose] >

00:00:25 #2537 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2538 [Verbose] > // // test

00:00:25 #2539 [Verbose] >

00:00:25 #2540 [Verbose] > [[ vec 1 2 3; vec 4 5 6 ]]

00:00:25 #2541 [Verbose] > |> sum_vec

00:00:25 #2542 [Verbose] > |> _equal (vec 5 7 9)

00:00:26 #2543 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5426-2606-2700b6701d78\main.spi

00:00:26 #2544 [Verbose] >

00:00:26 #2545 [Verbose] > ╭─[ 165.95ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2546 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:26 #2547 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 7.0, 9.0)} /        │

00:00:26 #2548 [Verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}"                                        │

00:00:26 #2549 [Verbose] > │     ()                                                                       │

00:00:26 #2550 [Verbose] > │ method0()                                                                    │

00:00:26 #2551 [Verbose] > │                                                                              │

00:00:26 #2552 [Verbose] > │                                                                              │

00:00:26 #2553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2554 [Verbose] >

00:00:26 #2555 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #2556 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #2557 [Verbose] > │ ### *^                                                                       │

00:00:26 #2558 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2559 [Verbose] >

00:00:26 #2560 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2561 [Verbose] > inl (*^) c { x y z } =

00:00:26 #2562 [Verbose] >     vec (c * x) (c * y) (c * z)

00:00:26 #2563 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5443-4318-4d7177f4a9f2\main.spi

00:00:26 #2564 [Verbose] >

00:00:26 #2565 [Verbose] > ╭─[ 150.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2566 [Verbose] > │ ()                                                                           │

00:00:26 #2567 [Verbose] > │                                                                              │

00:00:26 #2568 [Verbose] > │                                                                              │

00:00:26 #2569 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2570 [Verbose] >

00:00:26 #2571 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2572 [Verbose] > // // test

00:00:26 #2573 [Verbose] >

00:00:26 #2574 [Verbose] > 5 *^ vec 1 2 3

00:00:26 #2575 [Verbose] > |> _equal (vec 5 10 15)

00:00:26 #2576 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5458-5850-500ed442279d\main.spi

00:00:26 #2577 [Verbose] >

00:00:26 #2578 [Verbose] > ╭─[ 173.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2579 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:26 #2580 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 10.0, 15.0)} /      │

00:00:26 #2581 [Verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}"                                      │

00:00:26 #2582 [Verbose] > │     ()                                                                       │

00:00:26 #2583 [Verbose] > │ method0()                                                                    │

00:00:26 #2584 [Verbose] > │                                                                              │

00:00:26 #2585 [Verbose] > │                                                                              │

00:00:26 #2586 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2587 [Verbose] >

00:00:26 #2588 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2589 [Verbose] > // // test

00:00:26 #2590 [Verbose] >

00:00:26 #2591 [Verbose] > 3 *^ i_hat () ^+^ 4 *^ k_hat ()

00:00:26 #2592 [Verbose] > |> _equal (vec 3 0 4)

00:00:26 #2593 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5476-7635-794201beeaaa\main.spi

00:00:26 #2594 [Verbose] >

00:00:26 #2595 [Verbose] > ╭─[ 193.65ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2596 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:26 #2597 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (3.0, 0.0, 4.0)} /        │

00:00:26 #2598 [Verbose] > │ expected: %A{struct (3.0, 0.0, 4.0)}"                                        │

00:00:26 #2599 [Verbose] > │     ()                                                                       │

00:00:26 #2600 [Verbose] > │ method0()                                                                    │

00:00:26 #2601 [Verbose] > │                                                                              │

00:00:26 #2602 [Verbose] > │                                                                              │

00:00:26 #2603 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2604 [Verbose] >

00:00:26 #2605 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #2606 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #2607 [Verbose] > │ ### ^*                                                                       │

00:00:26 #2608 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2609 [Verbose] >

00:00:26 #2610 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2611 [Verbose] > inl (^*) v c =

00:00:26 #2612 [Verbose] >     (*^) c v

00:00:26 #2613 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5496-9618-9fa48d194b18\main.spi

00:00:26 #2614 [Verbose] >

00:00:26 #2615 [Verbose] > ╭─[ 175.82ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2616 [Verbose] > │ ()                                                                           │

00:00:26 #2617 [Verbose] > │                                                                              │

00:00:26 #2618 [Verbose] > │                                                                              │

00:00:26 #2619 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2620 [Verbose] >

00:00:26 #2621 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2622 [Verbose] > // // test

00:00:26 #2623 [Verbose] >

00:00:26 #2624 [Verbose] > vec 1 2 3 ^* 5

00:00:26 #2625 [Verbose] > |> _equal (vec 5 10 15)

00:00:26 #2626 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5514-1405-1507e63f9efd\main.spi

00:00:27 #2627 [Verbose] >

00:00:27 #2628 [Verbose] > ╭─[ 168.44ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2629 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2630 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 10.0, 15.0)} /      │

00:00:27 #2631 [Verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}"                                      │

00:00:27 #2632 [Verbose] > │     ()                                                                       │

00:00:27 #2633 [Verbose] > │ method0()                                                                    │

00:00:27 #2634 [Verbose] > │                                                                              │

00:00:27 #2635 [Verbose] > │                                                                              │

00:00:27 #2636 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2637 [Verbose] >

00:00:27 #2638 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2639 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2640 [Verbose] > │ ### ^/                                                                       │

00:00:27 #2641 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2642 [Verbose] >

00:00:27 #2643 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2644 [Verbose] > inl (^/) { x y z } c =

00:00:27 #2645 [Verbose] >     vec (x / c) (y / c) (z / c)

00:00:27 #2646 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5531-3150-38ba873d3988\main.spi

00:00:27 #2647 [Verbose] >

00:00:27 #2648 [Verbose] > ╭─[ 149.17ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2649 [Verbose] > │ ()                                                                           │

00:00:27 #2650 [Verbose] > │                                                                              │

00:00:27 #2651 [Verbose] > │                                                                              │

00:00:27 #2652 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2653 [Verbose] >

00:00:27 #2654 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2655 [Verbose] > // // test

00:00:27 #2656 [Verbose] >

00:00:27 #2657 [Verbose] > vec 1 2 3 ^/ 5

00:00:27 #2658 [Verbose] > |> _equal (vec 0.2 0.4 0.6)

00:00:27 #2659 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5546-4663-4e4f6deca979\main.spi

00:00:27 #2660 [Verbose] >

00:00:27 #2661 [Verbose] > ╭─[ 155.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2662 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2663 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (0.2, 0.4, 0.6)} /        │

00:00:27 #2664 [Verbose] > │ expected: %A{struct (0.2, 0.4, 0.6)}"                                        │

00:00:27 #2665 [Verbose] > │     ()                                                                       │

00:00:27 #2666 [Verbose] > │ method0()                                                                    │

00:00:27 #2667 [Verbose] > │                                                                              │

00:00:27 #2668 [Verbose] > │                                                                              │

00:00:27 #2669 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2670 [Verbose] >

00:00:27 #2671 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2672 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2673 [Verbose] > │ ### negate_vec                                                               │

00:00:27 #2674 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2675 [Verbose] >

00:00:27 #2676 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2677 [Verbose] > inl negate_vec v =

00:00:27 #2678 [Verbose] >     v ^* -1

00:00:27 #2679 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5562-6283-6f1804f3d052\main.spi

00:00:27 #2680 [Verbose] >

00:00:27 #2681 [Verbose] > ╭─[ 161.56ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2682 [Verbose] > │ ()                                                                           │

00:00:27 #2683 [Verbose] > │                                                                              │

00:00:27 #2684 [Verbose] > │                                                                              │

00:00:27 #2685 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2686 [Verbose] >

00:00:27 #2687 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2688 [Verbose] > // // test

00:00:27 #2689 [Verbose] >

00:00:27 #2690 [Verbose] > vec 1 2 3

00:00:27 #2691 [Verbose] > |> negate_vec

00:00:27 #2692 [Verbose] > |> _equal (vec -1 -2 -3)

00:00:27 #2693 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5579-7919-77e89edb33c1\main.spi

00:00:27 #2694 [Verbose] >

00:00:27 #2695 [Verbose] > ╭─[ 203.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2696 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2697 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-1.0, -2.0, -3.0)} /     │

00:00:27 #2698 [Verbose] > │ expected: %A{struct (-1.0, -2.0, -3.0)}"                                     │

00:00:27 #2699 [Verbose] > │     ()                                                                       │

00:00:27 #2700 [Verbose] > │ method0()                                                                    │

00:00:27 #2701 [Verbose] > │                                                                              │

00:00:27 #2702 [Verbose] > │                                                                              │

00:00:27 #2703 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2704 [Verbose] >

00:00:27 #2705 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2706 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2707 [Verbose] > │ ### ^-^                                                                      │

00:00:27 #2708 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2709 [Verbose] >

00:00:27 #2710 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2711 [Verbose] > inl (^-^) a b =

00:00:27 #2712 [Verbose] >     a ^+^ (negate_vec b)

00:00:27 #2713 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5600-0007-0de4bebcc820\main.spi

00:00:27 #2714 [Verbose] >

00:00:27 #2715 [Verbose] > ╭─[ 203.11ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2716 [Verbose] > │ ()                                                                           │

00:00:27 #2717 [Verbose] > │                                                                              │

00:00:27 #2718 [Verbose] > │                                                                              │

00:00:27 #2719 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2720 [Verbose] >

00:00:27 #2721 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2722 [Verbose] > // // test

00:00:27 #2723 [Verbose] >

00:00:27 #2724 [Verbose] > vec 1 2 3 ^-^ vec 4 5 6

00:00:27 #2725 [Verbose] > |> _equal (vec -3 -3 -3)

00:00:28 #2726 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5620-2061-2c89888c2444\main.spi

00:00:28 #2727 [Verbose] >

00:00:28 #2728 [Verbose] > ╭─[ 187.30ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2729 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:28 #2730 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-3.0, -3.0, -3.0)} /     │

00:00:28 #2731 [Verbose] > │ expected: %A{struct (-3.0, -3.0, -3.0)}"                                     │

00:00:28 #2732 [Verbose] > │     ()                                                                       │

00:00:28 #2733 [Verbose] > │ method0()                                                                    │

00:00:28 #2734 [Verbose] > │                                                                              │

00:00:28 #2735 [Verbose] > │                                                                              │

00:00:28 #2736 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2737 [Verbose] >

00:00:28 #2738 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:28 #2739 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:28 #2740 [Verbose] > │ ### <.>                                                                      │

00:00:28 #2741 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2742 [Verbose] >

00:00:28 #2743 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2744 [Verbose] > inl (<.>) { x = ax y = ay z = az } { x = bx y = by z = bz } =

00:00:28 #2745 [Verbose] >     ax * bx + ay * by + az * bz

00:00:28 #2746 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5640-4022-4c95cf0ff7f5\main.spi

00:00:28 #2747 [Verbose] >

00:00:28 #2748 [Verbose] > ╭─[ 202.07ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2749 [Verbose] > │ ()                                                                           │

00:00:28 #2750 [Verbose] > │                                                                              │

00:00:28 #2751 [Verbose] > │                                                                              │

00:00:28 #2752 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2753 [Verbose] >

00:00:28 #2754 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2755 [Verbose] > // // test

00:00:28 #2756 [Verbose] >

00:00:28 #2757 [Verbose] > vec 1 2 3 <.> vec 4 5 6

00:00:28 #2758 [Verbose] > |> _equal 32

00:00:28 #2759 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5660-6059-6042f7cbb9e7\main.spi

00:00:28 #2760 [Verbose] >

00:00:28 #2761 [Verbose] > ╭─[ 198.87ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2762 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:28 #2763 [Verbose] > │     let v0 : string = $"_equal / actual: %A{32.0} / expected: %A{32.0}"      │

00:00:28 #2764 [Verbose] > │     ()                                                                       │

00:00:28 #2765 [Verbose] > │ method0()                                                                    │

00:00:28 #2766 [Verbose] > │                                                                              │

00:00:28 #2767 [Verbose] > │                                                                              │

00:00:28 #2768 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2769 [Verbose] >

00:00:28 #2770 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:28 #2771 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:28 #2772 [Verbose] > │ ### \>\<                                                                     │

00:00:28 #2773 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2774 [Verbose] >

00:00:28 #2775 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2776 [Verbose] > inl (><) (a : vec) (b : vec) =

00:00:28 #2777 [Verbose] >     vec

00:00:28 #2778 [Verbose] >         (a.y * b.z - a.z * b.y)

00:00:28 #2779 [Verbose] >         (a.z * b.x - a.x * b.z)

00:00:28 #2780 [Verbose] >         (a.x * b.y - a.y * b.x)

00:00:28 #2781 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5681-8178-82f1956d9b7c\main.spi

00:00:28 #2782 [Verbose] >

00:00:28 #2783 [Verbose] > ╭─[ 187.52ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2784 [Verbose] > │ ()                                                                           │

00:00:28 #2785 [Verbose] > │                                                                              │

00:00:28 #2786 [Verbose] > │                                                                              │

00:00:28 #2787 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2788 [Verbose] >

00:00:28 #2789 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2790 [Verbose] > // // test

00:00:28 #2791 [Verbose] >

00:00:28 #2792 [Verbose] > vec 1 2 3 >< vec 4 5 6

00:00:28 #2793 [Verbose] > |> _equal (vec -3 6 -3)

00:00:29 #2794 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5701-0110-055905e6a321\main.spi

00:00:29 #2795 [Verbose] >

00:00:29 #2796 [Verbose] > ╭─[ 362.06ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2797 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:29 #2798 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-3.0, 6.0, -3.0)} /      │

00:00:29 #2799 [Verbose] > │ expected: %A{struct (-3.0, 6.0, -3.0)}"                                      │

00:00:29 #2800 [Verbose] > │     ()                                                                       │

00:00:29 #2801 [Verbose] > │ method0()                                                                    │

00:00:29 #2802 [Verbose] > │                                                                              │

00:00:29 #2803 [Verbose] > │                                                                              │

00:00:29 #2804 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2805 [Verbose] >

00:00:29 #2806 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:29 #2807 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:29 #2808 [Verbose] > │ ### magnitude                                                                │

00:00:29 #2809 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2810 [Verbose] >

00:00:29 #2811 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2812 [Verbose] > inl magnitude v =

00:00:29 #2813 [Verbose] >     v <.> v |> sqrt

00:00:29 #2814 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5737-3741-3bce9fbdcb9b\main.spi

00:00:29 #2815 [Verbose] >

00:00:29 #2816 [Verbose] > ╭─[ 158.74ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2817 [Verbose] > │ ()                                                                           │

00:00:29 #2818 [Verbose] > │                                                                              │

00:00:29 #2819 [Verbose] > │                                                                              │

00:00:29 #2820 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2821 [Verbose] >

00:00:29 #2822 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2823 [Verbose] > // // test

00:00:29 #2824 [Verbose] >

00:00:29 #2825 [Verbose] > vec 1 2 3

00:00:29 #2826 [Verbose] > |> magnitude

00:00:29 #2827 [Verbose] > |> _almost_equal 3.7416573867739413

00:00:29 #2828 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5753-5356-50fe7c2e0300\main.spi

00:00:29 #2829 [Verbose] >

00:00:29 #2830 [Verbose] > ╭─[ 166.97ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2831 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:29 #2832 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{3.7416573867739413} /     │

00:00:29 #2833 [Verbose] > │ expected: %A{3.7416573867739413}"                                            │

00:00:29 #2834 [Verbose] > │     ()                                                                       │

00:00:29 #2835 [Verbose] > │ method0()                                                                    │

00:00:29 #2836 [Verbose] > │                                                                              │

00:00:29 #2837 [Verbose] > │                                                                              │

00:00:29 #2838 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2839 [Verbose] >

00:00:29 #2840 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:29 #2841 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:29 #2842 [Verbose] > │ ### v1                                                                       │

00:00:29 #2843 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2844 [Verbose] >

00:00:29 #2845 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2846 [Verbose] > inl v1 t =

00:00:29 #2847 [Verbose] >     2 *^ (t ** 2 *^ i_hat () ^+^ 3 *^ (t ** 3 *^ j_hat () ^+^ t ** 4 *^ k_hat

00:00:29 #2848 [Verbose] > ()))

00:00:29 #2849 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5770-7079-78934341696d\main.spi

00:00:29 #2850 [Verbose] >

00:00:29 #2851 [Verbose] > ╭─[ 179.81ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2852 [Verbose] > │ ()                                                                           │

00:00:29 #2853 [Verbose] > │                                                                              │

00:00:29 #2854 [Verbose] > │                                                                              │

00:00:29 #2855 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2856 [Verbose] >

00:00:29 #2857 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2858 [Verbose] > // // test

00:00:29 #2859 [Verbose] >

00:00:29 #2860 [Verbose] > v1 1

00:00:29 #2861 [Verbose] > |> _equal (vec 2 6 6)

00:00:29 #2862 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5789-8912-84a7d4ad86e2\main.spi

00:00:29 #2863 [Verbose] >

00:00:29 #2864 [Verbose] > ╭─[ 191.94ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2865 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:29 #2866 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (2.0, 6.0, 6.0)} /        │

00:00:29 #2867 [Verbose] > │ expected: %A{struct (2.0, 6.0, 6.0)}"                                        │

00:00:29 #2868 [Verbose] > │     ()                                                                       │

00:00:29 #2869 [Verbose] > │ method0()                                                                    │

00:00:29 #2870 [Verbose] > │                                                                              │

00:00:29 #2871 [Verbose] > │                                                                              │

00:00:29 #2872 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2873 [Verbose] >

00:00:29 #2874 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:29 #2875 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:29 #2876 [Verbose] > │ ### vec_derivative                                                           │

00:00:29 #2877 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2878 [Verbose] >

00:00:29 #2879 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2880 [Verbose] > type vec_derivative = (f64 -> vec) -> f64 -> vec

00:00:29 #2881 [Verbose] >

00:00:29 #2882 [Verbose] > inl vec_derivative dt : vec_derivative =

00:00:29 #2883 [Verbose] >     fun v t =>

00:00:29 #2884 [Verbose] >         (v (t + dt / 2) ^-^ v (t - dt / 2)) ^/ dt

00:00:29 #2885 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5808-0883-0c1a07b721db\main.spi

00:00:29 #2886 [Verbose] >

00:00:29 #2887 [Verbose] > ╭─[ 146.11ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #2888 [Verbose] > │ ()                                                                           │

00:00:29 #2889 [Verbose] > │                                                                              │

00:00:29 #2890 [Verbose] > │                                                                              │

00:00:29 #2891 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #2892 [Verbose] >

00:00:29 #2893 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #2894 [Verbose] > // // test

00:00:29 #2895 [Verbose] >

00:00:29 #2896 [Verbose] > vec_derivative 0.01 v1 3 .x

00:00:29 #2897 [Verbose] > |> _almost_equal (derivative 0.01 (v1 >> fun v => v.x) 3)

00:00:30 #2898 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5823-2363-21706e122531\main.spi

00:00:30 #2899 [Verbose] >

00:00:30 #2900 [Verbose] > ╭─[ 145.77ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #2901 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:30 #2902 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{11.999999999999744} /     │

00:00:30 #2903 [Verbose] > │ expected: %A{11.999999999999744}"                                            │

00:00:30 #2904 [Verbose] > │     ()                                                                       │

00:00:30 #2905 [Verbose] > │ method0()                                                                    │

00:00:30 #2906 [Verbose] > │                                                                              │

00:00:30 #2907 [Verbose] > │                                                                              │

00:00:30 #2908 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2909 [Verbose] >

00:00:30 #2910 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:30 #2911 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:30 #2912 [Verbose] > │ ## states_ps                                                                 │

00:00:30 #2913 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #2914 [Verbose] >

00:00:30 #2915 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #2916 [Verbose] > nominal particle_state =

00:00:30 #2917 [Verbose] >     {

00:00:30 #2918 [Verbose] >         mass : f64

00:00:30 #2919 [Verbose] >         charge : f64

00:00:30 #2920 [Verbose] >         time : f64

00:00:30 #2921 [Verbose] >         pos_vec : vec

00:00:30 #2922 [Verbose] >         velocity : vec

00:00:30 #2923 [Verbose] >     }

00:00:30 #2924 [Verbose] >

00:00:30 #2925 [Verbose] > inl default_particle_state () : particle_state =

00:00:30 #2926 [Verbose] >     particle_state {

00:00:30 #2927 [Verbose] >         mass = 1

00:00:30 #2928 [Verbose] >         charge = 0

00:00:30 #2929 [Verbose] >         time = 0

00:00:30 #2930 [Verbose] >         pos_vec = zero_vec ()

00:00:30 #2931 [Verbose] >         velocity = zero_vec ()

00:00:30 #2932 [Verbose] >     }

00:00:30 #2933 [Verbose] >

00:00:30 #2934 [Verbose] > type one_body_force = particle_state -> vec

00:00:30 #2935 [Verbose] >

00:00:30 #2936 [Verbose] > nominal d_particle_state =

00:00:30 #2937 [Verbose] >     {

00:00:30 #2938 [Verbose] >         dmdt : f64

00:00:30 #2939 [Verbose] >         dqdt : f64

00:00:30 #2940 [Verbose] >         dtdt : f64

00:00:30 #2941 [Verbose] >         drdt : vec

00:00:30 #2942 [Verbose] >         dvdt : vec

00:00:30 #2943 [Verbose] >     }

00:00:30 #2944 [Verbose] >

00:00:30 #2945 [Verbose] > inl newton_second_ps (fs : list one_body_force) (st : particle_state) :

00:00:30 #2946 [Verbose] > d_particle_state =

00:00:30 #2947 [Verbose] >     inl f_net = fs |> listm.map (fun f => f st) |> sum_vec

00:00:30 #2948 [Verbose] >     d_particle_state {

00:00:30 #2949 [Verbose] >         dmdt = 0

00:00:30 #2950 [Verbose] >         dqdt = 0

00:00:30 #2951 [Verbose] >         dtdt = 1

00:00:30 #2952 [Verbose] >         drdt = st.velocity

00:00:30 #2953 [Verbose] >         dvdt = f_net ^/ st.mass

00:00:30 #2954 [Verbose] >     }

00:00:30 #2955 [Verbose] >

00:00:30 #2956 [Verbose] > inl earth_surface_gravity (st : particle_state) =

00:00:30 #2957 [Verbose] >     inl g = 9.80665

00:00:30 #2958 [Verbose] >     -st.mass * g *^ k_hat ()

00:00:30 #2959 [Verbose] >

00:00:30 #2960 [Verbose] > inl air_resistance drag rho area (st : particle_state) =

00:00:30 #2961 [Verbose] >     -0.5 * drag * rho * area * magnitude st.velocity *^ st.velocity

00:00:30 #2962 [Verbose] >

00:00:30 #2963 [Verbose] > inl euler_cromer_ps dt (deriv : particle_state -> d_particle_state)

00:00:30 #2964 [Verbose] > (particle_state st) =

00:00:30 #2965 [Verbose] >     inl dst : d_particle_state = deriv (particle_state st)

00:00:30 #2966 [Verbose] >     inl v' = st.velocity ^+^ dst.dvdt ^* dt

00:00:30 #2967 [Verbose] >     particle_state { st with

00:00:30 #2968 [Verbose] >         time = st.time + dt

00:00:30 #2969 [Verbose] >         pos_vec = st.pos_vec ^+^ v' ^* dt

00:00:30 #2970 [Verbose] >         velocity = st.velocity ^+^ dst.dvdt ^* dt

00:00:30 #2971 [Verbose] >     }

00:00:30 #2972 [Verbose] >

00:00:30 #2973 [Verbose] > instance (+++) d_particle_state = fun (dps : d_particle_state) (dps' :

00:00:30 #2974 [Verbose] > d_particle_state) =>

00:00:30 #2975 [Verbose] >     d_particle_state {

00:00:30 #2976 [Verbose] >         dmdt = dps.dmdt + dps'.dmdt

00:00:30 #2977 [Verbose] >         dqdt = dps.dqdt + dps'.dqdt

00:00:30 #2978 [Verbose] >         dtdt = dps.dtdt + dps'.dtdt

00:00:30 #2979 [Verbose] >         drdt = dps.drdt ^+^ dps'.drdt

00:00:30 #2980 [Verbose] >         dvdt = dps.dvdt ^+^ dps'.dvdt

00:00:30 #2981 [Verbose] >     }

00:00:30 #2982 [Verbose] >

00:00:30 #2983 [Verbose] > instance scale d_particle_state = fun w (dps : d_particle_state) =>

00:00:30 #2984 [Verbose] >     d_particle_state {

00:00:30 #2985 [Verbose] >         dmdt = w * dps.dmdt

00:00:30 #2986 [Verbose] >         dqdt = w * dps.dqdt

00:00:30 #2987 [Verbose] >         dtdt = w * dps.dtdt

00:00:30 #2988 [Verbose] >         drdt = w *^ dps.drdt

00:00:30 #2989 [Verbose] >         dvdt = w *^ dps.dvdt

00:00:30 #2990 [Verbose] >     }

00:00:30 #2991 [Verbose] >

00:00:30 #2992 [Verbose] > instance shift particle_state = fun dt dps (particle_state st) =>

00:00:30 #2993 [Verbose] >     inl (d_particle_state dps) =

00:00:30 #2994 [Verbose] >         real

00:00:30 #2995 [Verbose] >             match dps with

00:00:30 #2996 [Verbose] >             | d_particle_state _ => dps

00:00:30 #2997 [Verbose] >     particle_state { st with

00:00:30 #2998 [Verbose] >         time = st.time + dps.dtdt * dt

00:00:30 #2999 [Verbose] >         pos_vec = st.pos_vec ^+^ dps.drdt ^* dt

00:00:30 #3000 [Verbose] >         velocity = st.velocity ^+^ dps.dvdt ^* dt

00:00:30 #3001 [Verbose] >     }

00:00:30 #3002 [Verbose] >

00:00:30 #3003 [Verbose] > inl states_ps (method : numerical_method particle_state d_particle_state) : _ ->

00:00:30 #3004 [Verbose] > _ -> i32 -> particle_state =

00:00:30 #3005 [Verbose] >     newton_second_ps >> method >> seq.iterate_

00:00:30 #3006 [Verbose] >

00:00:30 #3007 [Verbose] > inl z_ge0 sts =

00:00:30 #3008 [Verbose] >     sts

00:00:30 #3009 [Verbose] >     |> seq.take_while_ (fun (particle_state st) _ => st.pos_vec.z >= 0)

00:00:30 #3010 [Verbose] >

00:00:30 #3011 [Verbose] > inl trajectory sts =

00:00:30 #3012 [Verbose] >     sts |> listm.map (fun (particle_state st) => st.pos_vec.y, st.pos_vec.z)

00:00:30 #3013 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5838-3882-38f560afc32a\main.spi

00:00:30 #3014 [Verbose] >

00:00:30 #3015 [Verbose] > ╭─[ 177.14ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #3016 [Verbose] > │ ()                                                                           │

00:00:30 #3017 [Verbose] > │                                                                              │

00:00:30 #3018 [Verbose] > │                                                                              │

00:00:30 #3019 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #3020 [Verbose] >

00:00:30 #3021 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #3022 [Verbose] > // // test

00:00:30 #3023 [Verbose] >

00:00:30 #3024 [Verbose] > inl update_ps (method : numerical_method particle_state d_particle_state) =

00:00:30 #3025 [Verbose] >     newton_second_ps >> method

00:00:30 #3026 [Verbose] >

00:00:30 #3027 [Verbose] > inl position_ps (method : numerical_method particle_state d_particle_state) fs

00:00:30 #3028 [Verbose] > st t =

00:00:30 #3029 [Verbose] >     inl states : i32 -> particle_state = states_ps method fs st

00:00:30 #3030 [Verbose] >     inl dt = (states 1).time - (states 0).time

00:00:30 #3031 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:30 #3032 [Verbose] >     inl st1 = solver' method (newton_second_ps fs) st num_steps

00:00:30 #3033 [Verbose] >     st1.pos_vec

00:00:30 #3034 [Verbose] >

00:00:30 #3035 [Verbose] > inl sun_gravity (st : particle_state) : vec =

00:00:30 #3036 [Verbose] >     inl big_g = 0.0000000000667408

00:00:30 #3037 [Verbose] >     inl sun_mass = 1988480000000000000000000000000

00:00:30 #3038 [Verbose] >     -big_g * sun_mass * st.mass *^ st.pos_vec ^/ magnitude st.pos_vec ** 3

00:00:30 #3039 [Verbose] >

00:00:30 #3040 [Verbose] > inl wind_force v_wind drag rho area (st : particle_state) =

00:00:30 #3041 [Verbose] >     inl v_rel = st.velocity ^-^ v_wind

00:00:30 #3042 [Verbose] >     -0.5 * drag * rho * area * magnitude v_rel *^ v_rel

00:00:30 #3043 [Verbose] >

00:00:30 #3044 [Verbose] > inl rock_state () =

00:00:30 #3045 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:30 #3046 [Verbose] >     particle_state { default_particle_state' with

00:00:30 #3047 [Verbose] >         mass = 2

00:00:30 #3048 [Verbose] >         velocity = vec 3 0 4

00:00:30 #3049 [Verbose] >     }

00:00:30 #3050 [Verbose] >

00:00:30 #3051 [Verbose] > inl halley_update dt =

00:00:30 #3052 [Verbose] >     update_ps (euler_cromer_ps dt) [[ sun_gravity ]]

00:00:30 #3053 [Verbose] >

00:00:30 #3054 [Verbose] > inl halley_initial () =

00:00:30 #3055 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:30 #3056 [Verbose] >     particle_state { default_particle_state' with

00:00:30 #3057 [Verbose] >         mass = 220000000000000

00:00:30 #3058 [Verbose] >         pos_vec = 87660000000 *^ i_hat ()

00:00:30 #3059 [Verbose] >         velocity = 54569 *^ j_hat ()

00:00:30 #3060 [Verbose] >     }

00:00:30 #3061 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5856-5672-528df4a590ba\main.spi

00:00:30 #3062 [Verbose] >

00:00:30 #3063 [Verbose] > ╭─[ 197.44ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #3064 [Verbose] > │ ()                                                                           │

00:00:30 #3065 [Verbose] > │                                                                              │

00:00:30 #3066 [Verbose] > │                                                                              │

00:00:30 #3067 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #3068 [Verbose] >

00:00:30 #3069 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #3070 [Verbose] > // // test

00:00:30 #3071 [Verbose] >

00:00:30 #3072 [Verbose] > inl baseball_forces () =

00:00:30 #3073 [Verbose] >     inl area = pi * (0.074 / 2) ** 2

00:00:30 #3074 [Verbose] >     [[

00:00:30 #3075 [Verbose] >         earth_surface_gravity

00:00:30 #3076 [Verbose] >         air_resistance 0.3 1.225 area

00:00:30 #3077 [Verbose] >     ]]

00:00:30 #3078 [Verbose] >

00:00:30 #3079 [Verbose] > inl baseball_trajectory dt v0 theta_deg =

00:00:30 #3080 [Verbose] >     inl theta_rad = theta_deg * pi / 180

00:00:30 #3081 [Verbose] >     inl vy0 = v0 * cos theta_rad

00:00:30 #3082 [Verbose] >     inl vz0 = v0 * sin theta_rad

00:00:30 #3083 [Verbose] >     inl initial_state =

00:00:30 #3084 [Verbose] >         particle_state {

00:00:30 #3085 [Verbose] >             mass = 0.145

00:00:30 #3086 [Verbose] >             charge = 0

00:00:30 #3087 [Verbose] >             time = 0

00:00:30 #3088 [Verbose] >             pos_vec = zero_vec ()

00:00:30 #3089 [Verbose] >             velocity = vec 0 vy0 vz0

00:00:30 #3090 [Verbose] >         }

00:00:30 #3091 [Verbose] >     states_ps (euler_cromer_ps dt) (baseball_forces ()) initial_state

00:00:30 #3092 [Verbose] >     >> Some

00:00:30 #3093 [Verbose] >     |> z_ge0

00:00:30 #3094 [Verbose] >     |> trajectory

00:00:30 #3095 [Verbose] >

00:00:30 #3096 [Verbose] > inl baseball_range dt v0 theta_deg =

00:00:30 #3097 [Verbose] >     baseball_trajectory dt v0 theta_deg

00:00:30 #3098 [Verbose] >     |> listm.fold (fun _ (y, _) => y) 0

00:00:30 #3099 [Verbose] >

00:00:30 #3100 [Verbose] > inl x : a _ f64 = am'.init_series 10 80 1

00:00:30 #3101 [Verbose] > inl y = x |> am.map (baseball_range 0.01 45)

00:00:30 #3102 [Verbose] > "range for a baseball hit at 45 m/s",

00:00:30 #3103 [Verbose] > "angle above horizontal (degrees)",

00:00:30 #3104 [Verbose] > "",

00:00:30 #3105 [Verbose] > ;[[ "horizontal range (m)", x, y ]]

00:00:30 #3106 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5876-7670-7124729629ba\main.spi

00:00:31 #3107 [Verbose] >

00:00:31 #3108 [Verbose] > ╭─[ 959.84ms - return value ]──────────────────────────────────────────────────╮

00:00:31 #3109 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:31 #3110 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:31 #3111 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:31 #3112 [Verbose] > │ stroke="none"/>                                                              │

00:00:31 #3113 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:31 #3114 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:31 #3115 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:31 #3116 [Verbose] > │ range for a baseball hit at 45 m/s                                           │

00:00:31 #3117 [Verbose] > │ </text>                                                                      │

00:00:31 #3118 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="55" y1="424" x2="55" │

00:00:31 #3119 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3120 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │

00:00:31 #3121 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3122 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:31 #3123 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3124 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │

00:00:31 #3125 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3126 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="...                         │

00:00:31 #3127 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #3128 [Verbose] >

00:00:31 #3129 [Verbose] > ╭─[ 973.48ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #3130 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:31 #3131 [Verbose] > │ and UH0 =                                                                    │

00:00:31 #3132 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:31 #3133 [Verbose] > │ * float * UH0                                                                │

00:00:31 #3134 [Verbose] > │     | UH0_1                                                                  │

00:00:31 #3135 [Verbose] > │ and UH1 =                                                                    │

00:00:31 #3136 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:31 #3137 [Verbose] > │     | UH1_1                                                                  │

00:00:31 #3138 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:31 #3139 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:31 #3140 [Verbose] > │     let v2 : bool = v1 < 71                                                  │

00:00:31 #3141 [Verbose] > │     v2                                                                       │

00:00:31 #3142 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:31 #3143 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:31 #3144 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:31 #3145 [Verbose] > │     v3                                                                       │

00:00:31 #3146 [Verbose] > │ and method4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5  │

00:00:31 #3147 [Verbose] > │ : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float *   │

00:00:31 #3148 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:31 #3149 [Verbose] > │     let v10 : bool = v9 <= 0                                                 │

00:00:31 #3150 [Verbose] > │     if v10 then                                                              │

00:00:31 #3151 [Verbose] > │         struct (v0, v1, v2, v3, v4, v5, v6, v7, v8)                          │

00:00:31 #3152 [Verbose] > │     else                                                                     │

00:00:31 #3153 [Verbose] > │         let v11 : float = v6 * v6                                            │

00:00:31 #3154 [Verbose] > │         let v12 : float = v7 * v7                                            │

00:00:31 #3155 [Verbose] > │         let v13 : float = v11 + v12                                          │

00:00:31 #3156 [Verbose] > │         let v14 : float = v8 * v8                                            │

00:00:31 #3157 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:31 #3158 [Verbose] > │         let v16 : float = sqrt v15                                           │

00:00:31 #3159 [Verbose] > │         let v17 : float = -0.0007902794129829633 * v16                       │

00:00:31 #3160 [Verbose] > │         let v18 : float = v17 * v6                                           │

00:00:31 #3161 [Verbose] > │         let v19 : float = v17 * v7                                           │

00:00:31 #3162 [Verbose] > │         let v20 : float = v17 * v8                                           │

00:00:31 #3163 [Verbose] > │         let v21 : float =  -v1                                               │

00:00:31 #3164 [Verbose] > │         let v22 : float = v21 * 9.80665                                      │

00:00:31 #3165 [Verbose] > │         let v23 : float = v22 * 0.0                                          │

00:00:31 #3166 [Verbose] > │         let v24 : float = v23 + v18                                          │

00:00:31 #3167 [Verbose] > │         let v25 : float = v23 + v19                                          │

00:00:31 #3168 [Verbose] > │         let v26 : float = v22 + v20                                          │

00:00:31 #3169 [Verbose] > │         let v27 : float = v24 / v1                                           │

00:00:31 #3170 [Verbose] > │         let v28 : float = v25 / v1                                           │

00:00:31 #3171 [Verbose] > │         let v29 : float = v26 / v1                                           │

00:00:31 #3172 [Verbose] > │         let v30 : float = 0.01 * v27                                         │

00:00:31 #3173 [Verbose] > │         let v31 : float = 0.01 * v28                                         │

00:00:31 #3174 [Verbose] > │         let v32 : float = 0.01 * v29                                         │

00:00:31 #3175 [Verbose] > │         let v33 : float = v6 + v30                                           │

00:00:31 #3176 [Verbose] > │         let v34 : float = v7 + v31                                           │

00:00:31 #3177 [Verbose] > │         let v35 : float = v8 + v32                                           │

00:00:31 #3178 [Verbose] > │         let v36 : float = v5 + 0.01                                          │

00:00:31 #3179 [Verbose] > │         let v37 : float = 0.01 * v33                                         │

00:00:31 #3180 [Verbose] > │         let v38 : float = 0.01 * v34                                         │

00:00:31 #3181 [Verbose] > │         let v39 : float = 0.01 * v35                                         │

00:00:31 #3182 [Verbose] > │         let v40 : float = v2 + v37                                           │

00:00:31 #3183 [Verbose] > │         let v41 : float = v3 + v38                                           │

00:00:31 #3184 [Verbose] > │         let v42 : float = v4 + v39                                           │

00:00:31 #3185 [Verbose] > │         let v43 : int32 = v9 - 1                                             │

00:00:31 #3186 [Verbose] > │         method4(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43)              │

00:00:31 #3187 [Verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:31 #3188 [Verbose] > │     match v0 with                                                            │

00:00:31 #3189 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:31 #3190 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:31 #3191 [Verbose] > │         method5(v11, v12)                                                    │

00:00:31 #3192 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:31 #3193 [Verbose] > │         v1                                                                   │

00:00:31 #3194 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 =           │

00:00:31 #3195 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:31 #3196 [Verbose] > │     let v5 : float = 0.145                                                   │

00:00:31 #3197 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:31 #3198 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:31 #3199 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:31 #3200 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:31 #3201 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:31 #3202 [Verbose] > │     let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 :    │

00:00:31 #3203 [Verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method4(v4, v5, │

00:00:31 #3204 [Verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3)                                             │

00:00:31 #3205 [Verbose] > │     let v20 : bool = v15 >= 0.0                                              │

00:00:31 #3206 [Verbose] > │     if v20 then                                                              │

00:00:31 #3207 [Verbose] > │         let v21 : UH0 = UH0_0(v11, v12, v13, v14, v15, v16, v17, v18, v19,   │

00:00:31 #3208 [Verbose] > │ v2)                                                                          │

00:00:31 #3209 [Verbose] > │         let v22 : int32 = v3 + 1                                             │

00:00:31 #3210 [Verbose] > │         method3(v0, v1, v21, v22)                                            │

00:00:31 #3211 [Verbose] > │     else                                                                     │

00:00:31 #3212 [Verbose] > │         let v24 : UH0 = UH0_1                                                │

00:00:31 #3213 [Verbose] > │         method5(v2, v24)                                                     │

00:00:31 #3214 [Verbose] > │ and method6 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:31 #3215 [Verbose] > │     match v0 with                                                            │

00:00:31 #3216 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:31 #3217 [Verbose] > │         let v12 : UH1 = method6(v11, v1)                                     │

00:00:31 #3218 [Verbose] > │         UH1_0(v5, v6, v12)                                                   │

00:00:31 #3219 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:31 #3220 [Verbose] > │         v1                                                                   │

00:00:31 #3221 [Verbose] > │ and method7 (v0 : UH1, v1 : float) : float =                                 │

00:00:31 #3222 [Verbose] > │     match v0 with                                                            │

00:00:31 #3223 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:31 #3224 [Verbose] > │         method7(v4, v2)                                                      │

00:00:31 #3225 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:31 #3226 [Verbose] > │         v1                                                                   │

00:00:31 #3227 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:31 #3228 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:31 #3229 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (71)                       │

00:00:31 #3230 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:31 #3231 [Verbose] > │     while method1(v1) do                                                     │

00:00:31 #3232 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:31 #3233 [Verbose] > │         let v4 : float = float v3                                            │

00:00:31 #3234 [Verbose] > │         let v5 : float = 10.0 + v4                                           │

00:00:31 #3235 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:31 #3236 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:31 #3237 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:31 #3238 [Verbose] > │         ()                                                                   │

00:00:31 #3239 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:31 #3240 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:31 #3241 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:31 #3242 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:31 #3243 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:31 #3244 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:31 #3245 [Verbose] > │         let v13 : float = v12 * 3.141592653589793                            │

00:00:31 #3246 [Verbose] > │         let v14 : float = v13 / 180.0                                        │

00:00:31 #3247 [Verbose] > │         let v15 : float = cos v14                                            │

00:00:31 #3248 [Verbose] > │         let v16 : float = 45.0 * v15                                         │

00:00:31 #3249 [Verbose] > │         let v17 : float = sin v14                                            │

00:00:31 #3250 [Verbose] > │         let v18 : float = 45.0 * v17                                         │

00:00:31 #3251 [Verbose] > │         let v19 : UH0 = UH0_1                                                │

00:00:31 #3252 [Verbose] > │         let v20 : int32 = 0                                                  │

00:00:31 #3253 [Verbose] > │         let v21 : UH0 = method3(v16, v18, v19, v20)                          │

00:00:31 #3254 [Verbose] > │         let v22 : UH1 = UH1_1                                                │

00:00:31 #3255 [Verbose] > │         let v23 : UH1 = method6(v21, v22)                                    │

00:00:31 #3256 [Verbose] > │         let v24 : float = 0.0                                                │

00:00:31 #3257 [Verbose] > │         let v25 : float = method7(v23, v24)                                  │

00:00:31 #3258 [Verbose] > │         v8.[int v11] <- v25                                                  │

00:00:31 #3259 [Verbose] > │         let v26 : int32 = v11 + 1                                            │

00:00:31 #3260 [Verbose] > │         v9.l0 <- v26                                                         │

00:00:31 #3261 [Verbose] > │         ()                                                                   │

00:00:31 #3262 [Verbose] > │     let v27 : string = "horizontal range (m)"                                │

00:00:31 #3263 [Verbose] > │     let v28 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:31 #3264 [Verbose] > │ (v27, v0, v8)|]                                                              │

00:00:31 #3265 [Verbose] > │     let v29 : string = "range for a baseball hit at 45 m/s"                  │

00:00:31 #3266 [Verbose] > │     let v30 : string = "angle above horizontal (degrees)"                    │

00:00:31 #3267 [Verbose] > │     let v31 : string = ""                                                    │

00:00:31 #3268 [Verbose] > │     struct (v29, v30, v31, v28)                                              │

00:00:31 #3269 [Verbose] > │ method0()                                                                    │

00:00:31 #3270 [Verbose] > │                                                                              │

00:00:31 #3271 [Verbose] > │                                                                              │

00:00:31 #3272 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #3273 [Verbose] >

00:00:31 #3274 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:31 #3275 [Verbose] > // // test

00:00:31 #3276 [Verbose] >

00:00:31 #3277 [Verbose] > inl best_angle (min, max) =

00:00:31 #3278 [Verbose] >     let rec loop theta_deg (best_range, best_theta_deg) =

00:00:31 #3279 [Verbose] >         if theta_deg > max

00:00:31 #3280 [Verbose] >         then best_range, best_theta_deg

00:00:31 #3281 [Verbose] >         else

00:00:31 #3282 [Verbose] >             inl range = baseball_range 0.01 45 theta_deg

00:00:31 #3283 [Verbose] >             loop

00:00:31 #3284 [Verbose] >                 (theta_deg + 1)

00:00:31 #3285 [Verbose] >                 (if range > best_range

00:00:31 #3286 [Verbose] >                     then range, theta_deg

00:00:31 #3287 [Verbose] >                     else best_range, best_theta_deg)

00:00:31 #3288 [Verbose] >     loop min (0f64, min)

00:00:31 #3289 [Verbose] >

00:00:31 #3290 [Verbose] > best_angle (30f64, 60f64)

00:00:31 #3291 [Verbose] > |> _equal (116.77499158246208, 41)

00:00:31 #3292 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5981-8150-861031d36221\main.spi

00:00:32 #3293 [Verbose] >

00:00:32 #3294 [Verbose] > ╭─[ 586.90ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #3295 [Verbose] > │ type UH0 =                                                                   │

00:00:32 #3296 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:32 #3297 [Verbose] > │ * float * UH0                                                                │

00:00:32 #3298 [Verbose] > │     | UH0_1                                                                  │

00:00:32 #3299 [Verbose] > │ and UH1 =                                                                    │

00:00:32 #3300 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:32 #3301 [Verbose] > │     | UH1_1                                                                  │

00:00:32 #3302 [Verbose] > │ let rec method3 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, │

00:00:32 #3303 [Verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float  │

00:00:32 #3304 [Verbose] > │ * float * float * float * float * float * float * float * float) =           │

00:00:32 #3305 [Verbose] > │     let v10 : bool = v9 <= 0                                                 │

00:00:32 #3306 [Verbose] > │     if v10 then                                                              │

00:00:32 #3307 [Verbose] > │         struct (v0, v1, v2, v3, v4, v5, v6, v7, v8)                          │

00:00:32 #3308 [Verbose] > │     else                                                                     │

00:00:32 #3309 [Verbose] > │         let v11 : float = v6 * v6                                            │

00:00:32 #3310 [Verbose] > │         let v12 : float = v7 * v7                                            │

00:00:32 #3311 [Verbose] > │         let v13 : float = v11 + v12                                          │

00:00:32 #3312 [Verbose] > │         let v14 : float = v8 * v8                                            │

00:00:32 #3313 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:32 #3314 [Verbose] > │         let v16 : float = sqrt v15                                           │

00:00:32 #3315 [Verbose] > │         let v17 : float = -0.0007902794129829633 * v16                       │

00:00:32 #3316 [Verbose] > │         let v18 : float = v17 * v6                                           │

00:00:32 #3317 [Verbose] > │         let v19 : float = v17 * v7                                           │

00:00:32 #3318 [Verbose] > │         let v20 : float = v17 * v8                                           │

00:00:32 #3319 [Verbose] > │         let v21 : float =  -v1                                               │

00:00:32 #3320 [Verbose] > │         let v22 : float = v21 * 9.80665                                      │

00:00:32 #3321 [Verbose] > │         let v23 : float = v22 * 0.0                                          │

00:00:32 #3322 [Verbose] > │         let v24 : float = v23 + v18                                          │

00:00:32 #3323 [Verbose] > │         let v25 : float = v23 + v19                                          │

00:00:32 #3324 [Verbose] > │         let v26 : float = v22 + v20                                          │

00:00:32 #3325 [Verbose] > │         let v27 : float = v24 / v1                                           │

00:00:32 #3326 [Verbose] > │         let v28 : float = v25 / v1                                           │

00:00:32 #3327 [Verbose] > │         let v29 : float = v26 / v1                                           │

00:00:32 #3328 [Verbose] > │         let v30 : float = 0.01 * v27                                         │

00:00:32 #3329 [Verbose] > │         let v31 : float = 0.01 * v28                                         │

00:00:32 #3330 [Verbose] > │         let v32 : float = 0.01 * v29                                         │

00:00:32 #3331 [Verbose] > │         let v33 : float = v6 + v30                                           │

00:00:32 #3332 [Verbose] > │         let v34 : float = v7 + v31                                           │

00:00:32 #3333 [Verbose] > │         let v35 : float = v8 + v32                                           │

00:00:32 #3334 [Verbose] > │         let v36 : float = v5 + 0.01                                          │

00:00:32 #3335 [Verbose] > │         let v37 : float = 0.01 * v33                                         │

00:00:32 #3336 [Verbose] > │         let v38 : float = 0.01 * v34                                         │

00:00:32 #3337 [Verbose] > │         let v39 : float = 0.01 * v35                                         │

00:00:32 #3338 [Verbose] > │         let v40 : float = v2 + v37                                           │

00:00:32 #3339 [Verbose] > │         let v41 : float = v3 + v38                                           │

00:00:32 #3340 [Verbose] > │         let v42 : float = v4 + v39                                           │

00:00:32 #3341 [Verbose] > │         let v43 : int32 = v9 - 1                                             │

00:00:32 #3342 [Verbose] > │         method3(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43)              │

00:00:32 #3343 [Verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:32 #3344 [Verbose] > │     match v0 with                                                            │

00:00:32 #3345 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:32 #3346 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:32 #3347 [Verbose] > │         method4(v11, v12)                                                    │

00:00:32 #3348 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:32 #3349 [Verbose] > │         v1                                                                   │

00:00:32 #3350 [Verbose] > │ and method2 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 =           │

00:00:32 #3351 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:32 #3352 [Verbose] > │     let v5 : float = 0.145                                                   │

00:00:32 #3353 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:32 #3354 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:32 #3355 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:32 #3356 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:32 #3357 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:32 #3358 [Verbose] > │     let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 :    │

00:00:32 #3359 [Verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method3(v4, v5, │

00:00:32 #3360 [Verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3)                                             │

00:00:32 #3361 [Verbose] > │     let v20 : bool = v15 >= 0.0                                              │

00:00:32 #3362 [Verbose] > │     if v20 then                                                              │

00:00:32 #3363 [Verbose] > │         let v21 : UH0 = UH0_0(v11, v12, v13, v14, v15, v16, v17, v18, v19,   │

00:00:32 #3364 [Verbose] > │ v2)                                                                          │

00:00:32 #3365 [Verbose] > │         let v22 : int32 = v3 + 1                                             │

00:00:32 #3366 [Verbose] > │         method2(v0, v1, v21, v22)                                            │

00:00:32 #3367 [Verbose] > │     else                                                                     │

00:00:32 #3368 [Verbose] > │         let v24 : UH0 = UH0_1                                                │

00:00:32 #3369 [Verbose] > │         method4(v2, v24)                                                     │

00:00:32 #3370 [Verbose] > │ and method5 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:32 #3371 [Verbose] > │     match v0 with                                                            │

00:00:32 #3372 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:32 #3373 [Verbose] > │         let v12 : UH1 = method5(v11, v1)                                     │

00:00:32 #3374 [Verbose] > │         UH1_0(v5, v6, v12)                                                   │

00:00:32 #3375 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:32 #3376 [Verbose] > │         v1                                                                   │

00:00:32 #3377 [Verbose] > │ and method6 (v0 : UH1, v1 : float) : float =                                 │

00:00:32 #3378 [Verbose] > │     match v0 with                                                            │

00:00:32 #3379 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:32 #3380 [Verbose] > │         method6(v4, v2)                                                      │

00:00:32 #3381 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:32 #3382 [Verbose] > │         v1                                                                   │

00:00:32 #3383 [Verbose] > │ and method1 (v0 : float, v1 : float, v2 : float) : struct (float * float) =  │

00:00:32 #3384 [Verbose] > │     let v3 : bool = v0 > 60.0                                                │

00:00:32 #3385 [Verbose] > │     if v3 then                                                               │

00:00:32 #3386 [Verbose] > │         struct (v2, v1)                                                      │

00:00:32 #3387 [Verbose] > │     else                                                                     │

00:00:32 #3388 [Verbose] > │         let v4 : float = v0 * 3.141592653589793                              │

00:00:32 #3389 [Verbose] > │         let v5 : float = v4 / 180.0                                          │

00:00:32 #3390 [Verbose] > │         let v6 : float = cos v5                                              │

00:00:32 #3391 [Verbose] > │         let v7 : float = 45.0 * v6                                           │

00:00:32 #3392 [Verbose] > │         let v8 : float = sin v5                                              │

00:00:32 #3393 [Verbose] > │         let v9 : float = 45.0 * v8                                           │

00:00:32 #3394 [Verbose] > │         let v10 : UH0 = UH0_1                                                │

00:00:32 #3395 [Verbose] > │         let v11 : int32 = 0                                                  │

00:00:32 #3396 [Verbose] > │         let v12 : UH0 = method2(v7, v9, v10, v11)                            │

00:00:32 #3397 [Verbose] > │         let v13 : UH1 = UH1_1                                                │

00:00:32 #3398 [Verbose] > │         let v14 : UH1 = method5(v12, v13)                                    │

00:00:32 #3399 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:32 #3400 [Verbose] > │         let v16 : float = method6(v14, v15)                                  │

00:00:32 #3401 [Verbose] > │         let v17 : float = v0 + 1.0                                           │

00:00:32 #3402 [Verbose] > │         let v18 : bool = v16 > v2                                            │

00:00:32 #3403 [Verbose] > │         let struct (v19 : float, v20 : float) =                              │

00:00:32 #3404 [Verbose] > │             if v18 then                                                      │

00:00:32 #3405 [Verbose] > │                 struct (v16, v0)                                             │

00:00:32 #3406 [Verbose] > │             else                                                             │

00:00:32 #3407 [Verbose] > │                 struct (v2, v1)                                              │

00:00:32 #3408 [Verbose] > │         method1(v17, v20, v19)                                               │

00:00:32 #3409 [Verbose] > │ and method0 () : unit =                                                      │

00:00:32 #3410 [Verbose] > │     let v0 : float = 30.0                                                    │

00:00:32 #3411 [Verbose] > │     let v1 : float = 0.0                                                     │

00:00:32 #3412 [Verbose] > │     let v2 : float = 30.0                                                    │

00:00:32 #3413 [Verbose] > │     let struct (v3 : float, v4 : float) = method1(v0, v2, v1)                │

00:00:32 #3414 [Verbose] > │     let v5 : bool = v3 = 116.77499158246208                                  │

00:00:32 #3415 [Verbose] > │     let v7 : bool =                                                          │

00:00:32 #3416 [Verbose] > │         if v5 then                                                           │

00:00:32 #3417 [Verbose] > │             let v6 : bool = v4 = 41.0                                        │

00:00:32 #3418 [Verbose] > │             v6                                                               │

00:00:32 #3419 [Verbose] > │         else                                                                 │

00:00:32 #3420 [Verbose] > │             false                                                            │

00:00:32 #3421 [Verbose] > │     let v8 : string = $"_equal / actual: %A{struct (v3, v4)} / expected:     │

00:00:32 #3422 [Verbose] > │ %A{struct (116.77499158246208, 41.0)}"                                       │

00:00:32 #3423 [Verbose] > │     let v9 : bool = v7 = false                                               │

00:00:32 #3424 [Verbose] > │     if v9 then                                                               │

00:00:32 #3425 [Verbose] > │         failwith<unit> v8                                                    │

00:00:32 #3426 [Verbose] > │ method0()                                                                    │

00:00:32 #3427 [Verbose] > │                                                                              │

00:00:32 #3428 [Verbose] > │                                                                              │

00:00:32 #3429 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #3430 [Verbose] >

00:00:32 #3431 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:32 #3432 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:32 #3433 [Verbose] > │ ## relativity_ps                                                             │

00:00:32 #3434 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #3435 [Verbose] >

00:00:32 #3436 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:32 #3437 [Verbose] > inl relativity_ps fs (st : particle_state) =

00:00:32 #3438 [Verbose] >     inl f_net = fs |> listm.map (fun f => f st) |> sum_vec

00:00:32 #3439 [Verbose] >     inl c = 299792458

00:00:32 #3440 [Verbose] >     inl u = st.velocity ^/ c

00:00:32 #3441 [Verbose] >     inl acc = sqrt (1 - (u <.> u)) *^ (f_net ^-^ (f_net <.> u) *^ u) ^/ st.mass

00:00:32 #3442 [Verbose] >     d_particle_state {

00:00:32 #3443 [Verbose] >         dmdt = 0

00:00:32 #3444 [Verbose] >         dqdt = 0

00:00:32 #3445 [Verbose] >         dtdt = 1

00:00:32 #3446 [Verbose] >         drdt = st.velocity

00:00:32 #3447 [Verbose] >         dvdt = acc

00:00:32 #3448 [Verbose] >     }

00:00:32 #3449 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0045-4550-4617b6e17196\main.spi

00:00:32 #3450 [Verbose] >

00:00:32 #3451 [Verbose] > ╭─[ 157.97ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #3452 [Verbose] > │ ()                                                                           │

00:00:32 #3453 [Verbose] > │                                                                              │

00:00:32 #3454 [Verbose] > │                                                                              │

00:00:32 #3455 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #3456 [Verbose] >

00:00:32 #3457 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:32 #3458 [Verbose] > // // test

00:00:32 #3459 [Verbose] >

00:00:32 #3460 [Verbose] > inl year = 365.25 * 24 * 60 * 60

00:00:32 #3461 [Verbose] > inl c = 299792458

00:00:32 #3462 [Verbose] > inl ~method = runge_kutta_4 100000

00:00:32 #3463 [Verbose] > inl forces = [[ fun _ => 10 *^ i_hat () ]]

00:00:32 #3464 [Verbose] > inl (particle_state default_particle_state') = default_particle_state ()

00:00:32 #3465 [Verbose] > inl initial_state =

00:00:32 #3466 [Verbose] >     particle_state { default_particle_state' with

00:00:32 #3467 [Verbose] >         mass = 1

00:00:32 #3468 [Verbose] >     }

00:00:32 #3469 [Verbose] >

00:00:32 #3470 [Verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state

00:00:32 #3471 [Verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state

00:00:32 #3472 [Verbose] >

00:00:32 #3473 [Verbose] > inl newton_x, newton_y =

00:00:32 #3474 [Verbose] >     newton_states

00:00:32 #3475 [Verbose] >     >> Some

00:00:32 #3476 [Verbose] >     |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)

00:00:32 #3477 [Verbose] >     |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)

00:00:32 #3478 [Verbose] >     |> listm'.unzip

00:00:32 #3479 [Verbose] >

00:00:32 #3480 [Verbose] > inl _, relativity_y =

00:00:32 #3481 [Verbose] >     relativity_states

00:00:32 #3482 [Verbose] >     >> Some

00:00:32 #3483 [Verbose] >     |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)

00:00:32 #3484 [Verbose] >     |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)

00:00:32 #3485 [Verbose] >     |> listm'.unzip

00:00:32 #3486 [Verbose] >

00:00:32 #3487 [Verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray

00:00:32 #3488 [Verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray

00:00:32 #3489 [Verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray

00:00:32 #3490 [Verbose] >

00:00:32 #3491 [Verbose] > "response to a constant force",

00:00:32 #3492 [Verbose] > "time (years)",

00:00:32 #3493 [Verbose] > "velocity (multiples of c)",

00:00:32 #3494 [Verbose] > ;[[

00:00:32 #3495 [Verbose] >     "newtonian", newton_x, newton_y

00:00:32 #3496 [Verbose] >     "relativistic", newton_x, relativity_y

00:00:32 #3497 [Verbose] > ]]

00:00:32 #3498 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0061-6140-6045170615b3\main.spi

00:00:32 #3499 [Verbose] >

00:00:32 #3500 [Verbose] > ╭─[ 567.33ms - return value ]──────────────────────────────────────────────────╮

00:00:32 #3501 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:32 #3502 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:32 #3503 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:32 #3504 [Verbose] > │ stroke="none"/>                                                              │

00:00:32 #3505 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:32 #3506 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:32 #3507 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:32 #3508 [Verbose] > │ response to a constant force                                                 │

00:00:32 #3509 [Verbose] > │ </text>                                                                      │

00:00:32 #3510 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:32 #3511 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3512 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:32 #3513 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3514 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:32 #3515 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3516 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:32 #3517 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3518 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:32 #3519 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #3520 [Verbose] >

00:00:32 #3521 [Verbose] > ╭─[ 579.85ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #3522 [Verbose] > │ type UH0 =                                                                   │

00:00:32 #3523 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:32 #3524 [Verbose] > │ * float * UH0                                                                │

00:00:32 #3525 [Verbose] > │     | UH0_1                                                                  │

00:00:32 #3526 [Verbose] > │ and UH1 =                                                                    │

00:00:32 #3527 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:32 #3528 [Verbose] > │     | UH1_1                                                                  │

00:00:32 #3529 [Verbose] > │ and UH2 =                                                                    │

00:00:32 #3530 [Verbose] > │     | UH2_0 of float * UH2                                                   │

00:00:32 #3531 [Verbose] > │     | UH2_1                                                                  │

00:00:32 #3532 [Verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float *      │

00:00:32 #3533 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:32 #3534 [Verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3  │

00:00:32 #3535 [Verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 :    │

00:00:32 #3536 [Verbose] > │ float) : struct (float * float * float * float * float * float * float *     │

00:00:32 #3537 [Verbose] > │ float * float) =                                                             │

00:00:32 #3538 [Verbose] > │     let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 :    │

00:00:32 #3539 [Verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1,  │

00:00:32 #3540 [Verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9)                                              │

00:00:32 #3541 [Verbose] > │     let v19 : float = v15 * 50000.0                                          │

00:00:32 #3542 [Verbose] > │     let v20 : float = v6 + v19                                               │

00:00:32 #3543 [Verbose] > │     let v21 : float = 50000.0 * v12                                          │

00:00:32 #3544 [Verbose] > │     let v22 : float = 50000.0 * v13                                          │

00:00:32 #3545 [Verbose] > │     let v23 : float = 50000.0 * v14                                          │

00:00:32 #3546 [Verbose] > │     let v24 : float = v3 + v21                                               │

00:00:32 #3547 [Verbose] > │     let v25 : float = v4 + v22                                               │

00:00:32 #3548 [Verbose] > │     let v26 : float = v5 + v23                                               │

00:00:32 #3549 [Verbose] > │     let v27 : float = 50000.0 * v16                                          │

00:00:32 #3550 [Verbose] > │     let v28 : float = 50000.0 * v17                                          │

00:00:32 #3551 [Verbose] > │     let v29 : float = 50000.0 * v18                                          │

00:00:32 #3552 [Verbose] > │     let v30 : float = v7 + v27                                               │

00:00:32 #3553 [Verbose] > │     let v31 : float = v8 + v28                                               │

00:00:32 #3554 [Verbose] > │     let v32 : float = v9 + v29                                               │

00:00:32 #3555 [Verbose] > │     let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 :    │

00:00:32 #3556 [Verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1,  │

00:00:32 #3557 [Verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32)                                       │

00:00:32 #3558 [Verbose] > │     let v42 : float = v38 * 50000.0                                          │

00:00:32 #3559 [Verbose] > │     let v43 : float = v6 + v42                                               │

00:00:32 #3560 [Verbose] > │     let v44 : float = 50000.0 * v35                                          │

00:00:32 #3561 [Verbose] > │     let v45 : float = 50000.0 * v36                                          │

00:00:32 #3562 [Verbose] > │     let v46 : float = 50000.0 * v37                                          │

00:00:32 #3563 [Verbose] > │     let v47 : float = v3 + v44                                               │

00:00:32 #3564 [Verbose] > │     let v48 : float = v4 + v45                                               │

00:00:32 #3565 [Verbose] > │     let v49 : float = v5 + v46                                               │

00:00:32 #3566 [Verbose] > │     let v50 : float = 50000.0 * v39                                          │

00:00:32 #3567 [Verbose] > │     let v51 : float = 50000.0 * v40                                          │

00:00:32 #3568 [Verbose] > │     let v52 : float = 50000.0 * v41                                          │

00:00:32 #3569 [Verbose] > │     let v53 : float = v7 + v50                                               │

00:00:32 #3570 [Verbose] > │     let v54 : float = v8 + v51                                               │

00:00:32 #3571 [Verbose] > │     let v55 : float = v9 + v52                                               │

00:00:32 #3572 [Verbose] > │     let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 :    │

00:00:32 #3573 [Verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1,  │

00:00:32 #3574 [Verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55)                                       │

00:00:32 #3575 [Verbose] > │     let v65 : float = v61 * 100000.0                                         │

00:00:32 #3576 [Verbose] > │     let v66 : float = v6 + v65                                               │

00:00:32 #3577 [Verbose] > │     let v67 : float = 100000.0 * v58                                         │

00:00:32 #3578 [Verbose] > │     let v68 : float = 100000.0 * v59                                         │

00:00:32 #3579 [Verbose] > │     let v69 : float = 100000.0 * v60                                         │

00:00:32 #3580 [Verbose] > │     let v70 : float = v3 + v67                                               │

00:00:32 #3581 [Verbose] > │     let v71 : float = v4 + v68                                               │

00:00:32 #3582 [Verbose] > │     let v72 : float = v5 + v69                                               │

00:00:32 #3583 [Verbose] > │     let v73 : float = 100000.0 * v62                                         │

00:00:32 #3584 [Verbose] > │     let v74 : float = 100000.0 * v63                                         │

00:00:32 #3585 [Verbose] > │     let v75 : float = 100000.0 * v64                                         │

00:00:32 #3586 [Verbose] > │     let v76 : float = v7 + v73                                               │

00:00:32 #3587 [Verbose] > │     let v77 : float = v8 + v74                                               │

00:00:32 #3588 [Verbose] > │     let v78 : float = v9 + v75                                               │

00:00:32 #3589 [Verbose] > │     let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 :    │

00:00:32 #3590 [Verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1,  │

00:00:32 #3591 [Verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78)                                       │

00:00:32 #3592 [Verbose] > │     let v88 : float = v10 + v33                                              │

00:00:32 #3593 [Verbose] > │     let v89 : float = v11 + v34                                              │

00:00:32 #3594 [Verbose] > │     let v90 : float = v15 + v38                                              │

00:00:32 #3595 [Verbose] > │     let v91 : float = v12 + v35                                              │

00:00:32 #3596 [Verbose] > │     let v92 : float = v13 + v36                                              │

00:00:32 #3597 [Verbose] > │     let v93 : float = v14 + v37                                              │

00:00:32 #3598 [Verbose] > │     let v94 : float = v16 + v39                                              │

00:00:32 #3599 [Verbose] > │     let v95 : float = v17 + v40                                              │

00:00:32 #3600 [Verbose] > │     let v96 : float = v18 + v41                                              │

00:00:32 #3601 [Verbose] > │     let v97 : float = v88 + v33                                              │

00:00:32 #3602 [Verbose] > │     let v98 : float = v89 + v34                                              │

00:00:32 #3603 [Verbose] > │     let v99 : float = v90 + v38                                              │

00:00:32 #3604 [Verbose] > │     let v100 : float = v91 + v35                                             │

00:00:32 #3605 [Verbose] > │     let v101 : float = v92 + v36                                             │

00:00:32 #3606 [Verbose] > │     let v102 : float = v93 + v37                                             │

00:00:32 #3607 [Verbose] > │     let v103 : float = v94 + v39                                             │

00:00:32 #3608 [Verbose] > │     let v104 : float = v95 + v40                                             │

00:00:32 #3609 [Verbose] > │     let v105 : float = v96 + v41                                             │

00:00:32 #3610 [Verbose] > │     let v106 : float = v97 + v56                                             │

00:00:32 #3611 [Verbose] > │     let v107 : float = v98 + v57                                             │

00:00:32 #3612 [Verbose] > │     let v108 : float = v99 + v61                                             │

00:00:32 #3613 [Verbose] > │     let v109 : float = v100 + v58                                            │

00:00:32 #3614 [Verbose] > │     let v110 : float = v101 + v59                                            │

00:00:32 #3615 [Verbose] > │     let v111 : float = v102 + v60                                            │

00:00:32 #3616 [Verbose] > │     let v112 : float = v103 + v62                                            │

00:00:32 #3617 [Verbose] > │     let v113 : float = v104 + v63                                            │

00:00:32 #3618 [Verbose] > │     let v114 : float = v105 + v64                                            │

00:00:32 #3619 [Verbose] > │     let v115 : float = v106 + v56                                            │

00:00:32 #3620 [Verbose] > │     let v116 : float = v107 + v57                                            │

00:00:32 #3621 [Verbose] > │     let v117 : float = v108 + v61                                            │

00:00:32 #3622 [Verbose] > │     let v118 : float = v109 + v58                                            │

00:00:32 #3623 [Verbose] > │     let v119 : float = v110 + v59                                            │

00:00:32 #3624 [Verbose] > │     let v120 : float = v111 + v60                                            │

00:00:32 #3625 [Verbose] > │     let v121 : float = v112 + v62                                            │

00:00:32 #3626 [Verbose] > │     let v122 : float = v113 + v63                                            │

00:00:32 #3627 [Verbose] > │     let v123 : float = v114 + v64                                            │

00:00:32 #3628 [Verbose] > │     let v124 : float = v115 + v79                                            │

00:00:32 #3629 [Verbose] > │     let v125 : float = v116 + v80                                            │

00:00:32 #3630 [Verbose] > │     let v126 : float = v117 + v84                                            │

00:00:32 #3631 [Verbose] > │     let v127 : float = v118 + v81                                            │

00:00:32 #3632 [Verbose] > │     let v128 : float = v119 + v82                                            │

00:00:32 #3633 [Verbose] > │     let v129 : float = v120 + v83                                            │

00:00:32 #3634 [Verbose] > │     let v130 : float = v121 + v85                                            │

00:00:32 #3635 [Verbose] > │     let v131 : float = v122 + v86                                            │

00:00:32 #3636 [Verbose] > │     let v132 : float = v123 + v87                                            │

00:00:32 #3637 [Verbose] > │     let v133 : float = v126 * 16666.666666666668                             │

00:00:32 #3638 [Verbose] > │     let v134 : float = v6 + v133                                             │

00:00:32 #3639 [Verbose] > │     let v135 : float = 16666.666666666668 * v127                             │

00:00:32 #3640 [Verbose] > │     let v136 : float = 16666.666666666668 * v128                             │

00:00:32 #3641 [Verbose] > │     let v137 : float = 16666.666666666668 * v129                             │

00:00:32 #3642 [Verbose] > │     let v138 : float = v3 + v135                                             │

00:00:32 #3643 [Verbose] > │     let v139 : float = v4 + v136                                             │

00:00:32 #3644 [Verbose] > │     let v140 : float = v5 + v137                                             │

00:00:32 #3645 [Verbose] > │     let v141 : float = 16666.666666666668 * v130                             │

00:00:32 #3646 [Verbose] > │     let v142 : float = 16666.666666666668 * v131                             │

00:00:32 #3647 [Verbose] > │     let v143 : float = 16666.666666666668 * v132                             │

00:00:32 #3648 [Verbose] > │     let v144 : float = v7 + v141                                             │

00:00:32 #3649 [Verbose] > │     let v145 : float = v8 + v142                                             │

00:00:32 #3650 [Verbose] > │     let v146 : float = v9 + v143                                             │

00:00:32 #3651 [Verbose] > │     struct (v1, v2, v138, v139, v140, v134, v144, v145, v146)                │

00:00:32 #3652 [Verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │

00:00:32 #3653 [Verbose] > │ * float * float * float) -> struct (float * float * float * float * float *  │

00:00:32 #3654 [Verbose] > │ float * float * float * float))) : (struct (float * float * float * float *  │

00:00:32 #3655 [Verbose] > │ float * float * float * float * float) -> struct (float * float * float *    │

00:00:32 #3656 [Verbose] > │ float * float * float * float * float * float)) =                            │

00:00:32 #3657 [Verbose] > │     closure1(v0)                                                             │

00:00:32 #3658 [Verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:32 #3659 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:32 #3660 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:32 #3661 [Verbose] > │     let v9 : float = 10.0 / v1                                               │

00:00:32 #3662 [Verbose] > │     let v10 : float = 0.0 / v1                                               │

00:00:32 #3663 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v9, v10, v10)                         │

00:00:32 #3664 [Verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:32 #3665 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:32 #3666 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:32 #3667 [Verbose] > │     let v9 : float = v6 / 299792458.0                                        │

00:00:32 #3668 [Verbose] > │     let v10 : float = v7 / 299792458.0                                       │

00:00:32 #3669 [Verbose] > │     let v11 : float = v8 / 299792458.0                                       │

00:00:32 #3670 [Verbose] > │     let v12 : float = v9 * v9                                                │

00:00:32 #3671 [Verbose] > │     let v13 : float = v10 * v10                                              │

00:00:32 #3672 [Verbose] > │     let v14 : float = v12 + v13                                              │

00:00:32 #3673 [Verbose] > │     let v15 : float = v11 * v11                                              │

00:00:32 #3674 [Verbose] > │     let v16 : float = v14 + v15                                              │

00:00:32 #3675 [Verbose] > │     let v17 : float = 1.0 - v16                                              │

00:00:32 #3676 [Verbose] > │     let v18 : float = sqrt v17                                               │

00:00:32 #3677 [Verbose] > │     let v19 : float = 10.0 * v9                                              │

00:00:32 #3678 [Verbose] > │     let v20 : float = 0.0 * v10                                              │

00:00:32 #3679 [Verbose] > │     let v21 : float = v19 + v20                                              │

00:00:32 #3680 [Verbose] > │     let v22 : float = 0.0 * v11                                              │

00:00:32 #3681 [Verbose] > │     let v23 : float = v21 + v22                                              │

00:00:32 #3682 [Verbose] > │     let v24 : float = v23 * v9                                               │

00:00:32 #3683 [Verbose] > │     let v25 : float = v23 * v10                                              │

00:00:32 #3684 [Verbose] > │     let v26 : float = v23 * v11                                              │

00:00:32 #3685 [Verbose] > │     let v27 : float = -1.0 * v24                                             │

00:00:32 #3686 [Verbose] > │     let v28 : float = -1.0 * v25                                             │

00:00:32 #3687 [Verbose] > │     let v29 : float = -1.0 * v26                                             │

00:00:32 #3688 [Verbose] > │     let v30 : float = 10.0 + v27                                             │

00:00:32 #3689 [Verbose] > │     let v31 : float = v18 * v30                                              │

00:00:32 #3690 [Verbose] > │     let v32 : float = v18 * v28                                              │

00:00:32 #3691 [Verbose] > │     let v33 : float = v18 * v29                                              │

00:00:32 #3692 [Verbose] > │     let v34 : float = v31 / v1                                               │

00:00:32 #3693 [Verbose] > │     let v35 : float = v32 / v1                                               │

00:00:32 #3694 [Verbose] > │     let v36 : float = v33 / v1                                               │

00:00:32 #3695 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v34, v35, v36)                        │

00:00:32 #3696 [Verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float *   │

00:00:32 #3697 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:32 #3698 [Verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 :    │

00:00:32 #3699 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 :     │

00:00:32 #3700 [Verbose] > │ int32) : struct (float * float * float * float * float * float * float *     │

00:00:32 #3701 [Verbose] > │ float * float) =                                                             │

00:00:32 #3702 [Verbose] > │     let v11 : bool = v10 <= 0                                                │

00:00:32 #3703 [Verbose] > │     if v11 then                                                              │

00:00:32 #3704 [Verbose] > │         struct (v1, v2, v3, v4, v5, v6, v7, v8, v9)                          │

00:00:32 #3705 [Verbose] > │     else                                                                     │

00:00:32 #3706 [Verbose] > │         let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:32 #3707 [Verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct     │

00:00:32 #3708 [Verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9)                                         │

00:00:32 #3709 [Verbose] > │         let v21 : int32 = v10 - 1                                            │

00:00:32 #3710 [Verbose] > │         method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21)        │

00:00:32 #3711 [Verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:32 #3712 [Verbose] > │     match v0 with                                                            │

00:00:32 #3713 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:32 #3714 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:32 #3715 [Verbose] > │         method3(v11, v12)                                                    │

00:00:32 #3716 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:32 #3717 [Verbose] > │         v1                                                                   │

00:00:32 #3718 [Verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float *   │

00:00:32 #3719 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:32 #3720 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:32 #3721 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:32 #3722 [Verbose] > │     let v4 : float = 1.0                                                     │

00:00:32 #3723 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:32 #3724 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:32 #3725 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:32 #3726 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:32 #3727 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:32 #3728 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:32 #3729 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:32 #3730 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:32 #3731 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:32 #3732 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:32 #3733 [Verbose] > │     let v21 : bool = v17 <= 31557600.0                                       │

00:00:32 #3734 [Verbose] > │     if v21 then                                                              │

00:00:32 #3735 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:32 #3736 [Verbose] > │ v1)                                                                          │

00:00:32 #3737 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:32 #3738 [Verbose] > │         method1(v0, v22, v23)                                                │

00:00:32 #3739 [Verbose] > │     else                                                                     │

00:00:32 #3740 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:32 #3741 [Verbose] > │         method3(v1, v25)                                                     │

00:00:32 #3742 [Verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:32 #3743 [Verbose] > │     match v0 with                                                            │

00:00:32 #3744 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:32 #3745 [Verbose] > │         let v12 : UH1 = method4(v11, v1)                                     │

00:00:32 #3746 [Verbose] > │         let v13 : float = v7 / 31557600.0                                    │

00:00:32 #3747 [Verbose] > │         let v14 : float = v8 / 299792458.0                                   │

00:00:32 #3748 [Verbose] > │         UH1_0(v13, v14, v12)                                                 │

00:00:32 #3749 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:32 #3750 [Verbose] > │         v1                                                                   │

00:00:32 #3751 [Verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) =            │

00:00:32 #3752 [Verbose] > │     match v0 with                                                            │

00:00:32 #3753 [Verbose] > │     | UH1_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:33 #3754 [Verbose] > │         let v6 : UH2 = UH2_0(v3, v1)                                         │

00:00:33 #3755 [Verbose] > │         let v7 : UH2 = UH2_0(v4, v2)                                         │

00:00:33 #3756 [Verbose] > │         method5(v5, v6, v7)                                                  │

00:00:33 #3757 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:33 #3758 [Verbose] > │         struct (v1, v2)                                                      │

00:00:33 #3759 [Verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:33 #3760 [Verbose] > │     match v0 with                                                            │

00:00:33 #3761 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #3762 [Verbose] > │         let v4 : UH2 = UH2_0(v2, v1)                                         │

00:00:33 #3763 [Verbose] > │         method6(v3, v4)                                                      │

00:00:33 #3764 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #3765 [Verbose] > │         v1                                                                   │

00:00:33 #3766 [Verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float *   │

00:00:33 #3767 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:33 #3768 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:33 #3769 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:33 #3770 [Verbose] > │     let v4 : float = 1.0                                                     │

00:00:33 #3771 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:33 #3772 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:33 #3773 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:33 #3774 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:33 #3775 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:33 #3776 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:33 #3777 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:33 #3778 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:33 #3779 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:33 #3780 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:33 #3781 [Verbose] > │     let v21 : bool = v17 <= 31557600.0                                       │

00:00:33 #3782 [Verbose] > │     if v21 then                                                              │

00:00:33 #3783 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:33 #3784 [Verbose] > │ v1)                                                                          │

00:00:33 #3785 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:33 #3786 [Verbose] > │         method7(v0, v22, v23)                                                │

00:00:33 #3787 [Verbose] > │     else                                                                     │

00:00:33 #3788 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:33 #3789 [Verbose] > │         method3(v1, v25)                                                     │

00:00:33 #3790 [Verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:33 #3791 [Verbose] > │     match v0 with                                                            │

00:00:33 #3792 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:33 #3793 [Verbose] > │         let v12 : UH1 = method8(v11, v1)                                     │

00:00:33 #3794 [Verbose] > │         let v13 : float = v7 / 31557600.0                                    │

00:00:33 #3795 [Verbose] > │         let v14 : float = v8 / 299792458.0                                   │

00:00:33 #3796 [Verbose] > │         UH1_0(v13, v14, v12)                                                 │

00:00:33 #3797 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:33 #3798 [Verbose] > │         v1                                                                   │

00:00:33 #3799 [Verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:33 #3800 [Verbose] > │     match v0 with                                                            │

00:00:33 #3801 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #3802 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:33 #3803 [Verbose] > │         method10(v3, v4)                                                     │

00:00:33 #3804 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #3805 [Verbose] > │         v1                                                                   │

00:00:33 #3806 [Verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 =               │

00:00:33 #3807 [Verbose] > │     match v1 with                                                            │

00:00:33 #3808 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:33 #3809 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:33 #3810 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:33 #3811 [Verbose] > │         method11(v0, v4, v5)                                                 │

00:00:33 #3812 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #3813 [Verbose] > │         v2                                                                   │

00:00:33 #3814 [Verbose] > │ and method9 (v0 : UH2) : (float []) =                                        │

00:00:33 #3815 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:33 #3816 [Verbose] > │     let v2 : int32 = method10(v0, v1)                                        │

00:00:33 #3817 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:33 #3818 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:33 #3819 [Verbose] > │     let v5 : int32 = method11(v3, v0, v4)                                    │

00:00:33 #3820 [Verbose] > │     v3                                                                       │

00:00:33 #3821 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:33 #3822 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:33 #3823 [Verbose] > │     let v0 : ((struct (float * float * float * float * float * float * float │

00:00:33 #3824 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #3825 [Verbose] > │ float * float * float)) -> (struct (float * float * float * float * float *  │

00:00:33 #3826 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:33 #3827 [Verbose] > │ float * float * float * float * float))) = closure0()                        │

00:00:33 #3828 [Verbose] > │     let v1 : (struct (float * float * float * float * float * float * float  │

00:00:33 #3829 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #3830 [Verbose] > │ float * float * float)) = closure2()                                         │

00:00:33 #3831 [Verbose] > │     let v2 : (struct (float * float * float * float * float * float * float  │

00:00:33 #3832 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #3833 [Verbose] > │ float * float * float)) = v0 v1                                              │

00:00:33 #3834 [Verbose] > │     let v3 : (struct (float * float * float * float * float * float * float  │

00:00:33 #3835 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #3836 [Verbose] > │ float * float * float)) = closure3()                                         │

00:00:33 #3837 [Verbose] > │     let v4 : (struct (float * float * float * float * float * float * float  │

00:00:33 #3838 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #3839 [Verbose] > │ float * float * float)) = v0 v3                                              │

00:00:33 #3840 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:33 #3841 [Verbose] > │     let v6 : int32 = 0                                                       │

00:00:33 #3842 [Verbose] > │     let v7 : UH0 = method1(v2, v5, v6)                                       │

00:00:33 #3843 [Verbose] > │     let v8 : UH1 = UH1_1                                                     │

00:00:33 #3844 [Verbose] > │     let v9 : UH1 = method4(v7, v8)                                           │

00:00:33 #3845 [Verbose] > │     let v10 : UH2 = UH2_1                                                    │

00:00:33 #3846 [Verbose] > │     let v11 : UH2 = UH2_1                                                    │

00:00:33 #3847 [Verbose] > │     let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11)                │

00:00:33 #3848 [Verbose] > │     let v14 : UH2 = UH2_1                                                    │

00:00:33 #3849 [Verbose] > │     let v15 : UH2 = method6(v12, v14)                                        │

00:00:33 #3850 [Verbose] > │     let v16 : UH2 = UH2_1                                                    │

00:00:33 #3851 [Verbose] > │     let v17 : UH2 = method6(v13, v16)                                        │

00:00:33 #3852 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:33 #3853 [Verbose] > │     let v19 : int32 = 0                                                      │

00:00:33 #3854 [Verbose] > │     let v20 : UH0 = method7(v4, v18, v19)                                    │

00:00:33 #3855 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:33 #3856 [Verbose] > │     let v22 : UH1 = method8(v20, v21)                                        │

00:00:33 #3857 [Verbose] > │     let v23 : UH2 = UH2_1                                                    │

00:00:33 #3858 [Verbose] > │     let v24 : UH2 = UH2_1                                                    │

00:00:33 #3859 [Verbose] > │     let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24)               │

00:00:33 #3860 [Verbose] > │     let v27 : UH2 = UH2_1                                                    │

00:00:33 #3861 [Verbose] > │     let v28 : UH2 = method6(v25, v27)                                        │

00:00:33 #3862 [Verbose] > │     let v29 : UH2 = UH2_1                                                    │

00:00:33 #3863 [Verbose] > │     let v30 : UH2 = method6(v26, v29)                                        │

00:00:33 #3864 [Verbose] > │     let v31 : (float []) = method9(v15)                                      │

00:00:33 #3865 [Verbose] > │     let v32 : (float []) = method9(v17)                                      │

00:00:33 #3866 [Verbose] > │     let v33 : (float []) = method9(v30)                                      │

00:00:33 #3867 [Verbose] > │     let v34 : string = "newtonian"                                           │

00:00:33 #3868 [Verbose] > │     let v35 : string = "relativistic"                                        │

00:00:33 #3869 [Verbose] > │     let v36 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:33 #3870 [Verbose] > │ (v34, v31, v32); struct (v35, v31, v33)|]                                    │

00:00:33 #3871 [Verbose] > │     let v37 : string = "response to a constant force"                        │

00:00:33 #3872 [Verbose] > │     let v38 : string = "time (years)"                                        │

00:00:33 #3873 [Verbose] > │     let v39 : string = "velocity (multiples of c)"                           │

00:00:33 #3874 [Verbose] > │     struct (v37, v38, v39, v36)                                              │

00:00:33 #3875 [Verbose] > │ method0()                                                                    │

00:00:33 #3876 [Verbose] > │                                                                              │

00:00:33 #3877 [Verbose] > │                                                                              │

00:00:33 #3878 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #3879 [Verbose] >

00:00:33 #3880 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:33 #3881 [Verbose] > inl uniform_lorentz_force v_e v_b (st : particle_state) =

00:00:33 #3882 [Verbose] >     st.charge *^ (v_e ^+^ st.velocity >< v_b)

00:00:33 #3883 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0131-3159-32fe99cfdb17\main.spi

00:00:33 #3884 [Verbose] >

00:00:33 #3885 [Verbose] > ╭─[ 170.14ms - stdout ]────────────────────────────────────────────────────────╮

00:00:33 #3886 [Verbose] > │ ()                                                                           │

00:00:33 #3887 [Verbose] > │                                                                              │

00:00:33 #3888 [Verbose] > │                                                                              │

00:00:33 #3889 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #3890 [Verbose] >

00:00:33 #3891 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:33 #3892 [Verbose] > // // test

00:00:33 #3893 [Verbose] >

00:00:33 #3894 [Verbose] > inl c : f64 = 299792458

00:00:33 #3895 [Verbose] > inl ~method = runge_kutta_4 0.000000001

00:00:33 #3896 [Verbose] > inl forces = [[ uniform_lorentz_force (zero_vec ()) (k_hat ()) ]]

00:00:33 #3897 [Verbose] > inl (particle_state default_particle_state') = default_particle_state ()

00:00:33 #3898 [Verbose] > inl initial_state =

00:00:33 #3899 [Verbose] >     particle_state { default_particle_state' with

00:00:33 #3900 [Verbose] >         mass = 0.000000000000000000000000001672621898

00:00:33 #3901 [Verbose] >         charge = 0.0000000000000000001602176621

00:00:33 #3902 [Verbose] >         velocity = 0.8 *^ (c *^ j_hat ())

00:00:33 #3903 [Verbose] >     }

00:00:33 #3904 [Verbose] >

00:00:33 #3905 [Verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state

00:00:33 #3906 [Verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state

00:00:33 #3907 [Verbose] >

00:00:33 #3908 [Verbose] > inl newton_x, newton_y =

00:00:33 #3909 [Verbose] >     newton_states

00:00:33 #3910 [Verbose] >     >> Some

00:00:33 #3911 [Verbose] >     |> seq.take_while_ (fun (particle_state st) i => i < 100i32)

00:00:33 #3912 [Verbose] >     |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)

00:00:33 #3913 [Verbose] >     |> listm'.unzip

00:00:33 #3914 [Verbose] >

00:00:33 #3915 [Verbose] > inl relativity_x, relativity_y =

00:00:33 #3916 [Verbose] >     relativity_states

00:00:33 #3917 [Verbose] >     >> Some

00:00:33 #3918 [Verbose] >     |> seq.take_while_ (fun (particle_state st) i => i < 165i32)

00:00:33 #3919 [Verbose] >     |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)

00:00:33 #3920 [Verbose] >     |> listm'.unzip

00:00:33 #3921 [Verbose] >

00:00:33 #3922 [Verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray

00:00:33 #3923 [Verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray

00:00:33 #3924 [Verbose] >

00:00:33 #3925 [Verbose] > inl relativity_x : a i32 _ = relativity_x |> listm.toArray

00:00:33 #3926 [Verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray

00:00:33 #3927 [Verbose] >

00:00:33 #3928 [Verbose] > "proton in a 1-t magnetic field",

00:00:33 #3929 [Verbose] > "x (m)",

00:00:33 #3930 [Verbose] > "y (m)",

00:00:33 #3931 [Verbose] > ;[[

00:00:33 #3932 [Verbose] >     "newtonian", newton_x, newton_y

00:00:33 #3933 [Verbose] >     "relativistic", relativity_x, relativity_y

00:00:33 #3934 [Verbose] > ]]

00:00:33 #3935 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0148-4883-48c437b06b14\main.spi

00:00:33 #3936 [Verbose] >

00:00:33 #3937 [Verbose] > ╭─[ 490.51ms - return value ]──────────────────────────────────────────────────╮

00:00:33 #3938 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:33 #3939 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:33 #3940 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:33 #3941 [Verbose] > │ stroke="none"/>                                                              │

00:00:33 #3942 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:33 #3943 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:33 #3944 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:33 #3945 [Verbose] > │ proton in a 1-t magnetic field                                               │

00:00:33 #3946 [Verbose] > │ </text>                                                                      │

00:00:33 #3947 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="58" y1="424" x2="58" │

00:00:33 #3948 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #3949 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:33 #3950 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #3951 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="81" y1="424" x2="81" │

00:00:33 #3952 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #3953 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="93" y1="424" x2="93" │

00:00:33 #3954 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #3955 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x...                     │

00:00:33 #3956 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #3957 [Verbose] >

00:00:33 #3958 [Verbose] > ╭─[ 514.27ms - stdout ]────────────────────────────────────────────────────────╮

00:00:33 #3959 [Verbose] > │ type UH0 =                                                                   │

00:00:33 #3960 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:33 #3961 [Verbose] > │ * float * UH0                                                                │

00:00:33 #3962 [Verbose] > │     | UH0_1                                                                  │

00:00:33 #3963 [Verbose] > │ and UH1 =                                                                    │

00:00:33 #3964 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:33 #3965 [Verbose] > │     | UH1_1                                                                  │

00:00:33 #3966 [Verbose] > │ and UH2 =                                                                    │

00:00:33 #3967 [Verbose] > │     | UH2_0 of float * UH2                                                   │

00:00:33 #3968 [Verbose] > │     | UH2_1                                                                  │

00:00:33 #3969 [Verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float *      │

00:00:33 #3970 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:33 #3971 [Verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3  │

00:00:33 #3972 [Verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 :    │

00:00:33 #3973 [Verbose] > │ float) : struct (float * float * float * float * float * float * float *     │

00:00:33 #3974 [Verbose] > │ float * float) =                                                             │

00:00:33 #3975 [Verbose] > │     let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 :    │

00:00:33 #3976 [Verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1,  │

00:00:33 #3977 [Verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9)                                              │

00:00:33 #3978 [Verbose] > │     let v19 : float = v15 * 5E-10                                            │

00:00:33 #3979 [Verbose] > │     let v20 : float = v6 + v19                                               │

00:00:33 #3980 [Verbose] > │     let v21 : float = 5E-10 * v12                                            │

00:00:33 #3981 [Verbose] > │     let v22 : float = 5E-10 * v13                                            │

00:00:33 #3982 [Verbose] > │     let v23 : float = 5E-10 * v14                                            │

00:00:33 #3983 [Verbose] > │     let v24 : float = v3 + v21                                               │

00:00:33 #3984 [Verbose] > │     let v25 : float = v4 + v22                                               │

00:00:33 #3985 [Verbose] > │     let v26 : float = v5 + v23                                               │

00:00:33 #3986 [Verbose] > │     let v27 : float = 5E-10 * v16                                            │

00:00:33 #3987 [Verbose] > │     let v28 : float = 5E-10 * v17                                            │

00:00:33 #3988 [Verbose] > │     let v29 : float = 5E-10 * v18                                            │

00:00:33 #3989 [Verbose] > │     let v30 : float = v7 + v27                                               │

00:00:33 #3990 [Verbose] > │     let v31 : float = v8 + v28                                               │

00:00:33 #3991 [Verbose] > │     let v32 : float = v9 + v29                                               │

00:00:33 #3992 [Verbose] > │     let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 :    │

00:00:33 #3993 [Verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1,  │

00:00:33 #3994 [Verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32)                                       │

00:00:33 #3995 [Verbose] > │     let v42 : float = v38 * 5E-10                                            │

00:00:33 #3996 [Verbose] > │     let v43 : float = v6 + v42                                               │

00:00:33 #3997 [Verbose] > │     let v44 : float = 5E-10 * v35                                            │

00:00:33 #3998 [Verbose] > │     let v45 : float = 5E-10 * v36                                            │

00:00:33 #3999 [Verbose] > │     let v46 : float = 5E-10 * v37                                            │

00:00:33 #4000 [Verbose] > │     let v47 : float = v3 + v44                                               │

00:00:33 #4001 [Verbose] > │     let v48 : float = v4 + v45                                               │

00:00:33 #4002 [Verbose] > │     let v49 : float = v5 + v46                                               │

00:00:33 #4003 [Verbose] > │     let v50 : float = 5E-10 * v39                                            │

00:00:33 #4004 [Verbose] > │     let v51 : float = 5E-10 * v40                                            │

00:00:33 #4005 [Verbose] > │     let v52 : float = 5E-10 * v41                                            │

00:00:33 #4006 [Verbose] > │     let v53 : float = v7 + v50                                               │

00:00:33 #4007 [Verbose] > │     let v54 : float = v8 + v51                                               │

00:00:33 #4008 [Verbose] > │     let v55 : float = v9 + v52                                               │

00:00:33 #4009 [Verbose] > │     let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 :    │

00:00:33 #4010 [Verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1,  │

00:00:33 #4011 [Verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55)                                       │

00:00:33 #4012 [Verbose] > │     let v65 : float = v61 * 1E-09                                            │

00:00:33 #4013 [Verbose] > │     let v66 : float = v6 + v65                                               │

00:00:33 #4014 [Verbose] > │     let v67 : float = 1E-09 * v58                                            │

00:00:33 #4015 [Verbose] > │     let v68 : float = 1E-09 * v59                                            │

00:00:33 #4016 [Verbose] > │     let v69 : float = 1E-09 * v60                                            │

00:00:33 #4017 [Verbose] > │     let v70 : float = v3 + v67                                               │

00:00:33 #4018 [Verbose] > │     let v71 : float = v4 + v68                                               │

00:00:33 #4019 [Verbose] > │     let v72 : float = v5 + v69                                               │

00:00:33 #4020 [Verbose] > │     let v73 : float = 1E-09 * v62                                            │

00:00:33 #4021 [Verbose] > │     let v74 : float = 1E-09 * v63                                            │

00:00:33 #4022 [Verbose] > │     let v75 : float = 1E-09 * v64                                            │

00:00:33 #4023 [Verbose] > │     let v76 : float = v7 + v73                                               │

00:00:33 #4024 [Verbose] > │     let v77 : float = v8 + v74                                               │

00:00:33 #4025 [Verbose] > │     let v78 : float = v9 + v75                                               │

00:00:33 #4026 [Verbose] > │     let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 :    │

00:00:33 #4027 [Verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1,  │

00:00:33 #4028 [Verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78)                                       │

00:00:33 #4029 [Verbose] > │     let v88 : float = v10 + v33                                              │

00:00:33 #4030 [Verbose] > │     let v89 : float = v11 + v34                                              │

00:00:33 #4031 [Verbose] > │     let v90 : float = v15 + v38                                              │

00:00:33 #4032 [Verbose] > │     let v91 : float = v12 + v35                                              │

00:00:33 #4033 [Verbose] > │     let v92 : float = v13 + v36                                              │

00:00:33 #4034 [Verbose] > │     let v93 : float = v14 + v37                                              │

00:00:33 #4035 [Verbose] > │     let v94 : float = v16 + v39                                              │

00:00:33 #4036 [Verbose] > │     let v95 : float = v17 + v40                                              │

00:00:33 #4037 [Verbose] > │     let v96 : float = v18 + v41                                              │

00:00:33 #4038 [Verbose] > │     let v97 : float = v88 + v33                                              │

00:00:33 #4039 [Verbose] > │     let v98 : float = v89 + v34                                              │

00:00:33 #4040 [Verbose] > │     let v99 : float = v90 + v38                                              │

00:00:33 #4041 [Verbose] > │     let v100 : float = v91 + v35                                             │

00:00:33 #4042 [Verbose] > │     let v101 : float = v92 + v36                                             │

00:00:33 #4043 [Verbose] > │     let v102 : float = v93 + v37                                             │

00:00:33 #4044 [Verbose] > │     let v103 : float = v94 + v39                                             │

00:00:33 #4045 [Verbose] > │     let v104 : float = v95 + v40                                             │

00:00:33 #4046 [Verbose] > │     let v105 : float = v96 + v41                                             │

00:00:33 #4047 [Verbose] > │     let v106 : float = v97 + v56                                             │

00:00:33 #4048 [Verbose] > │     let v107 : float = v98 + v57                                             │

00:00:33 #4049 [Verbose] > │     let v108 : float = v99 + v61                                             │

00:00:33 #4050 [Verbose] > │     let v109 : float = v100 + v58                                            │

00:00:33 #4051 [Verbose] > │     let v110 : float = v101 + v59                                            │

00:00:33 #4052 [Verbose] > │     let v111 : float = v102 + v60                                            │

00:00:33 #4053 [Verbose] > │     let v112 : float = v103 + v62                                            │

00:00:33 #4054 [Verbose] > │     let v113 : float = v104 + v63                                            │

00:00:33 #4055 [Verbose] > │     let v114 : float = v105 + v64                                            │

00:00:33 #4056 [Verbose] > │     let v115 : float = v106 + v56                                            │

00:00:33 #4057 [Verbose] > │     let v116 : float = v107 + v57                                            │

00:00:33 #4058 [Verbose] > │     let v117 : float = v108 + v61                                            │

00:00:33 #4059 [Verbose] > │     let v118 : float = v109 + v58                                            │

00:00:33 #4060 [Verbose] > │     let v119 : float = v110 + v59                                            │

00:00:33 #4061 [Verbose] > │     let v120 : float = v111 + v60                                            │

00:00:33 #4062 [Verbose] > │     let v121 : float = v112 + v62                                            │

00:00:33 #4063 [Verbose] > │     let v122 : float = v113 + v63                                            │

00:00:33 #4064 [Verbose] > │     let v123 : float = v114 + v64                                            │

00:00:33 #4065 [Verbose] > │     let v124 : float = v115 + v79                                            │

00:00:33 #4066 [Verbose] > │     let v125 : float = v116 + v80                                            │

00:00:33 #4067 [Verbose] > │     let v126 : float = v117 + v84                                            │

00:00:33 #4068 [Verbose] > │     let v127 : float = v118 + v81                                            │

00:00:33 #4069 [Verbose] > │     let v128 : float = v119 + v82                                            │

00:00:33 #4070 [Verbose] > │     let v129 : float = v120 + v83                                            │

00:00:33 #4071 [Verbose] > │     let v130 : float = v121 + v85                                            │

00:00:33 #4072 [Verbose] > │     let v131 : float = v122 + v86                                            │

00:00:33 #4073 [Verbose] > │     let v132 : float = v123 + v87                                            │

00:00:33 #4074 [Verbose] > │     let v133 : float = v126 * 1.6666666666666669E-10                         │

00:00:33 #4075 [Verbose] > │     let v134 : float = v6 + v133                                             │

00:00:33 #4076 [Verbose] > │     let v135 : float = 1.6666666666666669E-10 * v127                         │

00:00:33 #4077 [Verbose] > │     let v136 : float = 1.6666666666666669E-10 * v128                         │

00:00:33 #4078 [Verbose] > │     let v137 : float = 1.6666666666666669E-10 * v129                         │

00:00:33 #4079 [Verbose] > │     let v138 : float = v3 + v135                                             │

00:00:33 #4080 [Verbose] > │     let v139 : float = v4 + v136                                             │

00:00:33 #4081 [Verbose] > │     let v140 : float = v5 + v137                                             │

00:00:33 #4082 [Verbose] > │     let v141 : float = 1.6666666666666669E-10 * v130                         │

00:00:33 #4083 [Verbose] > │     let v142 : float = 1.6666666666666669E-10 * v131                         │

00:00:33 #4084 [Verbose] > │     let v143 : float = 1.6666666666666669E-10 * v132                         │

00:00:33 #4085 [Verbose] > │     let v144 : float = v7 + v141                                             │

00:00:33 #4086 [Verbose] > │     let v145 : float = v8 + v142                                             │

00:00:33 #4087 [Verbose] > │     let v146 : float = v9 + v143                                             │

00:00:33 #4088 [Verbose] > │     struct (v1, v2, v138, v139, v140, v134, v144, v145, v146)                │

00:00:33 #4089 [Verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │

00:00:33 #4090 [Verbose] > │ * float * float * float) -> struct (float * float * float * float * float *  │

00:00:33 #4091 [Verbose] > │ float * float * float * float))) : (struct (float * float * float * float *  │

00:00:33 #4092 [Verbose] > │ float * float * float * float * float) -> struct (float * float * float *    │

00:00:33 #4093 [Verbose] > │ float * float * float * float * float * float)) =                            │

00:00:33 #4094 [Verbose] > │     closure1(v0)                                                             │

00:00:33 #4095 [Verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:33 #4096 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:33 #4097 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:33 #4098 [Verbose] > │     let v9 : float = v8 * 0.0                                                │

00:00:33 #4099 [Verbose] > │     let v10 : float = v7 - v9                                                │

00:00:33 #4100 [Verbose] > │     let v11 : float = v9 - v6                                                │

00:00:33 #4101 [Verbose] > │     let v12 : float = v6 * 0.0                                               │

00:00:33 #4102 [Verbose] > │     let v13 : float = v7 * 0.0                                               │

00:00:33 #4103 [Verbose] > │     let v14 : float = v12 - v13                                              │

00:00:33 #4104 [Verbose] > │     let v15 : float = v0 * v10                                               │

00:00:33 #4105 [Verbose] > │     let v16 : float = v0 * v11                                               │

00:00:33 #4106 [Verbose] > │     let v17 : float = v0 * v14                                               │

00:00:33 #4107 [Verbose] > │     let v18 : float = v15 / v1                                               │

00:00:33 #4108 [Verbose] > │     let v19 : float = v16 / v1                                               │

00:00:33 #4109 [Verbose] > │     let v20 : float = v17 / v1                                               │

00:00:33 #4110 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v18, v19, v20)                        │

00:00:33 #4111 [Verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:33 #4112 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:33 #4113 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:33 #4114 [Verbose] > │     let v9 : float = v8 * 0.0                                                │

00:00:33 #4115 [Verbose] > │     let v10 : float = v7 - v9                                                │

00:00:33 #4116 [Verbose] > │     let v11 : float = v9 - v6                                                │

00:00:33 #4117 [Verbose] > │     let v12 : float = v6 * 0.0                                               │

00:00:33 #4118 [Verbose] > │     let v13 : float = v7 * 0.0                                               │

00:00:33 #4119 [Verbose] > │     let v14 : float = v12 - v13                                              │

00:00:33 #4120 [Verbose] > │     let v15 : float = v0 * v10                                               │

00:00:33 #4121 [Verbose] > │     let v16 : float = v0 * v11                                               │

00:00:33 #4122 [Verbose] > │     let v17 : float = v0 * v14                                               │

00:00:33 #4123 [Verbose] > │     let v18 : float = v6 / 299792458.0                                       │

00:00:33 #4124 [Verbose] > │     let v19 : float = v7 / 299792458.0                                       │

00:00:33 #4125 [Verbose] > │     let v20 : float = v8 / 299792458.0                                       │

00:00:33 #4126 [Verbose] > │     let v21 : float = v18 * v18                                              │

00:00:33 #4127 [Verbose] > │     let v22 : float = v19 * v19                                              │

00:00:33 #4128 [Verbose] > │     let v23 : float = v21 + v22                                              │

00:00:33 #4129 [Verbose] > │     let v24 : float = v20 * v20                                              │

00:00:33 #4130 [Verbose] > │     let v25 : float = v23 + v24                                              │

00:00:33 #4131 [Verbose] > │     let v26 : float = 1.0 - v25                                              │

00:00:33 #4132 [Verbose] > │     let v27 : float = sqrt v26                                               │

00:00:33 #4133 [Verbose] > │     let v28 : float = v15 * v18                                              │

00:00:33 #4134 [Verbose] > │     let v29 : float = v16 * v19                                              │

00:00:33 #4135 [Verbose] > │     let v30 : float = v28 + v29                                              │

00:00:33 #4136 [Verbose] > │     let v31 : float = v17 * v20                                              │

00:00:33 #4137 [Verbose] > │     let v32 : float = v30 + v31                                              │

00:00:33 #4138 [Verbose] > │     let v33 : float = v32 * v18                                              │

00:00:33 #4139 [Verbose] > │     let v34 : float = v32 * v19                                              │

00:00:33 #4140 [Verbose] > │     let v35 : float = v32 * v20                                              │

00:00:33 #4141 [Verbose] > │     let v36 : float = -1.0 * v33                                             │

00:00:33 #4142 [Verbose] > │     let v37 : float = -1.0 * v34                                             │

00:00:33 #4143 [Verbose] > │     let v38 : float = -1.0 * v35                                             │

00:00:33 #4144 [Verbose] > │     let v39 : float = v15 + v36                                              │

00:00:33 #4145 [Verbose] > │     let v40 : float = v16 + v37                                              │

00:00:33 #4146 [Verbose] > │     let v41 : float = v17 + v38                                              │

00:00:33 #4147 [Verbose] > │     let v42 : float = v27 * v39                                              │

00:00:33 #4148 [Verbose] > │     let v43 : float = v27 * v40                                              │

00:00:33 #4149 [Verbose] > │     let v44 : float = v27 * v41                                              │

00:00:33 #4150 [Verbose] > │     let v45 : float = v42 / v1                                               │

00:00:33 #4151 [Verbose] > │     let v46 : float = v43 / v1                                               │

00:00:33 #4152 [Verbose] > │     let v47 : float = v44 / v1                                               │

00:00:33 #4153 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v45, v46, v47)                        │

00:00:33 #4154 [Verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float *   │

00:00:33 #4155 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:33 #4156 [Verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 :    │

00:00:33 #4157 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 :     │

00:00:33 #4158 [Verbose] > │ int32) : struct (float * float * float * float * float * float * float *     │

00:00:33 #4159 [Verbose] > │ float * float) =                                                             │

00:00:33 #4160 [Verbose] > │     let v11 : bool = v10 <= 0                                                │

00:00:33 #4161 [Verbose] > │     if v11 then                                                              │

00:00:33 #4162 [Verbose] > │         struct (v1, v2, v3, v4, v5, v6, v7, v8, v9)                          │

00:00:33 #4163 [Verbose] > │     else                                                                     │

00:00:33 #4164 [Verbose] > │         let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:33 #4165 [Verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct     │

00:00:33 #4166 [Verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9)                                         │

00:00:33 #4167 [Verbose] > │         let v21 : int32 = v10 - 1                                            │

00:00:33 #4168 [Verbose] > │         method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21)        │

00:00:33 #4169 [Verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:33 #4170 [Verbose] > │     match v0 with                                                            │

00:00:33 #4171 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:33 #4172 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:33 #4173 [Verbose] > │         method3(v11, v12)                                                    │

00:00:33 #4174 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:33 #4175 [Verbose] > │         v1                                                                   │

00:00:33 #4176 [Verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float *   │

00:00:33 #4177 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:33 #4178 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:33 #4179 [Verbose] > │     let v3 : float = 1.602176621E-19                                         │

00:00:33 #4180 [Verbose] > │     let v4 : float = 1.672621898E-27                                         │

00:00:33 #4181 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:33 #4182 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:33 #4183 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:33 #4184 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:33 #4185 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:33 #4186 [Verbose] > │     let v10 : float = 239833966.4                                            │

00:00:33 #4187 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:33 #4188 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:33 #4189 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:33 #4190 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:33 #4191 [Verbose] > │     let v21 : bool = v2 < 100                                                │

00:00:33 #4192 [Verbose] > │     if v21 then                                                              │

00:00:33 #4193 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:33 #4194 [Verbose] > │ v1)                                                                          │

00:00:33 #4195 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:33 #4196 [Verbose] > │         method1(v0, v22, v23)                                                │

00:00:33 #4197 [Verbose] > │     else                                                                     │

00:00:33 #4198 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:33 #4199 [Verbose] > │         method3(v1, v25)                                                     │

00:00:33 #4200 [Verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:33 #4201 [Verbose] > │     match v0 with                                                            │

00:00:33 #4202 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:33 #4203 [Verbose] > │         let v12 : UH1 = method4(v11, v1)                                     │

00:00:33 #4204 [Verbose] > │         UH1_0(v4, v5, v12)                                                   │

00:00:33 #4205 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:33 #4206 [Verbose] > │         v1                                                                   │

00:00:33 #4207 [Verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) =            │

00:00:33 #4208 [Verbose] > │     match v0 with                                                            │

00:00:33 #4209 [Verbose] > │     | UH1_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:33 #4210 [Verbose] > │         let v6 : UH2 = UH2_0(v3, v1)                                         │

00:00:33 #4211 [Verbose] > │         let v7 : UH2 = UH2_0(v4, v2)                                         │

00:00:33 #4212 [Verbose] > │         method5(v5, v6, v7)                                                  │

00:00:33 #4213 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:33 #4214 [Verbose] > │         struct (v1, v2)                                                      │

00:00:33 #4215 [Verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:33 #4216 [Verbose] > │     match v0 with                                                            │

00:00:33 #4217 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #4218 [Verbose] > │         let v4 : UH2 = UH2_0(v2, v1)                                         │

00:00:33 #4219 [Verbose] > │         method6(v3, v4)                                                      │

00:00:33 #4220 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #4221 [Verbose] > │         v1                                                                   │

00:00:33 #4222 [Verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float *   │

00:00:33 #4223 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:33 #4224 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:33 #4225 [Verbose] > │     let v3 : float = 1.602176621E-19                                         │

00:00:33 #4226 [Verbose] > │     let v4 : float = 1.672621898E-27                                         │

00:00:33 #4227 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:33 #4228 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:33 #4229 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:33 #4230 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:33 #4231 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:33 #4232 [Verbose] > │     let v10 : float = 239833966.4                                            │

00:00:33 #4233 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:33 #4234 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:33 #4235 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:33 #4236 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:33 #4237 [Verbose] > │     let v21 : bool = v2 < 165                                                │

00:00:33 #4238 [Verbose] > │     if v21 then                                                              │

00:00:33 #4239 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:33 #4240 [Verbose] > │ v1)                                                                          │

00:00:33 #4241 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:33 #4242 [Verbose] > │         method7(v0, v22, v23)                                                │

00:00:33 #4243 [Verbose] > │     else                                                                     │

00:00:33 #4244 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:33 #4245 [Verbose] > │         method3(v1, v25)                                                     │

00:00:33 #4246 [Verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:33 #4247 [Verbose] > │     match v0 with                                                            │

00:00:33 #4248 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:33 #4249 [Verbose] > │         let v12 : UH1 = method8(v11, v1)                                     │

00:00:33 #4250 [Verbose] > │         UH1_0(v4, v5, v12)                                                   │

00:00:33 #4251 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:33 #4252 [Verbose] > │         v1                                                                   │

00:00:33 #4253 [Verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:33 #4254 [Verbose] > │     match v0 with                                                            │

00:00:33 #4255 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #4256 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:33 #4257 [Verbose] > │         method10(v3, v4)                                                     │

00:00:33 #4258 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #4259 [Verbose] > │         v1                                                                   │

00:00:33 #4260 [Verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 =               │

00:00:33 #4261 [Verbose] > │     match v1 with                                                            │

00:00:33 #4262 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:33 #4263 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:33 #4264 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:33 #4265 [Verbose] > │         method11(v0, v4, v5)                                                 │

00:00:33 #4266 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #4267 [Verbose] > │         v2                                                                   │

00:00:33 #4268 [Verbose] > │ and method9 (v0 : UH2) : (float []) =                                        │

00:00:33 #4269 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:33 #4270 [Verbose] > │     let v2 : int32 = method10(v0, v1)                                        │

00:00:33 #4271 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:33 #4272 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:33 #4273 [Verbose] > │     let v5 : int32 = method11(v3, v0, v4)                                    │

00:00:33 #4274 [Verbose] > │     v3                                                                       │

00:00:33 #4275 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:33 #4276 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:33 #4277 [Verbose] > │     let v0 : ((struct (float * float * float * float * float * float * float │

00:00:33 #4278 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #4279 [Verbose] > │ float * float * float)) -> (struct (float * float * float * float * float *  │

00:00:33 #4280 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:33 #4281 [Verbose] > │ float * float * float * float * float))) = closure0()                        │

00:00:33 #4282 [Verbose] > │     let v1 : (struct (float * float * float * float * float * float * float  │

00:00:33 #4283 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #4284 [Verbose] > │ float * float * float)) = closure2()                                         │

00:00:33 #4285 [Verbose] > │     let v2 : (struct (float * float * float * float * float * float * float  │

00:00:33 #4286 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #4287 [Verbose] > │ float * float * float)) = v0 v1                                              │

00:00:33 #4288 [Verbose] > │     let v3 : (struct (float * float * float * float * float * float * float  │

00:00:33 #4289 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #4290 [Verbose] > │ float * float * float)) = closure3()                                         │

00:00:33 #4291 [Verbose] > │     let v4 : (struct (float * float * float * float * float * float * float  │

00:00:33 #4292 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:33 #4293 [Verbose] > │ float * float * float)) = v0 v3                                              │

00:00:33 #4294 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:33 #4295 [Verbose] > │     let v6 : int32 = 0                                                       │

00:00:33 #4296 [Verbose] > │     let v7 : UH0 = method1(v2, v5, v6)                                       │

00:00:33 #4297 [Verbose] > │     let v8 : UH1 = UH1_1                                                     │

00:00:33 #4298 [Verbose] > │     let v9 : UH1 = method4(v7, v8)                                           │

00:00:33 #4299 [Verbose] > │     let v10 : UH2 = UH2_1                                                    │

00:00:33 #4300 [Verbose] > │     let v11 : UH2 = UH2_1                                                    │

00:00:33 #4301 [Verbose] > │     let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11)                │

00:00:33 #4302 [Verbose] > │     let v14 : UH2 = UH2_1                                                    │

00:00:33 #4303 [Verbose] > │     let v15 : UH2 = method6(v12, v14)                                        │

00:00:33 #4304 [Verbose] > │     let v16 : UH2 = UH2_1                                                    │

00:00:33 #4305 [Verbose] > │     let v17 : UH2 = method6(v13, v16)                                        │

00:00:33 #4306 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:33 #4307 [Verbose] > │     let v19 : int32 = 0                                                      │

00:00:33 #4308 [Verbose] > │     let v20 : UH0 = method7(v4, v18, v19)                                    │

00:00:33 #4309 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:33 #4310 [Verbose] > │     let v22 : UH1 = method8(v20, v21)                                        │

00:00:33 #4311 [Verbose] > │     let v23 : UH2 = UH2_1                                                    │

00:00:33 #4312 [Verbose] > │     let v24 : UH2 = UH2_1                                                    │

00:00:33 #4313 [Verbose] > │     let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24)               │

00:00:33 #4314 [Verbose] > │     let v27 : UH2 = UH2_1                                                    │

00:00:33 #4315 [Verbose] > │     let v28 : UH2 = method6(v25, v27)                                        │

00:00:33 #4316 [Verbose] > │     let v29 : UH2 = UH2_1                                                    │

00:00:33 #4317 [Verbose] > │     let v30 : UH2 = method6(v26, v29)                                        │

00:00:33 #4318 [Verbose] > │     let v31 : (float []) = method9(v15)                                      │

00:00:33 #4319 [Verbose] > │     let v32 : (float []) = method9(v17)                                      │

00:00:33 #4320 [Verbose] > │     let v33 : (float []) = method9(v28)                                      │

00:00:33 #4321 [Verbose] > │     let v34 : (float []) = method9(v30)                                      │

00:00:33 #4322 [Verbose] > │     let v35 : string = "newtonian"                                           │

00:00:33 #4323 [Verbose] > │     let v36 : string = "relativistic"                                        │

00:00:33 #4324 [Verbose] > │     let v37 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:33 #4325 [Verbose] > │ (v35, v31, v32); struct (v36, v33, v34)|]                                    │

00:00:33 #4326 [Verbose] > │     let v38 : string = "proton in a 1-t magnetic field"                      │

00:00:33 #4327 [Verbose] > │     let v39 : string = "x (m)"                                               │

00:00:33 #4328 [Verbose] > │     let v40 : string = "y (m)"                                               │

00:00:33 #4329 [Verbose] > │     struct (v38, v39, v40, v37)                                              │

00:00:33 #4330 [Verbose] > │ method0()                                                                    │

00:00:33 #4331 [Verbose] > │                                                                              │

00:00:33 #4332 [Verbose] > │                                                                              │

00:00:33 #4333 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #4334 [Verbose] >

00:00:33 #4335 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:33 #4336 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:33 #4337 [Verbose] > │ ### system kinetic energy versus time 1                                      │

00:00:33 #4338 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #4339 [Verbose] >

00:00:33 #4340 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:33 #4341 [Verbose] > // // test

00:00:33 #4342 [Verbose] >

00:00:33 #4343 [Verbose] > inl central_force f (particle_state st1) (particle_state st2) =

00:00:33 #4344 [Verbose] >     inl r1 = st1.pos_vec

00:00:33 #4345 [Verbose] >     inl r2 = st2.pos_vec

00:00:33 #4346 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:33 #4347 [Verbose] >     inl r21mag = magnitude r21

00:00:33 #4348 [Verbose] >     f r21mag *^ r21 ^/ r21mag

00:00:33 #4349 [Verbose] >

00:00:33 #4350 [Verbose] > inl billiard_force k re =

00:00:33 #4351 [Verbose] >     inl f r =

00:00:33 #4352 [Verbose] >         if r >= re

00:00:33 #4353 [Verbose] >         then 0

00:00:33 #4354 [Verbose] >         else -k * (r - re)

00:00:33 #4355 [Verbose] >     central_force f

00:00:33 #4356 [Verbose] >

00:00:33 #4357 [Verbose] > type force_vector = vec

00:00:33 #4358 [Verbose] > type two_body_force = particle_state -> particle_state -> force_vector

00:00:33 #4359 [Verbose] >

00:00:33 #4360 [Verbose] > union force =

00:00:33 #4361 [Verbose] >     | ExternalForce : i32 * one_body_force

00:00:33 #4362 [Verbose] >     | InternalForce : i32 * i32 * two_body_force

00:00:33 #4363 [Verbose] >

00:00:33 #4364 [Verbose] > nominal multi_particle_state = list particle_state

00:00:33 #4365 [Verbose] >

00:00:33 #4366 [Verbose] > nominal d_multi_particle_state = list d_particle_state

00:00:33 #4367 [Verbose] >

00:00:33 #4368 [Verbose] > inl force_on n sts force =

00:00:33 #4369 [Verbose] >     match force with

00:00:33 #4370 [Verbose] >     | ExternalForce (n0, f_one_body) =>

00:00:33 #4371 [Verbose] >         if n = n0

00:00:33 #4372 [Verbose] >         then f_one_body

00:00:33 #4373 [Verbose] >         else fun _ => zero_vec ()

00:00:33 #4374 [Verbose] >     | InternalForce (n0, n1, f_two_body) =>

00:00:33 #4375 [Verbose] >         if n = n0

00:00:33 #4376 [Verbose] >         then f_two_body (sts |> listm'.item n1)

00:00:33 #4377 [Verbose] >         elif n = n1

00:00:33 #4378 [Verbose] >         then f_two_body (sts |> listm'.item n0)

00:00:33 #4379 [Verbose] >         else fun _ => zero_vec ()

00:00:33 #4380 [Verbose] >

00:00:33 #4381 [Verbose] > inl forces_on n (multi_particle_state sts) fs =

00:00:33 #4382 [Verbose] >     fs |> listm.map (force_on n sts)

00:00:33 #4383 [Verbose] >

00:00:33 #4384 [Verbose] > inl newton_second_mps fs (multi_particle_state sts) : d_multi_particle_state =

00:00:33 #4385 [Verbose] >     inl deriv (n, st) =

00:00:33 #4386 [Verbose] >         newton_second_ps (forces_on n (multi_particle_state sts) fs) st

00:00:33 #4387 [Verbose] >     sts |> listm'.indexed |> listm.map deriv |> d_multi_particle_state

00:00:33 #4388 [Verbose] >

00:00:33 #4389 [Verbose] > instance (+++) d_multi_particle_state = fun (d_multi_particle_state dsts1)

00:00:33 #4390 [Verbose] > (d_multi_particle_state dsts2) =>

00:00:33 #4391 [Verbose] >     d_multi_particle_state (listm'.zip_with_ (+++) dsts1 dsts2)

00:00:33 #4392 [Verbose] >

00:00:33 #4393 [Verbose] > instance scale d_multi_particle_state = fun w (d_multi_particle_state dsts) =>

00:00:33 #4394 [Verbose] >     d_multi_particle_state (dsts |> listm.map (scale w))

00:00:33 #4395 [Verbose] >

00:00:33 #4396 [Verbose] > instance shift multi_particle_state = fun dt dsts (multi_particle_state sts) =>

00:00:33 #4397 [Verbose] >     inl (d_multi_particle_state dsts) =

00:00:33 #4398 [Verbose] >         real

00:00:33 #4399 [Verbose] >             match dsts with

00:00:33 #4400 [Verbose] >             | d_multi_particle_state _ => dsts

00:00:33 #4401 [Verbose] >     listm'.zip_with_ (shift dt) dsts sts |> multi_particle_state

00:00:33 #4402 [Verbose] >

00:00:33 #4403 [Verbose] > inl euler_cromer_mps dt : numerical_method multi_particle_state

00:00:33 #4404 [Verbose] > d_multi_particle_state =

00:00:33 #4405 [Verbose] >     fun deriv mpst0 =>

00:00:33 #4406 [Verbose] >         inl mpst1 = euler dt deriv mpst0

00:00:33 #4407 [Verbose] >         inl (multi_particle_state sts0) = mpst0

00:00:33 #4408 [Verbose] >         inl (multi_particle_state sts1) = mpst1

00:00:33 #4409 [Verbose] >         sts1

00:00:33 #4410 [Verbose] >         |> listm'.zip_ sts0

00:00:33 #4411 [Verbose] >         |> listm.map (fun ((particle_state st0), (particle_state st1)) =>

00:00:33 #4412 [Verbose] >             particle_state {

00:00:33 #4413 [Verbose] >                 st1 with

00:00:33 #4414 [Verbose] >                     pos_vec = st0.pos_vec ^+^ st1.velocity ^* dt

00:00:33 #4415 [Verbose] >             }

00:00:33 #4416 [Verbose] >         )

00:00:33 #4417 [Verbose] >         |> multi_particle_state

00:00:33 #4418 [Verbose] >

00:00:33 #4419 [Verbose] > inl update_mps (method : numerical_method multi_particle_state

00:00:33 #4420 [Verbose] > d_multi_particle_state) =

00:00:33 #4421 [Verbose] >     newton_second_mps >> method

00:00:33 #4422 [Verbose] >

00:00:33 #4423 [Verbose] > inl states_mps (method : numerical_method multi_particle_state

00:00:33 #4424 [Verbose] > d_multi_particle_state) =

00:00:33 #4425 [Verbose] >     newton_second_mps >> method >> seq.iterate_

00:00:33 #4426 [Verbose] >

00:00:33 #4427 [Verbose] >

00:00:33 #4428 [Verbose] > inl kinetic_energy (particle_state st) =

00:00:33 #4429 [Verbose] >     inl m = st.mass

00:00:33 #4430 [Verbose] >     inl v = magnitude st.velocity

00:00:33 #4431 [Verbose] >     0.5 * m * v ** 2

00:00:33 #4432 [Verbose] >

00:00:33 #4433 [Verbose] > inl system_ke (multi_particle_state sts) =

00:00:33 #4434 [Verbose] >     sts |> listm.map kinetic_energy |> listm'.sum

00:00:33 #4435 [Verbose] >

00:00:33 #4436 [Verbose] > inl linear_spring_pe k re (particle_state st1) (particle_state st2) =

00:00:33 #4437 [Verbose] >     inl r1 = st1.pos_vec

00:00:33 #4438 [Verbose] >     inl r2 = st2.pos_vec

00:00:33 #4439 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:33 #4440 [Verbose] >     inl r21mag = magnitude r21

00:00:33 #4441 [Verbose] >     k * (r21mag - re) ** 2 / 2

00:00:33 #4442 [Verbose] >

00:00:33 #4443 [Verbose] > inl earth_surface_gravity_pe (particle_state st) =

00:00:33 #4444 [Verbose] >     inl g = 9.80665

00:00:33 #4445 [Verbose] >     inl m = st.mass

00:00:33 #4446 [Verbose] >     inl z = st.pos_vec.z

00:00:33 #4447 [Verbose] >     m * g * z

00:00:33 #4448 [Verbose] >

00:00:33 #4449 [Verbose] > inl two_springs_pe (multi_particle_state sts) =

00:00:33 #4450 [Verbose] >     inl st0 = sts |> listm'.item 0i32

00:00:33 #4451 [Verbose] >     inl st1 = sts |> listm'.item 1i32

00:00:33 #4452 [Verbose] >     linear_spring_pe 100 0.5 (default_particle_state ()) st0

00:00:33 #4453 [Verbose] >     + linear_spring_pe 100 0.5 st0 st1

00:00:33 #4454 [Verbose] >     + earth_surface_gravity_pe st0

00:00:33 #4455 [Verbose] >     + earth_surface_gravity_pe st1

00:00:33 #4456 [Verbose] >

00:00:33 #4457 [Verbose] > inl two_springs_me mpst =

00:00:33 #4458 [Verbose] >     system_ke mpst + two_springs_pe mpst

00:00:33 #4459 [Verbose] >

00:00:33 #4460 [Verbose] > inl ball_radius () = 0.03

00:00:33 #4461 [Verbose] >

00:00:33 #4462 [Verbose] > inl billiard_forces k =

00:00:33 #4463 [Verbose] >     [[ InternalForce (0, 1, billiard_force k (2 * ball_radius ())) ]]

00:00:33 #4464 [Verbose] >

00:00:33 #4465 [Verbose] > inl billiard_update n_method k dt =

00:00:33 #4466 [Verbose] >     update_mps (n_method dt) (billiard_forces k)

00:00:33 #4467 [Verbose] >

00:00:33 #4468 [Verbose] > inl billiard_initial () =

00:00:33 #4469 [Verbose] >     inl ball_mass = 0.160

00:00:33 #4470 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:33 #4471 [Verbose] >     multi_particle_state [[

00:00:33 #4472 [Verbose] >         particle_state {

00:00:33 #4473 [Verbose] >             default_particle_state' with

00:00:33 #4474 [Verbose] >                 mass = ball_mass

00:00:33 #4475 [Verbose] >                 pos_vec = zero_vec ()

00:00:33 #4476 [Verbose] >                 velocity = 0.2 *^ i_hat ()

00:00:33 #4477 [Verbose] >         }

00:00:33 #4478 [Verbose] >         particle_state {

00:00:33 #4479 [Verbose] >             default_particle_state' with

00:00:33 #4480 [Verbose] >                 mass = ball_mass

00:00:33 #4481 [Verbose] >                 pos_vec = i_hat () ^+^ 0.02 *^ j_hat ()

00:00:33 #4482 [Verbose] >                 velocity = zero_vec ()

00:00:33 #4483 [Verbose] >         }

00:00:33 #4484 [Verbose] >     ]]

00:00:33 #4485 [Verbose] >

00:00:33 #4486 [Verbose] > inl billiard_states ~n_method k dt =

00:00:33 #4487 [Verbose] >     states_mps (n_method dt) (billiard_forces k) (billiard_initial ())

00:00:33 #4488 [Verbose] >

00:00:33 #4489 [Verbose] > inl billiard_states_finite n_method k dt =

00:00:33 #4490 [Verbose] >     billiard_states n_method k dt

00:00:33 #4491 [Verbose] >     >> Some

00:00:33 #4492 [Verbose] >     |> seq.take_while_ (fun (multi_particle_state mpst) (_ : i32) =>

00:00:33 #4493 [Verbose] >         (mpst |> listm'.item 0i32).time <= 10

00:00:33 #4494 [Verbose] >     )

00:00:33 #4495 [Verbose] >

00:00:33 #4496 [Verbose] > inl momentum (particle_state st) =

00:00:33 #4497 [Verbose] >     inl m = st.mass

00:00:33 #4498 [Verbose] >     inl v = st.velocity

00:00:33 #4499 [Verbose] >     m *^ v

00:00:33 #4500 [Verbose] >

00:00:33 #4501 [Verbose] > inl system_p (multi_particle_state sts) =

00:00:33 #4502 [Verbose] >     sts |> listm.map momentum |> sum_vec

00:00:33 #4503 [Verbose] >

00:00:33 #4504 [Verbose] >

00:00:33 #4505 [Verbose] > inl time_ke_ec_x, time_ke_ec_y =

00:00:33 #4506 [Verbose] >     billiard_states_finite euler_cromer_mps 30 0.03

00:00:33 #4507 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:33 #4508 [Verbose] >         (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)

00:00:33 #4509 [Verbose] >     )

00:00:33 #4510 [Verbose] >     |> listm'.unzip

00:00:33 #4511 [Verbose] >

00:00:33 #4512 [Verbose] > inl time_ke_rk4_x, time_ke_rk4_y =

00:00:33 #4513 [Verbose] >     billiard_states_finite runge_kutta_4 30 0.03

00:00:33 #4514 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:33 #4515 [Verbose] >         (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)

00:00:33 #4516 [Verbose] >     )

00:00:33 #4517 [Verbose] >     |> listm'.unzip

00:00:33 #4518 [Verbose] >

00:00:33 #4519 [Verbose] > inl time_ke_ec_x : a i32 _ = time_ke_ec_x |> listm.toArray

00:00:33 #4520 [Verbose] > inl time_ke_ec_y : a i32 _ = time_ke_ec_y |> listm.toArray

00:00:33 #4521 [Verbose] >

00:00:33 #4522 [Verbose] > inl time_ke_rk4_x : a i32 _ = time_ke_rk4_x |> listm.toArray

00:00:33 #4523 [Verbose] > inl time_ke_rk4_y : a i32 _ = time_ke_rk4_y |> listm.toArray

00:00:33 #4524 [Verbose] >

00:00:33 #4525 [Verbose] > "system kinetic energy versus time",

00:00:33 #4526 [Verbose] > "time (s)",

00:00:33 #4527 [Verbose] > "system kinetic energy (j)",

00:00:33 #4528 [Verbose] > ;[[

00:00:33 #4529 [Verbose] >     "euler-cromer", time_ke_ec_x, time_ke_ec_y

00:00:33 #4530 [Verbose] >     "runge-kutta 4", time_ke_rk4_x, time_ke_rk4_y

00:00:33 #4531 [Verbose] > ]]

00:00:34 #4532 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0218-1843-1257a42adeb8\main.spi

00:00:35 #4533 [Verbose] >

00:00:35 #4534 [Verbose] > ╭─[ 1.36s - return value ]─────────────────────────────────────────────────────╮

00:00:35 #4535 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:35 #4536 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:35 #4537 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:35 #4538 [Verbose] > │ stroke="none"/>                                                              │

00:00:35 #4539 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:35 #4540 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:35 #4541 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:35 #4542 [Verbose] > │ system kinetic energy versus time                                            │

00:00:35 #4543 [Verbose] > │ </text>                                                                      │

00:00:35 #4544 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:35 #4545 [Verbose] > │ y2="75"/>                                                                    │

00:00:35 #4546 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:35 #4547 [Verbose] > │ y2="75"/>                                                                    │

00:00:35 #4548 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:35 #4549 [Verbose] > │ y2="75"/>                                                                    │

00:00:35 #4550 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:35 #4551 [Verbose] > │ y2="75"/>                                                                    │

00:00:35 #4552 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1...                        │

00:00:35 #4553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:35 #4554 [Verbose] >

00:00:35 #4555 [Verbose] > ╭─[ 1.37s - stdout ]───────────────────────────────────────────────────────────╮

00:00:35 #4556 [Verbose] > │ type UH0 =                                                                   │

00:00:35 #4557 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:35 #4558 [Verbose] > │ * float * UH0                                                                │

00:00:35 #4559 [Verbose] > │     | UH0_1                                                                  │

00:00:35 #4560 [Verbose] > │ and UH1 =                                                                    │

00:00:35 #4561 [Verbose] > │     | UH1_0 of float * float * float * float * float * float * float * float │

00:00:35 #4562 [Verbose] > │ * float * UH1                                                                │

00:00:35 #4563 [Verbose] > │     | UH1_1                                                                  │

00:00:35 #4564 [Verbose] > │ and UH2 =                                                                    │

00:00:35 #4565 [Verbose] > │     | UH2_0 of float * float * float * float * float * float * float * float │

00:00:35 #4566 [Verbose] > │ * float * float * float * float * float * float * float * float * float *    │

00:00:35 #4567 [Verbose] > │ float * UH2                                                                  │

00:00:35 #4568 [Verbose] > │     | UH2_1                                                                  │

00:00:35 #4569 [Verbose] > │ and UH3 =                                                                    │

00:00:35 #4570 [Verbose] > │     | UH3_0 of int32 * float * float * float * float * float * float * float │

00:00:35 #4571 [Verbose] > │ * float * float * UH3                                                        │

00:00:35 #4572 [Verbose] > │     | UH3_1                                                                  │

00:00:35 #4573 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:35 #4574 [Verbose] > │     | US0_0                                                                  │

00:00:35 #4575 [Verbose] > │     | US0_1 of f1_0 : float * f1_1 : float * f1_2 : float * f1_3 : float *   │

00:00:35 #4576 [Verbose] > │ f1_4 : float * f1_5 : float * f1_6 : float * f1_7 : float * f1_8 : float     │

00:00:35 #4577 [Verbose] > │ and UH4 =                                                                    │

00:00:35 #4578 [Verbose] > │     | UH4_0 of UH0 * UH4                                                     │

00:00:35 #4579 [Verbose] > │     | UH4_1                                                                  │

00:00:35 #4580 [Verbose] > │ and UH5 =                                                                    │

00:00:35 #4581 [Verbose] > │     | UH5_0 of float * float * UH5                                           │

00:00:35 #4582 [Verbose] > │     | UH5_1                                                                  │

00:00:35 #4583 [Verbose] > │ and UH6 =                                                                    │

00:00:35 #4584 [Verbose] > │     | UH6_0 of float * UH6                                                   │

00:00:35 #4585 [Verbose] > │     | UH6_1                                                                  │

00:00:35 #4586 [Verbose] > │ let rec method2 (v0 : UH0, v1 : UH0) : UH0 =                                 │

00:00:35 #4587 [Verbose] > │     match v0 with                                                            │

00:00:35 #4588 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:35 #4589 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:35 #4590 [Verbose] > │         method2(v11, v12)                                                    │

00:00:35 #4591 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:35 #4592 [Verbose] > │         v1                                                                   │

00:00:35 #4593 [Verbose] > │ and method1 (v0 : float, v1 : UH0, v2 : UH1, v3 : UH0) : UH0 =               │

00:00:35 #4594 [Verbose] > │     match v2 with                                                            │

00:00:35 #4595 [Verbose] > │     | UH1_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *)        │

00:00:35 #4596 [Verbose] > │         match v3 with                                                        │

00:00:35 #4597 [Verbose] > │         | UH0_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* Cons │

00:00:35 #4598 [Verbose] > │ *)                                                                           │

00:00:35 #4599 [Verbose] > │             let v24 : float = v9 * v0                                        │

00:00:35 #4600 [Verbose] > │             let v25 : float = v19 + v24                                      │

00:00:35 #4601 [Verbose] > │             let v26 : float = v0 * v6                                        │

00:00:35 #4602 [Verbose] > │             let v27 : float = v0 * v7                                        │

00:00:35 #4603 [Verbose] > │             let v28 : float = v0 * v8                                        │

00:00:35 #4604 [Verbose] > │             let v29 : float = v16 + v26                                      │

00:00:35 #4605 [Verbose] > │             let v30 : float = v17 + v27                                      │

00:00:35 #4606 [Verbose] > │             let v31 : float = v18 + v28                                      │

00:00:35 #4607 [Verbose] > │             let v32 : float = v0 * v10                                       │

00:00:35 #4608 [Verbose] > │             let v33 : float = v0 * v11                                       │

00:00:35 #4609 [Verbose] > │             let v34 : float = v0 * v12                                       │

00:00:35 #4610 [Verbose] > │             let v35 : float = v20 + v32                                      │

00:00:35 #4611 [Verbose] > │             let v36 : float = v21 + v33                                      │

00:00:35 #4612 [Verbose] > │             let v37 : float = v22 + v34                                      │

00:00:35 #4613 [Verbose] > │             let v38 : UH0 = UH0_0(v14, v15, v29, v30, v31, v25, v35, v36,    │

00:00:35 #4614 [Verbose] > │ v37, v1)                                                                     │

00:00:35 #4615 [Verbose] > │             method1(v0, v38, v13, v23)                                       │

00:00:35 #4616 [Verbose] > │         | _ ->                                                               │

00:00:35 #4617 [Verbose] > │             let v40 : UH0 = UH0_1                                            │

00:00:35 #4618 [Verbose] > │             method2(v1, v40)                                                 │

00:00:35 #4619 [Verbose] > │     | _ ->                                                                   │

00:00:35 #4620 [Verbose] > │         let v43 : UH0 = UH0_1                                                │

00:00:35 #4621 [Verbose] > │         method2(v1, v43)                                                     │

00:00:35 #4622 [Verbose] > │ and method4 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:35 #4623 [Verbose] > │     match v0 with                                                            │

00:00:35 #4624 [Verbose] > │     | UH2_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15,    │

00:00:35 #4625 [Verbose] > │ v16, v17, v18, v19, v20) -> (* Cons *)                                       │

00:00:35 #4626 [Verbose] > │         let v21 : UH2 = UH2_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, │

00:00:35 #4627 [Verbose] > │ v13, v14, v15, v16, v17, v18, v19, v1)                                       │

00:00:35 #4628 [Verbose] > │         method4(v20, v21)                                                    │

00:00:35 #4629 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:35 #4630 [Verbose] > │         v1                                                                   │

00:00:35 #4631 [Verbose] > │ and method3 (v0 : UH2, v1 : UH0, v2 : UH0) : UH2 =                           │

00:00:35 #4632 [Verbose] > │     match v1 with                                                            │

00:00:35 #4633 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:35 #4634 [Verbose] > │         match v2 with                                                        │

00:00:35 #4635 [Verbose] > │         | UH0_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │

00:00:35 #4636 [Verbose] > │ *)                                                                           │

00:00:35 #4637 [Verbose] > │             let v23 : UH2 = UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v13, │

00:00:35 #4638 [Verbose] > │ v14, v15, v16, v17, v18, v19, v20, v21, v0)                                  │

00:00:35 #4639 [Verbose] > │             method3(v23, v12, v22)                                           │

00:00:35 #4640 [Verbose] > │         | _ ->                                                               │

00:00:35 #4641 [Verbose] > │             let v25 : UH2 = UH2_1                                            │

00:00:35 #4642 [Verbose] > │             method4(v0, v25)                                                 │

00:00:35 #4643 [Verbose] > │     | _ ->                                                                   │

00:00:35 #4644 [Verbose] > │         let v28 : UH2 = UH2_1                                                │

00:00:35 #4645 [Verbose] > │         method4(v0, v28)                                                     │

00:00:35 #4646 [Verbose] > │ and method5 (v0 : float, v1 : UH2, v2 : UH0) : UH0 =                         │

00:00:35 #4647 [Verbose] > │     match v1 with                                                            │

00:00:35 #4648 [Verbose] > │     | UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16,   │

00:00:35 #4649 [Verbose] > │ v17, v18, v19, v20, v21) -> (* Cons *)                                       │

00:00:35 #4650 [Verbose] > │         let v22 : UH0 = method5(v0, v21, v2)                                 │

00:00:35 #4651 [Verbose] > │         let v23 : float = v0 * v18                                           │

00:00:35 #4652 [Verbose] > │         let v24 : float = v0 * v19                                           │

00:00:35 #4653 [Verbose] > │         let v25 : float = v0 * v20                                           │

00:00:35 #4654 [Verbose] > │         let v26 : float = v5 + v23                                           │

00:00:35 #4655 [Verbose] > │         let v27 : float = v6 + v24                                           │

00:00:35 #4656 [Verbose] > │         let v28 : float = v7 + v25                                           │

00:00:35 #4657 [Verbose] > │         UH0_0(v12, v13, v26, v27, v28, v17, v18, v19, v20, v22)              │

00:00:35 #4658 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:35 #4659 [Verbose] > │         v2                                                                   │

00:00:35 #4660 [Verbose] > │ and closure2 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =              │

00:00:35 #4661 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:35 #4662 [Verbose] > │     let v4 : UH0 = UH0_1                                                     │

00:00:35 #4663 [Verbose] > │     let v5 : UH0 = method1(v0, v4, v3, v2)                                   │

00:00:35 #4664 [Verbose] > │     let v6 : UH2 = UH2_1                                                     │

00:00:35 #4665 [Verbose] > │     let v7 : UH2 = method3(v6, v2, v5)                                       │

00:00:35 #4666 [Verbose] > │     let v8 : UH0 = UH0_1                                                     │

00:00:35 #4667 [Verbose] > │     let v9 : UH0 = method5(v0, v7, v8)                                       │

00:00:35 #4668 [Verbose] > │     v9                                                                       │

00:00:35 #4669 [Verbose] > │ and closure1 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =               │

00:00:35 #4670 [Verbose] > │     closure2(v0, v1)                                                         │

00:00:35 #4671 [Verbose] > │ and closure0 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =              │

00:00:35 #4672 [Verbose] > │     closure1(v0)                                                             │

00:00:35 #4673 [Verbose] > │ and method6 (v0 : UH0, v1 : UH3, v2 : int32) : struct (UH3 * int32) =        │

00:00:35 #4674 [Verbose] > │     match v0 with                                                            │

00:00:35 #4675 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:35 #4676 [Verbose] > │         let v13 : int32 = v2 + 1                                             │

00:00:35 #4677 [Verbose] > │         let v14 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1)  │

00:00:35 #4678 [Verbose] > │         method6(v12, v14, v13)                                               │

00:00:35 #4679 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:35 #4680 [Verbose] > │         struct (v1, v2)                                                      │

00:00:35 #4681 [Verbose] > │ and method7 (v0 : UH3, v1 : UH3) : UH3 =                                     │

00:00:35 #4682 [Verbose] > │     match v0 with                                                            │

00:00:35 #4683 [Verbose] > │     | UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)     │

00:00:35 #4684 [Verbose] > │         let v13 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1)  │

00:00:35 #4685 [Verbose] > │         method7(v12, v13)                                                    │

00:00:35 #4686 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:35 #4687 [Verbose] > │         v1                                                                   │

00:00:35 #4688 [Verbose] > │ and closure4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5 │

00:00:35 #4689 [Verbose] > │ : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 :       │

00:00:35 #4690 [Verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:35 #4691 [Verbose] > │ : float, v17 : float) : struct (float * float * float) =                     │

00:00:35 #4692 [Verbose] > │     let v18 : float = -1.0 * v2                                              │

00:00:35 #4693 [Verbose] > │     let v19 : float = -1.0 * v3                                              │

00:00:35 #4694 [Verbose] > │     let v20 : float = -1.0 * v4                                              │

00:00:35 #4695 [Verbose] > │     let v21 : float = v11 + v18                                              │

00:00:35 #4696 [Verbose] > │     let v22 : float = v12 + v19                                              │

00:00:35 #4697 [Verbose] > │     let v23 : float = v13 + v20                                              │

00:00:35 #4698 [Verbose] > │     let v24 : float = v21 * v21                                              │

00:00:35 #4699 [Verbose] > │     let v25 : float = v22 * v22                                              │

00:00:35 #4700 [Verbose] > │     let v26 : float = v24 + v25                                              │

00:00:35 #4701 [Verbose] > │     let v27 : float = v23 * v23                                              │

00:00:35 #4702 [Verbose] > │     let v28 : float = v26 + v27                                              │

00:00:35 #4703 [Verbose] > │     let v29 : float = sqrt v28                                               │

00:00:35 #4704 [Verbose] > │     let v30 : bool = v29 >= 0.06                                             │

00:00:35 #4705 [Verbose] > │     let v33 : float =                                                        │

00:00:35 #4706 [Verbose] > │         if v30 then                                                          │

00:00:35 #4707 [Verbose] > │             0.0                                                              │

00:00:35 #4708 [Verbose] > │         else                                                                 │

00:00:35 #4709 [Verbose] > │             let v31 : float = v29 - 0.06                                     │

00:00:35 #4710 [Verbose] > │             let v32 : float = -30.0 * v31                                    │

00:00:35 #4711 [Verbose] > │             v32                                                              │

00:00:35 #4712 [Verbose] > │     let v34 : float = v33 * v21                                              │

00:00:35 #4713 [Verbose] > │     let v35 : float = v33 * v22                                              │

00:00:35 #4714 [Verbose] > │     let v36 : float = v33 * v23                                              │

00:00:35 #4715 [Verbose] > │     let v37 : float = v34 / v29                                              │

00:00:35 #4716 [Verbose] > │     let v38 : float = v35 / v29                                              │

00:00:35 #4717 [Verbose] > │     let v39 : float = v36 / v29                                              │

00:00:35 #4718 [Verbose] > │     struct (v37, v38, v39)                                                   │

00:00:35 #4719 [Verbose] > │ and closure5 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:35 #4720 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:35 #4721 [Verbose] > │ float * float) =                                                             │

00:00:35 #4722 [Verbose] > │     struct (0.0, 0.0, 0.0)                                                   │

00:00:35 #4723 [Verbose] > │ and method8 (v0 : UH0, v1 : UH3, v2 : UH1) : UH1 =                           │

00:00:35 #4724 [Verbose] > │     match v1 with                                                            │

00:00:35 #4725 [Verbose] > │     | UH3_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *)    │

00:00:35 #4726 [Verbose] > │         let v14 : UH1 = method8(v0, v13, v2)                                 │

00:00:35 #4727 [Verbose] > │         let v15 : bool = v3 = 0                                              │

00:00:35 #4728 [Verbose] > │         let v134 : (struct (float * float * float * float * float * float *  │

00:00:35 #4729 [Verbose] > │ float * float * float) -> struct (float * float * float)) =                  │

00:00:35 #4730 [Verbose] > │             if v15 then                                                      │

00:00:35 #4731 [Verbose] > │                 let v42 : US0 =                                              │

00:00:35 #4732 [Verbose] > │                     match v0 with                                            │

00:00:35 #4733 [Verbose] > │                     | UH0_0(v16, v17, v18, v19, v20, v21, v22, v23, v24,     │

00:00:35 #4734 [Verbose] > │ v25) -> (* Cons *)                                                           │

00:00:35 #4735 [Verbose] > │                         match v25 with                                       │

00:00:35 #4736 [Verbose] > │                         | UH0_0(v26, v27, v28, v29, v30, v31, v32, v33, v34, │

00:00:35 #4737 [Verbose] > │ v35) -> (* Cons *)                                                           │

00:00:35 #4738 [Verbose] > │                             US0_1(v26, v27, v28, v29, v30, v31, v32, v33,    │

00:00:35 #4739 [Verbose] > │ v34)                                                                         │

00:00:35 #4740 [Verbose] > │                         | UH0_1 -> (* Nil *)                                 │

00:00:35 #4741 [Verbose] > │                             US0_0                                            │

00:00:35 #4742 [Verbose] > │                     | UH0_1 -> (* Nil *)                                     │

00:00:35 #4743 [Verbose] > │                         US0_0                                                │

00:00:35 #4744 [Verbose] > │                 let struct (v70 : float, v71 : float, v72 : float, v73 :     │

00:00:35 #4745 [Verbose] > │ float, v74 : float, v75 : float, v76 : float, v77 : float, v78 : float) =    │

00:00:35 #4746 [Verbose] > │                     match v42 with                                           │

00:00:35 #4747 [Verbose] > │                     | US0_0 -> (* None *)                                    │

00:00:35 #4748 [Verbose] > │                         failwith<struct (float * float * float * float *     │

00:00:35 #4749 [Verbose] > │ float * float * float * float * float)> "Option does not have a value."      │

00:00:35 #4750 [Verbose] > │                     | US0_1(v43, v44, v45, v46, v47, v48, v49, v50, v51) ->  │

00:00:35 #4751 [Verbose] > │ (* Some *)                                                                   │

00:00:35 #4752 [Verbose] > │                         struct (v43, v44, v45, v46, v47, v48, v49, v50, v51) │

00:00:35 #4753 [Verbose] > │                 closure4(v70, v71, v72, v73, v74, v75, v76, v77, v78)        │

00:00:35 #4754 [Verbose] > │             else                                                             │

00:00:35 #4755 [Verbose] > │                 let v80 : bool = v3 = 1                                      │

00:00:35 #4756 [Verbose] > │                 if v80 then                                                  │

00:00:35 #4757 [Verbose] > │                     let v94 : US0 =                                          │

00:00:35 #4758 [Verbose] > │                         match v0 with                                        │

00:00:35 #4759 [Verbose] > │                         | UH0_0(v81, v82, v83, v84, v85, v86, v87, v88, v89, │

00:00:35 #4760 [Verbose] > │ v90) -> (* Cons *)                                                           │

00:00:35 #4761 [Verbose] > │                             US0_1(v81, v82, v83, v84, v85, v86, v87, v88,    │

00:00:35 #4762 [Verbose] > │ v89)                                                                         │

00:00:35 #4763 [Verbose] > │                         | UH0_1 -> (* Nil *)                                 │

00:00:35 #4764 [Verbose] > │                             US0_0                                            │

00:00:35 #4765 [Verbose] > │                     let struct (v122 : float, v123 : float, v124 : float,    │

00:00:35 #4766 [Verbose] > │ v125 : float, v126 : float, v127 : float, v128 : float, v129 : float, v130 : │

00:00:35 #4767 [Verbose] > │ float) =                                                                     │

00:00:35 #4768 [Verbose] > │                         match v94 with                                       │

00:00:35 #4769 [Verbose] > │                         | US0_0 -> (* None *)                                │

00:00:35 #4770 [Verbose] > │                             failwith<struct (float * float * float * float * │

00:00:35 #4771 [Verbose] > │ float * float * float * float * float)> "Option does not have a value."      │

00:00:35 #4772 [Verbose] > │                         | US0_1(v95, v96, v97, v98, v99, v100, v101, v102,   │

00:00:35 #4773 [Verbose] > │ v103) -> (* Some *)                                                          │

00:00:35 #4774 [Verbose] > │                             struct (v95, v96, v97, v98, v99, v100, v101,     │

00:00:35 #4775 [Verbose] > │ v102, v103)                                                                  │

00:00:35 #4776 [Verbose] > │                     closure4(v122, v123, v124, v125, v126, v127, v128, v129, │

00:00:35 #4777 [Verbose] > │ v130)                                                                        │

00:00:35 #4778 [Verbose] > │                 else                                                         │

00:00:35 #4779 [Verbose] > │                     closure5()                                               │

00:00:35 #4780 [Verbose] > │         let struct (v135 : float, v136 : float, v137 : float) = v134 struct  │

00:00:35 #4781 [Verbose] > │ (v4, v5, v6, v7, v8, v9, v10, v11, v12)                                      │

00:00:35 #4782 [Verbose] > │         let v138 : float = v135 / v5                                         │

00:00:35 #4783 [Verbose] > │         let v139 : float = v136 / v5                                         │

00:00:35 #4784 [Verbose] > │         let v140 : float = v137 / v5                                         │

00:00:35 #4785 [Verbose] > │         UH1_0(0.0, 0.0, v10, v11, v12, 1.0, v138, v139, v140, v14)           │

00:00:35 #4786 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:35 #4787 [Verbose] > │         v2                                                                   │

00:00:35 #4788 [Verbose] > │ and closure3 () (v0 : UH0) : UH1 =                                           │

00:00:35 #4789 [Verbose] > │     let v1 : UH3 = UH3_1                                                     │

00:00:35 #4790 [Verbose] > │     let v2 : int32 = 0                                                       │

00:00:35 #4791 [Verbose] > │     let struct (v3 : UH3, v4 : int32) = method6(v0, v1, v2)                  │

00:00:35 #4792 [Verbose] > │     let v5 : UH3 = UH3_1                                                     │

00:00:35 #4793 [Verbose] > │     let v6 : UH3 = method7(v3, v5)                                           │

00:00:35 #4794 [Verbose] > │     let v7 : UH1 = UH1_1                                                     │

00:00:35 #4795 [Verbose] > │     let v8 : UH1 = method8(v0, v6, v7)                                       │

00:00:35 #4796 [Verbose] > │     v8                                                                       │

00:00:35 #4797 [Verbose] > │ and method10 (v0 : (UH0 -> UH0), v1 : UH0, v2 : int32) : UH0 =               │

00:00:35 #4798 [Verbose] > │     let v3 : bool = v2 <= 0                                                  │

00:00:35 #4799 [Verbose] > │     if v3 then                                                               │

00:00:35 #4800 [Verbose] > │         v1                                                                   │

00:00:35 #4801 [Verbose] > │     else                                                                     │

00:00:35 #4802 [Verbose] > │         let v4 : UH0 = v0 v1                                                 │

00:00:35 #4803 [Verbose] > │         let v5 : int32 = v2 - 1                                              │

00:00:35 #4804 [Verbose] > │         method10(v0, v4, v5)                                                 │

00:00:35 #4805 [Verbose] > │ and method11 (v0 : UH4, v1 : UH4) : UH4 =                                    │

00:00:35 #4806 [Verbose] > │     match v0 with                                                            │

00:00:35 #4807 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:35 #4808 [Verbose] > │         let v4 : UH4 = UH4_0(v2, v1)                                         │

00:00:35 #4809 [Verbose] > │         method11(v3, v4)                                                     │

00:00:35 #4810 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:35 #4811 [Verbose] > │         v1                                                                   │

00:00:35 #4812 [Verbose] > │ and method9 (v0 : (UH0 -> UH0), v1 : UH4, v2 : int32) : UH4 =                │

00:00:35 #4813 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:35 #4814 [Verbose] > │     let v4 : float = 0.16                                                    │

00:00:35 #4815 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:35 #4816 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:35 #4817 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:35 #4818 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:35 #4819 [Verbose] > │     let v9 : float = 0.2                                                     │

00:00:35 #4820 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:35 #4821 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:35 #4822 [Verbose] > │     let v12 : float = 1.0                                                    │

00:00:35 #4823 [Verbose] > │     let v13 : float = 0.02                                                   │

00:00:35 #4824 [Verbose] > │     let v14 : float = 0.0                                                    │

00:00:35 #4825 [Verbose] > │     let v15 : float = 0.0                                                    │

00:00:35 #4826 [Verbose] > │     let v16 : float = 0.0                                                    │

00:00:35 #4827 [Verbose] > │     let v17 : float = 0.0                                                    │

00:00:35 #4828 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:35 #4829 [Verbose] > │     let v19 : UH0 = UH0_0(v3, v4, v12, v13, v14, v8, v15, v16, v17, v18)     │

00:00:35 #4830 [Verbose] > │     let v20 : UH0 = UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v19)         │

00:00:35 #4831 [Verbose] > │     let v21 : UH0 = method10(v0, v20, v2)                                    │

00:00:35 #4832 [Verbose] > │     let v35 : US0 =                                                          │

00:00:35 #4833 [Verbose] > │         match v21 with                                                       │

00:00:35 #4834 [Verbose] > │         | UH0_0(v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) -> (* Cons │

00:00:35 #4835 [Verbose] > │ *)                                                                           │

00:00:35 #4836 [Verbose] > │             US0_1(v22, v23, v24, v25, v26, v27, v28, v29, v30)               │

00:00:35 #4837 [Verbose] > │         | UH0_1 -> (* Nil *)                                                 │

00:00:35 #4838 [Verbose] > │             US0_0                                                            │

00:00:35 #4839 [Verbose] > │     let struct (v63 : float, v64 : float, v65 : float, v66 : float, v67 :    │

00:00:35 #4840 [Verbose] > │ float, v68 : float, v69 : float, v70 : float, v71 : float) =                 │

00:00:35 #4841 [Verbose] > │         match v35 with                                                       │

00:00:35 #4842 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:35 #4843 [Verbose] > │             failwith<struct (float * float * float * float * float * float * │

00:00:35 #4844 [Verbose] > │ float * float * float)> "Option does not have a value."                      │

00:00:35 #4845 [Verbose] > │         | US0_1(v36, v37, v38, v39, v40, v41, v42, v43, v44) -> (* Some *)   │

00:00:35 #4846 [Verbose] > │             struct (v36, v37, v38, v39, v40, v41, v42, v43, v44)             │

00:00:35 #4847 [Verbose] > │     let v72 : bool = v68 <= 10.0                                             │

00:00:35 #4848 [Verbose] > │     if v72 then                                                              │

00:00:35 #4849 [Verbose] > │         let v73 : UH4 = UH4_0(v21, v1)                                       │

00:00:35 #4850 [Verbose] > │         let v74 : int32 = v2 + 1                                             │

00:00:35 #4851 [Verbose] > │         method9(v0, v73, v74)                                                │

00:00:35 #4852 [Verbose] > │     else                                                                     │

00:00:35 #4853 [Verbose] > │         let v76 : UH4 = UH4_1                                                │

00:00:35 #4854 [Verbose] > │         method11(v1, v76)                                                    │

00:00:35 #4855 [Verbose] > │ and method13 (v0 : UH0, v1 : UH6) : UH6 =                                    │

00:00:35 #4856 [Verbose] > │     match v0 with                                                            │

00:00:35 #4857 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:35 #4858 [Verbose] > │         let v12 : UH6 = method13(v11, v1)                                    │

00:00:35 #4859 [Verbose] > │         let v13 : float = v8 * v8                                            │

00:00:35 #4860 [Verbose] > │         let v14 : float = v9 * v9                                            │

00:00:35 #4861 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:35 #4862 [Verbose] > │         let v16 : float = v10 * v10                                          │

00:00:35 #4863 [Verbose] > │         let v17 : float = v15 + v16                                          │

00:00:35 #4864 [Verbose] > │         let v18 : float = sqrt v17                                           │

00:00:35 #4865 [Verbose] > │         let v19 : float = 0.5 * v3                                           │

00:00:35 #4866 [Verbose] > │         let v20 : float = v18 ** 2.0                                         │

00:00:35 #4867 [Verbose] > │         let v21 : float = v19 * v20                                          │

00:00:35 #4868 [Verbose] > │         UH6_0(v21, v12)                                                      │

00:00:35 #4869 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:35 #4870 [Verbose] > │         v1                                                                   │

00:00:35 #4871 [Verbose] > │ and method14 (v0 : UH6, v1 : float) : float =                                │

00:00:35 #4872 [Verbose] > │     match v0 with                                                            │

00:00:35 #4873 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:35 #4874 [Verbose] > │         let v4 : float = v1 + v2                                             │

00:00:35 #4875 [Verbose] > │         method14(v3, v4)                                                     │

00:00:35 #4876 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:35 #4877 [Verbose] > │         v1                                                                   │

00:00:35 #4878 [Verbose] > │ and method12 (v0 : UH4, v1 : UH5) : UH5 =                                    │

00:00:35 #4879 [Verbose] > │     match v0 with                                                            │

00:00:35 #4880 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:35 #4881 [Verbose] > │         let v4 : UH5 = method12(v3, v1)                                      │

00:00:35 #4882 [Verbose] > │         let v18 : US0 =                                                      │

00:00:35 #4883 [Verbose] > │             match v2 with                                                    │

00:00:35 #4884 [Verbose] > │             | UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons  │

00:00:35 #4885 [Verbose] > │ *)                                                                           │

00:00:35 #4886 [Verbose] > │                 US0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13)                │

00:00:35 #4887 [Verbose] > │             | UH0_1 -> (* Nil *)                                             │

00:00:35 #4888 [Verbose] > │                 US0_0                                                        │

00:00:35 #4889 [Verbose] > │         let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50  │

00:00:35 #4890 [Verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) =               │

00:00:35 #4891 [Verbose] > │             match v18 with                                                   │

00:00:35 #4892 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:35 #4893 [Verbose] > │                 failwith<struct (float * float * float * float * float *     │

00:00:35 #4894 [Verbose] > │ float * float * float * float)> "Option does not have a value."              │

00:00:35 #4895 [Verbose] > │             | US0_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some  │

00:00:35 #4896 [Verbose] > │ *)                                                                           │

00:00:35 #4897 [Verbose] > │                 struct (v19, v20, v21, v22, v23, v24, v25, v26, v27)         │

00:00:35 #4898 [Verbose] > │         let v55 : UH6 = UH6_1                                                │

00:00:35 #4899 [Verbose] > │         let v56 : UH6 = method13(v2, v55)                                    │

00:00:35 #4900 [Verbose] > │         let v57 : float = 0.0                                                │

00:00:35 #4901 [Verbose] > │         let v58 : float = method14(v56, v57)                                 │

00:00:35 #4902 [Verbose] > │         UH5_0(v51, v58, v4)                                                  │

00:00:35 #4903 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:35 #4904 [Verbose] > │         v1                                                                   │

00:00:35 #4905 [Verbose] > │ and method15 (v0 : UH5, v1 : UH6, v2 : UH6) : struct (UH6 * UH6) =           │

00:00:35 #4906 [Verbose] > │     match v0 with                                                            │

00:00:35 #4907 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:35 #4908 [Verbose] > │         let v6 : UH6 = UH6_0(v3, v1)                                         │

00:00:35 #4909 [Verbose] > │         let v7 : UH6 = UH6_0(v4, v2)                                         │

00:00:35 #4910 [Verbose] > │         method15(v5, v6, v7)                                                 │

00:00:35 #4911 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:35 #4912 [Verbose] > │         struct (v1, v2)                                                      │

00:00:35 #4913 [Verbose] > │ and method16 (v0 : UH6, v1 : UH6) : UH6 =                                    │

00:00:35 #4914 [Verbose] > │     match v0 with                                                            │

00:00:35 #4915 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:35 #4916 [Verbose] > │         let v4 : UH6 = UH6_0(v2, v1)                                         │

00:00:35 #4917 [Verbose] > │         method16(v3, v4)                                                     │

00:00:35 #4918 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:35 #4919 [Verbose] > │         v1                                                                   │

00:00:35 #4920 [Verbose] > │ and method18 (v0 : UH1, v1 : UH1) : UH1 =                                    │

00:00:35 #4921 [Verbose] > │     match v0 with                                                            │

00:00:35 #4922 [Verbose] > │     | UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:35 #4923 [Verbose] > │         let v12 : UH1 = UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:35 #4924 [Verbose] > │         method18(v11, v12)                                                   │

00:00:35 #4925 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:35 #4926 [Verbose] > │         v1                                                                   │

00:00:35 #4927 [Verbose] > │ and method17 (v0 : UH1, v1 : UH1, v2 : UH1) : UH1 =                          │

00:00:35 #4928 [Verbose] > │     match v1 with                                                            │

00:00:35 #4929 [Verbose] > │     | UH1_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:35 #4930 [Verbose] > │         match v2 with                                                        │

00:00:35 #4931 [Verbose] > │         | UH1_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │

00:00:35 #4932 [Verbose] > │ *)                                                                           │

00:00:35 #4933 [Verbose] > │             let v23 : float = v3 + v13                                       │

00:00:35 #4934 [Verbose] > │             let v24 : float = v4 + v14                                       │

00:00:35 #4935 [Verbose] > │             let v25 : float = v8 + v18                                       │

00:00:35 #4936 [Verbose] > │             let v26 : float = v5 + v15                                       │

00:00:35 #4937 [Verbose] > │             let v27 : float = v6 + v16                                       │

00:00:35 #4938 [Verbose] > │             let v28 : float = v7 + v17                                       │

00:00:35 #4939 [Verbose] > │             let v29 : float = v9 + v19                                       │

00:00:35 #4940 [Verbose] > │             let v30 : float = v10 + v20                                      │

00:00:35 #4941 [Verbose] > │             let v31 : float = v11 + v21                                      │

00:00:35 #4942 [Verbose] > │             let v32 : UH1 = UH1_0(v23, v24, v26, v27, v28, v25, v29, v30,    │

00:00:35 #4943 [Verbose] > │ v31, v0)                                                                     │

00:00:35 #4944 [Verbose] > │             method17(v32, v12, v22)                                          │

00:00:35 #4945 [Verbose] > │         | _ ->                                                               │

00:00:35 #4946 [Verbose] > │             let v34 : UH1 = UH1_1                                            │

00:00:35 #4947 [Verbose] > │             method18(v0, v34)                                                │

00:00:35 #4948 [Verbose] > │     | _ ->                                                                   │

00:00:35 #4949 [Verbose] > │         let v37 : UH1 = UH1_1                                                │

00:00:35 #4950 [Verbose] > │         method18(v0, v37)                                                    │

00:00:35 #4951 [Verbose] > │ and closure8 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =              │

00:00:35 #4952 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:35 #4953 [Verbose] > │     let v4 : float = v0 / 2.0                                                │

00:00:35 #4954 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:35 #4955 [Verbose] > │     let v6 : UH0 = method1(v4, v5, v3, v2)                                   │

00:00:35 #4956 [Verbose] > │     let v7 : UH1 = v1 v6                                                     │

00:00:35 #4957 [Verbose] > │     let v8 : UH0 = UH0_1                                                     │

00:00:35 #4958 [Verbose] > │     let v9 : UH0 = method1(v4, v8, v7, v2)                                   │

00:00:35 #4959 [Verbose] > │     let v10 : UH1 = v1 v9                                                    │

00:00:35 #4960 [Verbose] > │     let v11 : UH0 = UH0_1                                                    │

00:00:35 #4961 [Verbose] > │     let v12 : UH0 = method1(v0, v11, v10, v2)                                │

00:00:35 #4962 [Verbose] > │     let v13 : UH1 = v1 v12                                                   │

00:00:35 #4963 [Verbose] > │     let v14 : float = v0 / 6.0                                               │

00:00:35 #4964 [Verbose] > │     let v15 : UH1 = UH1_1                                                    │

00:00:35 #4965 [Verbose] > │     let v16 : UH1 = method17(v15, v3, v7)                                    │

00:00:35 #4966 [Verbose] > │     let v17 : UH1 = UH1_1                                                    │

00:00:35 #4967 [Verbose] > │     let v18 : UH1 = method17(v17, v16, v7)                                   │

00:00:35 #4968 [Verbose] > │     let v19 : UH1 = UH1_1                                                    │

00:00:35 #4969 [Verbose] > │     let v20 : UH1 = method17(v19, v18, v10)                                  │

00:00:35 #4970 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:35 #4971 [Verbose] > │     let v22 : UH1 = method17(v21, v20, v10)                                  │

00:00:35 #4972 [Verbose] > │     let v23 : UH1 = UH1_1                                                    │

00:00:35 #4973 [Verbose] > │     let v24 : UH1 = method17(v23, v22, v13)                                  │

00:00:35 #4974 [Verbose] > │     let v25 : UH0 = UH0_1                                                    │

00:00:35 #4975 [Verbose] > │     let v26 : UH0 = method1(v14, v25, v24, v2)                               │

00:00:35 #4976 [Verbose] > │     v26                                                                      │

00:00:35 #4977 [Verbose] > │ and closure7 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =               │

00:00:35 #4978 [Verbose] > │     closure8(v0, v1)                                                         │

00:00:35 #4979 [Verbose] > │ and closure6 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =              │

00:00:35 #4980 [Verbose] > │     closure7(v0)                                                             │

00:00:35 #4981 [Verbose] > │ and method19 (v0 : UH4, v1 : UH5) : UH5 =                                    │

00:00:35 #4982 [Verbose] > │     match v0 with                                                            │

00:00:35 #4983 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:35 #4984 [Verbose] > │         let v4 : UH5 = method19(v3, v1)                                      │

00:00:35 #4985 [Verbose] > │         let v18 : US0 =                                                      │

00:00:35 #4986 [Verbose] > │             match v2 with                                                    │

00:00:35 #4987 [Verbose] > │             | UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons  │

00:00:35 #4988 [Verbose] > │ *)                                                                           │

00:00:35 #4989 [Verbose] > │                 US0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13)                │

00:00:35 #4990 [Verbose] > │             | UH0_1 -> (* Nil *)                                             │

00:00:35 #4991 [Verbose] > │                 US0_0                                                        │

00:00:35 #4992 [Verbose] > │         let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50  │

00:00:35 #4993 [Verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) =               │

00:00:35 #4994 [Verbose] > │             match v18 with                                                   │

00:00:35 #4995 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:35 #4996 [Verbose] > │                 failwith<struct (float * float * float * float * float *     │

00:00:35 #4997 [Verbose] > │ float * float * float * float)> "Option does not have a value."              │

00:00:35 #4998 [Verbose] > │             | US0_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some  │

00:00:35 #4999 [Verbose] > │ *)                                                                           │

00:00:35 #5000 [Verbose] > │                 struct (v19, v20, v21, v22, v23, v24, v25, v26, v27)         │

00:00:35 #5001 [Verbose] > │         let v55 : UH6 = UH6_1                                                │

00:00:35 #5002 [Verbose] > │         let v56 : UH6 = method13(v2, v55)                                    │

00:00:35 #5003 [Verbose] > │         let v57 : float = 0.0                                                │

00:00:35 #5004 [Verbose] > │         let v58 : float = method14(v56, v57)                                 │

00:00:35 #5005 [Verbose] > │         UH5_0(v51, v58, v4)                                                  │

00:00:35 #5006 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:35 #5007 [Verbose] > │         v1                                                                   │

00:00:35 #5008 [Verbose] > │ and method21 (v0 : UH6, v1 : int32) : int32 =                                │

00:00:35 #5009 [Verbose] > │     match v0 with                                                            │

00:00:35 #5010 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:35 #5011 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:35 #5012 [Verbose] > │         method21(v3, v4)                                                     │

00:00:35 #5013 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:35 #5014 [Verbose] > │         v1                                                                   │

00:00:35 #5015 [Verbose] > │ and method22 (v0 : (float []), v1 : UH6, v2 : int32) : int32 =               │

00:00:35 #5016 [Verbose] > │     match v1 with                                                            │

00:00:35 #5017 [Verbose] > │     | UH6_0(v3, v4) -> (* Cons *)                                            │

00:00:35 #5018 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:35 #5019 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:35 #5020 [Verbose] > │         method22(v0, v4, v5)                                                 │

00:00:35 #5021 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:35 #5022 [Verbose] > │         v2                                                                   │

00:00:35 #5023 [Verbose] > │ and method20 (v0 : UH6) : (float []) =                                       │

00:00:35 #5024 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:35 #5025 [Verbose] > │     let v2 : int32 = method21(v0, v1)                                        │

00:00:35 #5026 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:35 #5027 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:35 #5028 [Verbose] > │     let v5 : int32 = method22(v3, v0, v4)                                    │

00:00:35 #5029 [Verbose] > │     v3                                                                       │

00:00:35 #5030 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:35 #5031 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:35 #5032 [Verbose] > │     let v0 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure0()          │

00:00:35 #5033 [Verbose] > │     let v1 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v0 0.03                        │

00:00:35 #5034 [Verbose] > │     let v2 : (UH0 -> UH1) = closure3()                                       │

00:00:35 #5035 [Verbose] > │     let v3 : (UH0 -> UH0) = v1 v2                                            │

00:00:35 #5036 [Verbose] > │     let v4 : UH4 = UH4_1                                                     │

00:00:35 #5037 [Verbose] > │     let v5 : int32 = 0                                                       │

00:00:35 #5038 [Verbose] > │     let v6 : UH4 = method9(v3, v4, v5)                                       │

00:00:35 #5039 [Verbose] > │     let v7 : UH5 = UH5_1                                                     │

00:00:35 #5040 [Verbose] > │     let v8 : UH5 = method12(v6, v7)                                          │

00:00:35 #5041 [Verbose] > │     let v9 : UH6 = UH6_1                                                     │

00:00:35 #5042 [Verbose] > │     let v10 : UH6 = UH6_1                                                    │

00:00:35 #5043 [Verbose] > │     let struct (v11 : UH6, v12 : UH6) = method15(v8, v9, v10)                │

00:00:35 #5044 [Verbose] > │     let v13 : UH6 = UH6_1                                                    │

00:00:35 #5045 [Verbose] > │     let v14 : UH6 = method16(v11, v13)                                       │

00:00:35 #5046 [Verbose] > │     let v15 : UH6 = UH6_1                                                    │

00:00:35 #5047 [Verbose] > │     let v16 : UH6 = method16(v12, v15)                                       │

00:00:35 #5048 [Verbose] > │     let v17 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure6()         │

00:00:35 #5049 [Verbose] > │     let v18 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v17 0.03                      │

00:00:35 #5050 [Verbose] > │     let v19 : (UH0 -> UH0) = v18 v2                                          │

00:00:35 #5051 [Verbose] > │     let v20 : UH4 = UH4_1                                                    │

00:00:35 #5052 [Verbose] > │     let v21 : int32 = 0                                                      │

00:00:35 #5053 [Verbose] > │     let v22 : UH4 = method9(v19, v20, v21)                                   │

00:00:35 #5054 [Verbose] > │     let v23 : UH5 = UH5_1                                                    │

00:00:35 #5055 [Verbose] > │     let v24 : UH5 = method19(v22, v23)                                       │

00:00:35 #5056 [Verbose] > │     let v25 : UH6 = UH6_1                                                    │

00:00:35 #5057 [Verbose] > │     let v26 : UH6 = UH6_1                                                    │

00:00:35 #5058 [Verbose] > │     let struct (v27 : UH6, v28 : UH6) = method15(v24, v25, v26)              │

00:00:35 #5059 [Verbose] > │     let v29 : UH6 = UH6_1                                                    │

00:00:35 #5060 [Verbose] > │     let v30 : UH6 = method16(v27, v29)                                       │

00:00:35 #5061 [Verbose] > │     let v31 : UH6 = UH6_1                                                    │

00:00:35 #5062 [Verbose] > │     let v32 : UH6 = method16(v28, v31)                                       │

00:00:35 #5063 [Verbose] > │     let v33 : (float []) = method20(v14)                                     │

00:00:35 #5064 [Verbose] > │     let v34 : (float []) = method20(v16)                                     │

00:00:35 #5065 [Verbose] > │     let v35 : (float []) = method20(v30)                                     │

00:00:35 #5066 [Verbose] > │     let v36 : (float []) = method20(v32)                                     │

00:00:35 #5067 [Verbose] > │     let v37 : string = "euler-cromer"                                        │

00:00:35 #5068 [Verbose] > │     let v38 : string = "runge-kutta 4"                                       │

00:00:35 #5069 [Verbose] > │     let v39 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:35 #5070 [Verbose] > │ (v37, v33, v34); struct (v38, v35, v36)|]                                    │

00:00:35 #5071 [Verbose] > │     let v40 : string = "system kinetic energy versus time"                   │

00:00:35 #5072 [Verbose] > │     let v41 : string = "time (s)"                                            │

00:00:35 #5073 [Verbose] > │     let v42 : string = "system kinetic energy (j)"                           │

00:00:35 #5074 [Verbose] > │     struct (v40, v41, v42, v39)                                              │

00:00:35 #5075 [Verbose] > │ method0()                                                                    │

00:00:35 #5076 [Verbose] > │                                                                              │

00:00:35 #5077 [Verbose] > │                                                                              │

00:00:35 #5078 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:35 #5079 [Verbose] >

00:00:35 #5080 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:35 #5081 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:35 #5082 [Verbose] > │ ### wave 1                                                                   │

00:00:35 #5083 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:35 #5084 [Verbose] >

00:00:35 #5085 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:35 #5086 [Verbose] > // // test

00:00:35 #5087 [Verbose] >

00:00:35 #5088 [Verbose] > inl linear_spring k re (particle_state st1) (particle_state st2) =

00:00:35 #5089 [Verbose] >     inl r1 = st1.pos_vec

00:00:35 #5090 [Verbose] >     inl r2 = st2.pos_vec

00:00:35 #5091 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:35 #5092 [Verbose] >     inl r21mag = magnitude r21

00:00:35 #5093 [Verbose] >     -k * (r21mag - re) *^ r21 ^/ r21mag

00:00:35 #5094 [Verbose] >

00:00:35 #5095 [Verbose] > inl fixed_linear_spring k re r1 =

00:00:35 #5096 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:35 #5097 [Verbose] >     linear_spring k re (particle_state { default_particle_state' with pos_vec =

00:00:35 #5098 [Verbose] > r1 })

00:00:35 #5099 [Verbose] >

00:00:35 #5100 [Verbose] > inl forces_string () =

00:00:35 #5101 [Verbose] >     [[

00:00:35 #5102 [Verbose] >         ExternalForce (0, fixed_linear_spring 5384 0 (zero_vec ()))

00:00:35 #5103 [Verbose] >         ExternalForce (63, fixed_linear_spring 5384 0 (0.65 *^ i_hat ()))

00:00:35 #5104 [Verbose] >     ]] /@ (

00:00:35 #5105 [Verbose] >         listm'.init_series 0 59 1

00:00:35 #5106 [Verbose] >         |> listm.map (fun n => InternalForce (n, n + 1, linear_spring 5384 0))

00:00:35 #5107 [Verbose] >     )

00:00:35 #5108 [Verbose] >

00:00:35 #5109 [Verbose] > inl string_update dt =

00:00:35 #5110 [Verbose] >     update_mps (runge_kutta_4 dt) (forces_string ())

00:00:35 #5111 [Verbose] >

00:00:35 #5112 [Verbose] > inl string_initial_overtone n =

00:00:35 #5113 [Verbose] >     inl ball_mass = 0.0008293 * 0.65 / 64

00:00:35 #5114 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:35 #5115 [Verbose] >     listm'.init_series 0.01 0.64 0.01

00:00:35 #5116 [Verbose] >     |> listm.map (fun x =>

00:00:35 #5117 [Verbose] >         inl y = 0.005 * sin (conv n * pi * x / 0.65)

00:00:35 #5118 [Verbose] >         particle_state {

00:00:35 #5119 [Verbose] >             default_particle_state' with

00:00:35 #5120 [Verbose] >                 mass = ball_mass

00:00:35 #5121 [Verbose] >                 pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()

00:00:35 #5122 [Verbose] >                 velocity = zero_vec ()

00:00:35 #5123 [Verbose] >         }

00:00:35 #5124 [Verbose] >     )

00:00:35 #5125 [Verbose] >     |> multi_particle_state

00:00:35 #5126 [Verbose] >

00:00:35 #5127 [Verbose] > inl string_initial_pluck () =

00:00:35 #5128 [Verbose] >     inl ball_mass = 0.0008293 * 0.65 / 64

00:00:35 #5129 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:35 #5130 [Verbose] >     listm'.init_series 0.01 0.64 0.01

00:00:35 #5131 [Verbose] >     |> listm.map (fun x =>

00:00:35 #5132 [Verbose] >         inl y =

00:00:35 #5133 [Verbose] >             inl n = if x <= 0.51 then 0 else 0.65

00:00:35 #5134 [Verbose] >             0.005 / (0.51 - n) * (x - n)

00:00:35 #5135 [Verbose] >         particle_state {

00:00:35 #5136 [Verbose] >             default_particle_state' with

00:00:35 #5137 [Verbose] >                 mass = ball_mass

00:00:35 #5138 [Verbose] >                 pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()

00:00:35 #5139 [Verbose] >                 velocity = zero_vec ()

00:00:35 #5140 [Verbose] >         }

00:00:35 #5141 [Verbose] >     )

00:00:35 #5142 [Verbose] >     |> multi_particle_state

00:00:35 #5143 [Verbose] >

00:00:35 #5144 [Verbose] > let main () =

00:00:35 #5145 [Verbose] >     inl ~frames = listm'.init_series 0 9 1f64

00:00:35 #5146 [Verbose] >     inl initial_state = string_initial_overtone 3i32

00:00:35 #5147 [Verbose] >     inl frames =

00:00:35 #5148 [Verbose] >         frames

00:00:35 #5149 [Verbose] >         |> listm.map (fun n =>

00:00:35 #5150 [Verbose] >             inl (multi_particle_state sts) =

00:00:35 #5151 [Verbose] >                 seq.iterate' (string_update 0.000025) initial_state |> fun f =>

00:00:35 #5152 [Verbose] > f 0f64

00:00:35 #5153 [Verbose] >             inl rs =

00:00:35 #5154 [Verbose] >                 [[ zero_vec () ]]

00:00:35 #5155 [Verbose] >                 /@ (sts |> listm.map (fun (particle_state st) => st.pos_vec))

00:00:35 #5156 [Verbose] >                 /@ [[ 0.65 *^ i_hat () ]]

00:00:35 #5157 [Verbose] >             inl x, y =

00:00:35 #5158 [Verbose] >                 rs

00:00:35 #5159 [Verbose] >                 |> listm.map (fun r => r.x, r.y)

00:00:35 #5160 [Verbose] >                 |> listm'.unzip

00:00:35 #5161 [Verbose] >             inl x : a i32 _ = x |> listm.toArray

00:00:35 #5162 [Verbose] >             inl y : a i32 _ = y |> listm.toArray

00:00:35 #5163 [Verbose] >             x, y

00:00:35 #5164 [Verbose] >         )

00:00:35 #5165 [Verbose] >         |> listm.toArray : a i32 _

00:00:35 #5166 [Verbose] >

00:00:35 #5167 [Verbose] >     inl n = 0i32

00:00:35 #5168 [Verbose] >

00:00:35 #5169 [Verbose] >     inl x, y = index frames n

00:00:35 #5170 [Verbose] >

00:00:35 #5171 [Verbose] >     "wave",

00:00:35 #5172 [Verbose] >     "position (m)",

00:00:35 #5173 [Verbose] >     "displacement (m)",

00:00:35 #5174 [Verbose] >     ;[[

00:00:35 #5175 [Verbose] >         ($"$\"{!n}\"" : string), x, y

00:00:35 #5176 [Verbose] >     ]]

00:00:35 #5177 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0373-7378-76c21f6af773\main.spi

00:00:35 #5178 [Verbose] > Stack overflow.

00:00:35 #5179 [Verbose] > Repeat 4 times:

00:00:35 #5180 [Verbose] > --------------------------------

00:00:35 #5181 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5182 [Verbose] > --------------------------------

00:00:35 #5183 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5184 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5185 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5186 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5187 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5188 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5189 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5190 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5191 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5192 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5193 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5194 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5195 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5196 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5197 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5198 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5199 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5200 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5201 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5202 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5203 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5204 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5205 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5206 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5207 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5208 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5209 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5210 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5211 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5212 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5213 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5214 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5215 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5216 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5217 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5218 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5219 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5220 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5221 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5222 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5223 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5224 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5225 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5226 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5227 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5228 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5229 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5230 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5231 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5232 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5233 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5234 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5235 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5236 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5237 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5238 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5239 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5240 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5241 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5242 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5243 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5244 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5245 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5246 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5247 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5248 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5249 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5250 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5251 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5252 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5253 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5254 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5255 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5256 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5257 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5258 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5259 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5260 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5261 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5262 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5263 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5264 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5265 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5266 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5267 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5268 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5269 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5270 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5271 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5272 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5273 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5274 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5275 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5276 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5277 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5278 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5279 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5280 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5281 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5282 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5283 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5284 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5285 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5286 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5287 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5288 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5289 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5290 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5291 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5292 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5293 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5294 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5295 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5296 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5297 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5298 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5299 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5300 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5301 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5302 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5303 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5304 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5305 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5306 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5307 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5308 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5309 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5310 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5311 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5312 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5313 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5314 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5315 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5316 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5317 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5318 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5319 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5320 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5321 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5322 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5323 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5324 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5325 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5326 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5327 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5328 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5329 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5330 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5331 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5332 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5333 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5334 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5335 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5336 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5337 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5338 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5339 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5340 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5341 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5342 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5343 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5344 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5345 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5346 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5347 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5348 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5349 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5350 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5351 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5352 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5353 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5354 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5355 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5356 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5357 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5358 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5359 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5360 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5361 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5362 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5363 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5364 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5365 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5366 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5367 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5368 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5369 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5370 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5371 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5372 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5373 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5374 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5375 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5376 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5377 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5378 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5379 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5380 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5381 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5382 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5383 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5384 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5385 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5386 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5387 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5388 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5389 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5390 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5391 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5392 [Verbose] >    at Spiral.PartEval.Main.body@1060-29(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, Microsoft.FSharp.Core.FSharpFunc`2<Boolean,Microsoft.FSharp.Core.FSharpFunc`2<LangEnv,Microsoft.FSharp.Core.FSharpFunc`2<Data,Data>>>, E, E, System.String, Int32, LangEnv, L`2<Int32,Ty>, H`1<<>f__AnonymousType3599534058`5<Microsoft.FSharp.Collections.FSharpMap`2<System.String,Ty>,Boolean,UnionLayout,System.Tuple`2<System.String,Ty>[],System.Collections.Generic.Dictionary`2<System.String,Int32>>>, Microsoft.FSharp.Collections.FSharpSet`1<System.String>)

00:00:35 #5393 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5394 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5395 [Verbose] >    at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5396 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5397 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5398 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5399 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5400 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5401 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5402 [Verbose] >    at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5403 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5404 [Verbose] >    at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)

00:00:35 #5405 [Verbose] >    at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5406 [Verbose] >    at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5407 [Verbose] >    at Spiral.PartEval.Main.term_scope@579(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)

00:00:35 #5408 [Verbose] >    at Spiral.PartEval.Main.peval(TopEnv, E)

00:00:35 #5409 [Verbose] >    at Spiral.Supervisor.file_build$cont@383(System.String, SupervisorState, PrepassTopEnv, Microsoft.FSharp.Core.FSharpOption`1<E>, Microsoft.FSharp.Core.Unit)

00:00:35 #5410 [Verbose] >    at Spiral.Supervisor.x2yJ@1-28(SupervisorErrorSources, System.String, System.String, SupervisorState, PrepassTopEnv)

00:00:35 #5411 [Verbose] >    at Spiral.Supervisor+x2yJ@380-41.Do(PrepassTopEnv)

00:00:35 #5412 [Verbose] >    at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5413 [Verbose] >    at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5414 [Verbose] >    at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5415 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5416 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5417 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5418 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5419 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5420 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5421 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5422 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5423 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5424 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5425 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5426 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5427 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5428 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5429 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5430 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5431 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5432 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5433 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5434 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5435 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5436 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5437 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5438 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5439 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5440 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5441 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5442 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5443 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5444 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5445 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5446 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5447 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5448 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5449 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5450 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5451 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5452 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5453 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5454 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5455 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5456 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5457 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5458 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5459 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5460 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5461 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5462 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5463 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5464 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5465 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5466 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5467 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5468 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5469 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5470 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5471 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5472 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5473 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5474 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5475 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5476 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5477 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5478 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5479 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5480 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5481 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5482 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5483 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5484 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5485 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5486 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5487 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5488 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5489 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5490 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5491 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5492 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5493 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5494 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5495 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5496 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5497 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5498 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5499 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5500 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5501 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5502 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5503 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5504 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5505 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5506 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5507 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5508 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5509 [Verbose] >    at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)

00:00:35 #5510 [Verbose] >    at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5511 [Verbose] >    at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5512 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5513 [Verbose] >    at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)

00:00:35 #5514 [Verbose] >    at Hopac.Core.Worker.Run(Hopac.Scheduler, Int32)

00:00:35 #5515 [Verbose] >    at Hopac.Platform.Scheduler+thread@30.Invoke()

00:00:35 #5516 [Verbose] >    at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)

00:00:42 #5517 [Debug] executeAsync / exitCode: -1073741571 / output.Length: 184850

00:00:42 #5518 [Debug] awaitCompiler / exitCode: -1073741571 / result: pwd: C:\home\git\polyglot\lib\spiral

dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

Server bound to: http://localhost:13805

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4347-4796-4e38a595efc2\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4535-3511-33a7e24bfa2f\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4559-5995-570c7e0d13f0\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4603-0383-0a02605bf2d8\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4627-2777-2568dd4b228c\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4649-4955-4a4fc44b7855\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4665-6573-679d961b95d0\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4682-8224-8f0324c8673c\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4703-0377-04c5fc06c6f9\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4717-1733-1bb582df1517\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4735-3501-3716c85c78c9\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4752-5282-5c56ec0cd449\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4769-6916-6ba97a081122\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4784-8462-837c76d5f7b3\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4800-0012-0c7f1004d754\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4816-1614-1cf2fc752c92\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4848-4806-4008b026bd73\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4865-6529-6ca6bdf23d91\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4892-9292-9595fb5cb837\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4907-0748-02d23667fab7\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4929-2909-2c6197c1b32d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-4982-8239-8ddb8ff0f067\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5000-0014-0b415225b75d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5017-1734-1e60bbd74247\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5094-9460-97c4ba2e3ce3\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5112-1205-189bea9774e2\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5153-5378-5c742776fde4\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5170-7016-7779910b23e0\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5196-9652-9c12492d2769\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5226-2661-225e57eb5c47\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5246-4699-4313761607f4\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5291-9179-9ed99de7fdae\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5309-0982-0a03bec1d995\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5332-3206-3c610e12d526\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5368-6822-60f928c2e242\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5386-8606-87334633a383\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5409-0990-0e16a9c9568b\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5426-2606-2700b6701d78\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5443-4318-4d7177f4a9f2\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5458-5850-500ed442279d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5476-7635-794201beeaaa\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5496-9618-9fa48d194b18\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5514-1405-1507e63f9efd\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5531-3150-38ba873d3988\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5546-4663-4e4f6deca979\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5562-6283-6f1804f3d052\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5579-7919-77e89edb33c1\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5600-0007-0de4bebcc820\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5620-2061-2c89888c2444\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5640-4022-4c95cf0ff7f5\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5660-6059-6042f7cbb9e7\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5681-8178-82f1956d9b7c\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5701-0110-055905e6a321\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5737-3741-3bce9fbdcb9b\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5753-5356-50fe7c2e0300\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5770-7079-78934341696d\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5789-8912-84a7d4ad86e2\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5808-0883-0c1a07b721db\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5823-2363-21706e122531\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5838-3882-38f560afc32a\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5856-5672-528df4a590ba\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5876-7670-7124729629ba\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1303-5981-8150-861031d36221\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0045-4550-4617b6e17196\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0061-6140-6045170615b3\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0131-3159-32fe99cfdb17\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0148-4883-48c437b06b14\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0218-1843-1257a42adeb8\main.spi

Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-0373-7378-76c21f6af773\main.spi

[Stack overflow.]

[Repeat 4 times:]

[--------------------------------]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[--------------------------------]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.body@1060-29(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, Microsoft.FSharp.Core.FSharpFunc`2<Boolean,Microsoft.FSharp.Core.FSharpFunc`2<LangEnv,Microsoft.FSharp.Core.FSharpFunc`2<Data,Data>>>, E, E, System.String, Int32, LangEnv, L`2<Int32,Ty>, H`1<<>f__AnonymousType3599534058`5<Microsoft.FSharp.Collections.FSharpMap`2<System.String,Ty>,Boolean,UnionLayout,System.Tuple`2<System.String,Ty>[],System.Collections.Generic.Dictionary`2<System.String,Int32>>>, Microsoft.FSharp.Collections.FSharpSet`1<System.String>)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, Byte ByRef, System.Runtime.CompilerServices.PortableTailCallFrame*), Byte ByRef)]

[   at Spiral.PartEval.Main.term@684-65(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope''@574(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.term_scope@579(TopEnv, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`2<RData[],Ty[]>>,System.Tuple`3<Microsoft.FSharp.Core.FSharpOption`1<TypedBind[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>,Microsoft.FSharp.Core.FSharpOption`1<System.String>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<E,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<System.Tuple`4<RData[],Ty[],Ty,Ty>>,Microsoft.FSharp.Core.FSharpOption`1<System.Tuple`2<Data,TypedBind[]>>>,HashConsTable>>, System.Collections.Generic.Dictionary`2<T,System.Tuple`2<System.Collections.Generic.Dictionary`2<ConsedNode`1<Ty[]>,Microsoft.FSharp.Core.FSharpOption`1<Ty>>,HashConsTable>>, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit,Microsoft.FSharp.Core.Unit>>, LangEnv, E)]

[   at Spiral.PartEval.Main.peval(TopEnv, E)]

[   at Spiral.Supervisor.file_build$cont@383(System.String, SupervisorState, PrepassTopEnv, Microsoft.FSharp.Core.FSharpOption`1<E>, Microsoft.FSharp.Core.Unit)]

[   at Spiral.Supervisor.x2yJ@1-28(SupervisorErrorSources, System.String, System.String, SupervisorState, PrepassTopEnv)]

[   at Spiral.Supervisor+x2yJ@380-41.Do(PrepassTopEnv)]

[   at Hopac.Core.ContBind`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Job+result@1000-1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.ContMap`2[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoCont(Hopac.Core.Worker ByRef, System.__Canon)]

[   at Hopac.Core.JobThunk`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Job.Do[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]](Hopac.Job`1<System.__Canon>, Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Promise`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].DoJob(Hopac.Core.Worker ByRef, Hopac.Core.Cont`1<System.__Canon>)]

[   at Hopac.Core.Worker.Run(Hopac.Scheduler, Int32)]

[   at Hopac.Platform.Scheduler+thread@30.Invoke()]

[   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)]

00:00:42 #5519 [Warning] executeAsync / WaitForExitAsync / ex: System.Threading.Tasks.TaskCanceledException: A task was canceled.

00:00:42 #5520 [Debug] executeAsync / exitCode: -2147483648 / output.Length: 329047

00:00:42 #5521 [Debug] main / executeCommand / exitCode: -2147483648


# Invoke-Block / $Retries: 4 / $OnError: Stop / $exitcode: -2147483648 / $EnvVars: null / $Error: '' / $ScriptBlock:
'. ../../apps/spiral/dist/Supervisor$(GetExecutableSuffix) --executecommand "pwsh -c `"../../scripts/invoke-dib.ps1 physics.dib`""'


00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\lib\spiral

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 physics.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # physics                                                                    │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > #!import ../../lib/fsharp/Plotting.dib

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:03 #21 [Verbose] > #r

00:00:03 #22 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

00:00:03 #23 [Verbose] > spNetCore.Html.Abstractions.dll"

00:00:03 #24 [Verbose] > #r

00:00:03 #25 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #26 [Verbose] > otNet.Interactive.dll"

00:00:03 #27 [Verbose] > #r

00:00:03 #28 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #29 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:03 #30 [Verbose] > #r

00:00:03 #31 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #32 [Verbose] > otNet.Interactive.Formatting.dll"

00:00:03 #33 [Verbose] > open System

00:00:03 #34 [Verbose] > open System.IO

00:00:03 #35 [Verbose] > open System.Text

00:00:03 #36 [Verbose] > open Microsoft.DotNet.Interactive.Formatting

00:00:06 #37 [Verbose] >

00:00:06 #38 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:06 #39 [Verbose] > #r

00:00:06 #40 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:06 #41 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:06 #42 [Verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

00:00:06 #43 [Verbose] > #r

00:00:06 #44 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:06 #45 [Verbose] > otNet.Interactive.dll"

00:00:06 #46 [Verbose] > open type Microsoft.DotNet.Interactive.Kernel

00:00:07 #47 [Verbose] >

00:00:07 #48 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #49 [Verbose] > //// test

00:00:07 #50 [Verbose] >

00:00:07 #51 [Verbose] > Formatter.ListExpansionLimit <- 100

00:00:07 #52 [Verbose] >

00:00:07 #53 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #54 [Verbose] > #r

00:00:07 #55 [Verbose] > @"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

00:00:07 #56 [Verbose] > dard2.1/FSharp.Control.AsyncSeq.dll"

00:00:07 #57 [Verbose] > #r

00:00:07 #58 [Verbose] > @"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

00:00:07 #59 [Verbose] > 0/System.Reactive.dll"

00:00:07 #60 [Verbose] > #r

00:00:07 #61 [Verbose] > @"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib

00:00:07 #62 [Verbose] > netstandard2.0/System.Reactive.Linq.dll"

00:00:07 #63 [Verbose] > #r

00:00:07 #64 [Verbose] > @"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

00:00:07 #65 [Verbose] > #r

00:00:07 #66 [Verbose] > @"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

00:00:07 #67 [Verbose] > b/net6.0/System.CommandLine.dll"

00:00:07 #68 [Verbose] > #r

00:00:07 #69 [Verbose] > @"../../../../../../../.nuget/packages/fsharp.json/0.4.1/lib/netstandard2.0/FSha

00:00:07 #70 [Verbose] > rp.Json.dll"

00:00:07 #71 [Verbose] >

00:00:07 #72 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #73 [Verbose] > #if !INTERACTIVE

00:00:07 #74 [Verbose] > namespace Polyglot

00:00:07 #75 [Verbose] > #endif

00:00:07 #76 [Verbose] >

00:00:07 #77 [Verbose] > module Common =

00:00:07 #78 [Verbose] >

00:00:07 #79 [Verbose] >     let nl = System.Environment.NewLine

00:00:07 #80 [Verbose] >     let q = @""""

00:00:07 #81 [Verbose] >

00:00:07 #82 [Verbose] >     let inline cons head tail = head :: tail

00:00:07 #83 [Verbose] >

00:00:07 #84 [Verbose] >     module String =

00:00:07 #85 [Verbose] >         let inline contains (value : string) (input : string) =

00:00:07 #86 [Verbose] >             input.Contains value

00:00:07 #87 [Verbose] >

00:00:07 #88 [Verbose] >         let inline endsWith (value : string) (input : string) =

00:00:07 #89 [Verbose] >             input.EndsWith value

00:00:07 #90 [Verbose] >

00:00:07 #91 [Verbose] >         let inline padLeft totalWidth paddingChar (input : string) =

00:00:07 #92 [Verbose] >             input.PadLeft (totalWidth, paddingChar)

00:00:07 #93 [Verbose] >

00:00:07 #94 [Verbose] >         let inline replace (oldValue : string) (newValue : string) (input :

00:00:07 #95 [Verbose] > string) =

00:00:07 #96 [Verbose] >             input.Replace (oldValue, newValue)

00:00:07 #97 [Verbose] >

00:00:07 #98 [Verbose] >         let inline split separator (input : string) =

00:00:07 #99 [Verbose] >             input.Split separator

00:00:07 #100 [Verbose] >

00:00:07 #101 [Verbose] >         let inline spli...

00:00:09 #102 [Verbose] >

00:00:09 #103 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #104 [Verbose] > #if !INTERACTIVE

00:00:09 #105 [Verbose] > namespace Polyglot

00:00:09 #106 [Verbose] > #endif

00:00:09 #107 [Verbose] >

00:00:09 #108 [Verbose] > module CommonFSharp =

00:00:09 #109 [Verbose] >

00:00:09 #110 [Verbose] >     open Common

00:00:09 #111 [Verbose] >

00:00:09 #112 [Verbose] >     /// ## getUnionCaseName

00:00:09 #113 [Verbose] >

00:00:09 #114 [Verbose] >     let inline getUnionCaseName<'T> (x: 'T) =

00:00:09 #115 [Verbose] >         match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

00:00:09 #116 [Verbose] >         | case, _ -> case.Name

00:00:09 #117 [Verbose] >

00:00:09 #118 [Verbose] >

00:00:09 #119 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #120 [Verbose] > #if !INTERACTIVE

00:00:09 #121 [Verbose] > namespace Polyglot

00:00:09 #122 [Verbose] > #endif

00:00:09 #123 [Verbose] >

00:00:09 #124 [Verbose] > module Crypto =

00:00:09 #125 [Verbose] >

00:00:09 #126 [Verbose] >     open Common

00:00:09 #127 [Verbose] >

00:00:09 #128 [Verbose] >     /// ## hashText

00:00:09 #129 [Verbose] >

00:00:09 #130 [Verbose] >     let hashText (input : string) =

00:00:09 #131 [Verbose] >         use sha256 = System.Security.Cryptography.SHA256.Create ()

00:00:09 #132 [Verbose] >         input

00:00:09 #133 [Verbose] >         |> System.Text.Encoding.UTF8.GetBytes

00:00:09 #134 [Verbose] >         |> sha256.ComputeHash

00:00:09 #135 [Verbose] >         |> Array.map (fun b -> b.ToString "x2")

00:00:09 #136 [Verbose] >         |> String.concat ""

00:00:09 #137 [Verbose] >

00:00:09 #138 [Verbose] >

00:00:09 #139 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #140 [Verbose] > #if !INTERACTIVE

00:00:09 #141 [Verbose] > namespace Polyglot

00:00:09 #142 [Verbose] > #endif

00:00:09 #143 [Verbose] >

00:00:09 #144 [Verbose] > module Async =

00:00:09 #145 [Verbose] >

00:00:09 #146 [Verbose] >     open Common

00:00:09 #147 [Verbose] >

00:00:09 #148 [Verbose] >     /// ## choice

00:00:09 #149 [Verbose] >

00:00:09 #150 [Verbose] >     let inline choice asyncs = async {

00:00:09 #151 [Verbose] >         let e = Event<_> ()

00:00:09 #152 [Verbose] >         use cts = new System.Threading.CancellationTokenSource ()

00:00:09 #153 [Verbose] >         let fn =

00:00:09 #154 [Verbose] >             asyncs

00:00:09 #155 [Verbose] >             |> Seq.map (fun a -> async {

00:00:09 #156 [Verbose] >                 let! x = a

00:00:09 #157 [Verbose] >                 e.Trigger x

00:00:09 #158 [Verbose] >             })

00:00:09 #159 [Verbose] >             |> Async.Parallel

00:00:09 #160 [Verbose] >             |> Async.Ignore

00:00:09 #161 [Verbose] >         Async.Start (fn, cts.Token)

00:00:09 #162 [Verbose] >         let! result = Async.AwaitEvent e.Publish

00:00:09 #163 [Verbose] >         cts.Cancel ()

00:00:09 #164 [Verbose] >         return result

00:00:09 #165 [Verbose] >     }

00:00:09 #166 [Verbose] >

00:00:09 #167 [Verbose] >     /// ## map

00:00:09 #168 [Verbose] >

00:00:09 #169 [Verbose] >     let inline map fn a = async {

00:00:09 #170 [Verbose] >         let! x = a

00:00:09 #171 [Verbose] >         return fn x

00:00:09 #172 [Verbose] >     }

00:00:09 #173 [Verbose] >

00:00:09 #174 [Verbose] >     /// ## catch

00:00:09 #175 [Verbose] >

00:00:09 #176 [Verbose] >     let inline catch a =

00:00:09 #177 [Verbose] >         a

00:00:09 #178 [Verbose] >         |> Async.Catch

00:00:09 #179 [Verbose] >         ...

00:00:09 #180 [Verbose] >

00:00:09 #181 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #182 [Verbose] > #if !INTERACTIVE

00:00:09 #183 [Verbose] > namespace Polyglot

00:00:09 #184 [Verbose] > #endif

00:00:09 #185 [Verbose] >

00:00:09 #186 [Verbose] > module AsyncSeq =

00:00:09 #187 [Verbose] >

00:00:09 #188 [Verbose] >     open Common

00:00:09 #189 [Verbose] >

00:00:09 #190 [Verbose] >     /// ## subscribeEvent

00:00:09 #191 [Verbose] >

00:00:09 #192 [Verbose] >     let inline subscribeEvent (event: IEvent<'H, 'A>) map =

00:00:09 #193 [Verbose] >         let observable = System.Reactive.Linq.Observable.FromEventPattern<'H,

00:00:09 #194 [Verbose] > 'A>(event.AddHandler, event.RemoveHandler)

00:00:09 #195 [Verbose] >         System.Reactive.Linq.Observable.Select (observable, fun event -> map

00:00:09 #196 [Verbose] > event.EventArgs)

00:00:09 #197 [Verbose] >         |> FSharp.Control.AsyncSeq.ofObservableBuffered

00:00:09 #198 [Verbose] >

00:00:09 #199 [Verbose] >     let subscribeToken (token : System.Threading.CancellationToken) =

00:00:09 #200 [Verbose] >         let tcs = new System.Threading.Tasks.TaskCompletionSource ()

00:00:09 #201 [Verbose] >         System.Action tcs.SetResult |> token.Register |> ignore

00:00:09 #202 [Verbose] >         let start = System.DateTime.Now.Ticks

00:00:09 #203 [Verbose] >         FSharp.Control.AsyncSeq.unfoldAsync

00:00:09 #204 [Verbose] >             (fun (...

00:00:09 #205 [Verbose] >

00:00:09 #206 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #207 [Verbose] > #if !INTERACTIVE

00:00:09 #208 [Verbose] > namespace Polyglot

00:00:09 #209 [Verbose] > #endif

00:00:09 #210 [Verbose] >

00:00:09 #211 [Verbose] > module Networking =

00:00:09 #212 [Verbose] >

00:00:09 #213 [Verbose] >     open Common

00:00:09 #214 [Verbose] >

00:00:09 #215 [Verbose] >     /// ## testPortOpen

00:00:09 #216 [Verbose] >

00:00:09 #217 [Verbose] >     let inline testPortOpen port = async {

00:00:09 #218 [Verbose] >         let! ct = Async.CancellationToken

00:00:09 #219 [Verbose] >         use client = new System.Net.Sockets.TcpClient ()

00:00:09 #220 [Verbose] >         try

00:00:09 #221 [Verbose] >             do! client.ConnectAsync ("127.0.0.1", port, ct) |>

00:00:09 #222 [Verbose] > Async.awaitValueTaskUnit

00:00:09 #223 [Verbose] >             return true

00:00:09 #224 [Verbose] >         with ex ->

00:00:09 #225 [Verbose] >             trace Verbose (fun () -> $"testPortOpen / ex: {ex |>

00:00:09 #226 [Verbose] > printException}") getLocals

00:00:09 #227 [Verbose] >             return false

00:00:09 #228 [Verbose] >     }

00:00:09 #229 [Verbose] >

00:00:09 #230 [Verbose] >     let inline testPortOpenTimeout timeout port = async {

00:00:09 #231 [Verbose] >         let! result =

00:00:09 #232 [Verbose] >             testPortOpen port

00:00:09 #233 [Verbose] >             |> Async.runWithTimeoutAsync timeout

00:00:09 #234 [Verbose] >         return

00:00:09 #235 [Verbose] >             match result with

00:00:09 #236 [Verbose] >             | None -> false

00:00:09 #237 [Verbose] >  ...

00:00:10 #238 [Verbose] >

00:00:10 #239 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #240 [Verbose] > #if !INTERACTIVE

00:00:10 #241 [Verbose] > namespace Polyglot

00:00:10 #242 [Verbose] > #endif

00:00:10 #243 [Verbose] >

00:00:10 #244 [Verbose] > module Runtime =

00:00:10 #245 [Verbose] >

00:00:10 #246 [Verbose] >     open Common

00:00:10 #247 [Verbose] >

00:00:10 #248 [Verbose] >     /// ## isWindows

00:00:10 #249 [Verbose] >

00:00:10 #250 [Verbose] >     let isWindows =

00:00:10 #251 [Verbose] >         fun () ->

00:00:10 #252 [Verbose] >             System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

00:00:10 #253 [Verbose] >                 System.Runtime.InteropServices.OSPlatform.Windows

00:00:10 #254 [Verbose] >         |> memoize

00:00:10 #255 [Verbose] >

00:00:10 #256 [Verbose] >     /// ## getExecutableSuffix

00:00:10 #257 [Verbose] >

00:00:10 #258 [Verbose] >     let inline getExecutableSuffix () =

00:00:10 #259 [Verbose] >         if isWindows ()

00:00:10 #260 [Verbose] >         then ".exe"

00:00:10 #261 [Verbose] >         else ""

00:00:10 #262 [Verbose] >

00:00:10 #263 [Verbose] >     /// ## splitCommand

00:00:10 #264 [Verbose] >

00:00:10 #265 [Verbose] >     type private CommandParseStep =

00:00:10 #266 [Verbose] >         | Start

00:00:10 #267 [Verbose] >         | Path of quoted: bool

00:00:10 #268 [Verbose] >         | Arguments

00:00:10 #269 [Verbose] >

00:00:10 #270 [Verbose] >     let splitCommand (command: string) =

00:00:10 #271 [Verbose] >         let rec loop (path, args) chars step =

00:00:10 #272 [Verbose] >             match chars, step with

00:00:10 #273 [Verbose] >             | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...

00:00:10 #274 [Verbose] >

00:00:10 #275 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #276 [Verbose] > #if !INTERACTIVE

00:00:10 #277 [Verbose] > namespace Polyglot

00:00:10 #278 [Verbose] > #endif

00:00:10 #279 [Verbose] >

00:00:10 #280 [Verbose] > module FileSystem =

00:00:10 #281 [Verbose] >

00:00:10 #282 [Verbose] >     open Common

00:00:10 #283 [Verbose] >

00:00:10 #284 [Verbose] >     /// ## Operators

00:00:10 #285 [Verbose] >

00:00:10 #286 [Verbose] >     module Operators =

00:00:10 #287 [Verbose] >         let inline (</>) a b =

00:00:10 #288 [Verbose] >             System.IO.Path.Combine (a, b)

00:00:10 #289 [Verbose] >

00:00:10 #290 [Verbose] >     open Operators

00:00:10 #291 [Verbose] >

00:00:10 #292 [Verbose] >     /// ## createTempDirectoryName

00:00:10 #293 [Verbose] >

00:00:10 #294 [Verbose] >     let inline createTempDirectoryName () =

00:00:10 #295 [Verbose] >         let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name

00:00:10 #296 [Verbose] >

00:00:10 #297 [Verbose] >         System.IO.Path.GetTempPath ()

00:00:10 #298 [Verbose] >         </> $"!{root}"

00:00:10 #299 [Verbose] >         </> string (newGuidFromDateTime System.DateTime.Now)

00:00:10 #300 [Verbose] >

00:00:10 #301 [Verbose] >     /// ## createTempDirectory

00:00:10 #302 [Verbose] >

00:00:10 #303 [Verbose] >     let inline createTempDirectory () =

00:00:10 #304 [Verbose] >         let tempFolder = createTempDirectoryName ()

00:00:10 #305 [Verbose] >         let result = System.IO.Directory.CreateDirectory tempFolder

00:00:10 #306 [Verbose] >

00:00:10 #307 [Verbose] >         if not result.Exists then

00:00:10 #308 [Verbose] >             let ge...

00:00:13 #309 [Verbose] >

00:00:13 #310 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:13 #311 [Verbose] > open Common

00:00:13 #312 [Verbose] > open FileSystem.Operators

00:00:13 #313 [Verbose] >

00:00:13 #314 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:13 #315 [Verbose] > let tmpSpiralPath = Path.GetTempPath () </> "!dotnet-interactive-spiral"

00:00:13 #316 [Verbose] > let linePlotsDataPath = tmpSpiralPath </> "line-plots-data"

00:00:13 #317 [Verbose] > let linePlotsSvgPath = tmpSpiralPath </> "line-plots-svg"

00:00:13 #318 [Verbose] >

00:00:13 #319 [Verbose] > [[ tmpSpiralPath; linePlotsDataPath; linePlotsSvgPath ]]

00:00:13 #320 [Verbose] > |> List.iter (fun dir -> if Directory.Exists dir |> not then

00:00:13 #321 [Verbose] > Directory.CreateDirectory dir |> ignore)

00:00:13 #322 [Verbose] >

00:00:13 #323 [Verbose] > Formatter.Register<struct (string * string * string * struct (string * float

00:00:13 #324 [Verbose] > array * float array) array)> (

00:00:13 #325 [Verbose] >     (fun struct (caption, x_desc, y_desc, ys) ->

00:00:13 #326 [Verbose] >         let json = (caption, x_desc, y_desc, ys) |> FSharp.Json.Json.serialize

00:00:13 #327 [Verbose] >         async {

00:00:13 #328 [Verbose] >             let hashHex = json |> Crypto.hashText

00:00:13 #329 [Verbose] >             let svgPath = linePlotsSvgPath </> $"{hashHex}.svg"

00:00:13 #330 [Verbose] >

00:00:13 #331 [Verbose] >             if System.IO.File.Exi...

00:00:13 #332 [Verbose] >

00:00:13 #333 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #334 [Verbose] > // // test

00:00:13 #335 [Verbose] >

00:00:13 #336 [Verbose] > open testing

00:00:15 #337 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4641-4197-41183235f653\main.spi

00:00:16 #338 [Verbose] >

00:00:16 #339 [Verbose] > ╭─[ 2.42s - stdout ]───────────────────────────────────────────────────────────╮

00:00:16 #340 [Verbose] > │ ()                                                                           │

00:00:16 #341 [Verbose] > │                                                                              │

00:00:16 #342 [Verbose] > │                                                                              │

00:00:16 #343 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #344 [Verbose] >

00:00:16 #345 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #346 [Verbose] > inl (/@) x = listm'.(/@) x

00:00:16 #347 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4831-3163-3842c2c7626d\main.spi

00:00:16 #348 [Verbose] >

00:00:16 #349 [Verbose] > ╭─[ 205.69ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #350 [Verbose] > │ ()                                                                           │

00:00:16 #351 [Verbose] > │                                                                              │

00:00:16 #352 [Verbose] > │                                                                              │

00:00:16 #353 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #354 [Verbose] >

00:00:16 #355 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:16 #356 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:16 #357 [Verbose] > │ ## init_series                                                               │

00:00:16 #358 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #359 [Verbose] >

00:00:16 #360 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #361 [Verbose] > // // test

00:00:16 #362 [Verbose] >

00:00:16 #363 [Verbose] > inl x : a _ f64 = am'.init_series -3 3 0.01

00:00:16 #364 [Verbose] > inl y = x |> am.map math.square

00:00:16 #365 [Verbose] > "square", "x", "y", ;[[ "square", x, y ]]

00:00:16 #366 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4852-5224-5ded0d82463c\main.spi

00:00:16 #367 [Verbose] >

00:00:16 #368 [Verbose] > ╭─[ 400.29ms - return value ]──────────────────────────────────────────────────╮

00:00:16 #369 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:16 #370 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:16 #371 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:16 #372 [Verbose] > │ stroke="none"/>                                                              │

00:00:16 #373 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:16 #374 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:16 #375 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:16 #376 [Verbose] > │ square                                                                       │

00:00:16 #377 [Verbose] > │ </text>                                                                      │

00:00:16 #378 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:16 #379 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #380 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:16 #381 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #382 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:16 #383 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #384 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:16 #385 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #386 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:16 #387 [Verbose] > │ ...                                                                          │

00:00:16 #388 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #389 [Verbose] >

00:00:16 #390 [Verbose] > ╭─[ 420.90ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #391 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:16 #392 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:16 #393 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:16 #394 [Verbose] > │     let v2 : bool = v1 < 601                                                 │

00:00:16 #395 [Verbose] > │     v2                                                                       │

00:00:16 #396 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:16 #397 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:16 #398 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:16 #399 [Verbose] > │     v3                                                                       │

00:00:16 #400 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:16 #401 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:16 #402 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (601)                      │

00:00:16 #403 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:16 #404 [Verbose] > │     while method1(v1) do                                                     │

00:00:16 #405 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:16 #406 [Verbose] > │         let v4 : float = float v3                                            │

00:00:16 #407 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:16 #408 [Verbose] > │         let v6 : float = -3.0 + v5                                           │

00:00:16 #409 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:16 #410 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:16 #411 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:16 #412 [Verbose] > │         ()                                                                   │

00:00:16 #413 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:16 #414 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:16 #415 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:16 #416 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:16 #417 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:16 #418 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:16 #419 [Verbose] > │         let v14 : float = v13 ** 2.0                                         │

00:00:16 #420 [Verbose] > │         v9.[int v12] <- v14                                                  │

00:00:16 #421 [Verbose] > │         let v15 : int32 = v12 + 1                                            │

00:00:16 #422 [Verbose] > │         v10.l0 <- v15                                                        │

00:00:16 #423 [Verbose] > │         ()                                                                   │

00:00:16 #424 [Verbose] > │     let v16 : string = "square"                                              │

00:00:16 #425 [Verbose] > │     let v17 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:16 #426 [Verbose] > │ (v16, v0, v9)|]                                                              │

00:00:16 #427 [Verbose] > │     let v18 : string = "x"                                                   │

00:00:16 #428 [Verbose] > │     let v19 : string = "y"                                                   │

00:00:16 #429 [Verbose] > │     struct (v16, v18, v19, v17)                                              │

00:00:16 #430 [Verbose] > │ method0()                                                                    │

00:00:16 #431 [Verbose] > │                                                                              │

00:00:16 #432 [Verbose] > │                                                                              │

00:00:16 #433 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #434 [Verbose] >

00:00:16 #435 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #436 [Verbose] > // // test

00:00:16 #437 [Verbose] >

00:00:16 #438 [Verbose] > inl x : a _ f64 = am'.init_series -10 10 0.1

00:00:16 #439 [Verbose] > inl y_sin = x |> am.map sin

00:00:16 #440 [Verbose] > inl y_cos = x |> am.map cos

00:00:16 #441 [Verbose] > "sin cos", "x", "y", ;[[ "sin", x, y_sin; "cos", x, y_cos ]]

00:00:16 #442 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4896-9649-9dd6142835b0\main.spi

00:00:16 #443 [Verbose] >

00:00:16 #444 [Verbose] > ╭─[ 207.86ms - return value ]──────────────────────────────────────────────────╮

00:00:16 #445 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:16 #446 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:16 #447 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:16 #448 [Verbose] > │ stroke="none"/>                                                              │

00:00:16 #449 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:16 #450 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:16 #451 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:16 #452 [Verbose] > │ sin cos                                                                      │

00:00:16 #453 [Verbose] > │ </text>                                                                      │

00:00:16 #454 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │

00:00:16 #455 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #456 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:16 #457 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #458 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │

00:00:16 #459 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #460 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:16 #461 [Verbose] > │ y2="75"/>                                                                    │

00:00:16 #462 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1="424"        │

00:00:16 #463 [Verbose] > │ x2="10...                                                                    │

00:00:16 #464 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #465 [Verbose] >

00:00:16 #466 [Verbose] > ╭─[ 218.62ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #467 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:16 #468 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:16 #469 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:16 #470 [Verbose] > │     let v2 : bool = v1 < 201                                                 │

00:00:16 #471 [Verbose] > │     v2                                                                       │

00:00:16 #472 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:16 #473 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:16 #474 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:16 #475 [Verbose] > │     v3                                                                       │

00:00:16 #476 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:16 #477 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:16 #478 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (201)                      │

00:00:16 #479 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:16 #480 [Verbose] > │     while method1(v1) do                                                     │

00:00:16 #481 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:16 #482 [Verbose] > │         let v4 : float = float v3                                            │

00:00:16 #483 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:16 #484 [Verbose] > │         let v6 : float = -10.0 + v5                                          │

00:00:16 #485 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:16 #486 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:16 #487 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:17 #488 [Verbose] > │         ()                                                                   │

00:00:17 #489 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:17 #490 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:17 #491 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:17 #492 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:17 #493 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:17 #494 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:17 #495 [Verbose] > │         let v14 : float = sin v13                                            │

00:00:17 #496 [Verbose] > │         v9.[int v12] <- v14                                                  │

00:00:17 #497 [Verbose] > │         let v15 : int32 = v12 + 1                                            │

00:00:17 #498 [Verbose] > │         v10.l0 <- v15                                                        │

00:00:17 #499 [Verbose] > │         ()                                                                   │

00:00:17 #500 [Verbose] > │     let v16 : (float []) = Array.zeroCreate<float> (v8)                      │

00:00:17 #501 [Verbose] > │     let v17 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:17 #502 [Verbose] > │     while method2(v8, v17) do                                                │

00:00:17 #503 [Verbose] > │         let v19 : int32 = v17.l0                                             │

00:00:17 #504 [Verbose] > │         let v20 : float = v0.[int v19]                                       │

00:00:17 #505 [Verbose] > │         let v21 : float = cos v20                                            │

00:00:17 #506 [Verbose] > │         v16.[int v19] <- v21                                                 │

00:00:17 #507 [Verbose] > │         let v22 : int32 = v19 + 1                                            │

00:00:17 #508 [Verbose] > │         v17.l0 <- v22                                                        │

00:00:17 #509 [Verbose] > │         ()                                                                   │

00:00:17 #510 [Verbose] > │     let v23 : string = "sin"                                                 │

00:00:17 #511 [Verbose] > │     let v24 : string = "cos"                                                 │

00:00:17 #512 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:17 #513 [Verbose] > │ (v23, v0, v9); struct (v24, v0, v16)|]                                       │

00:00:17 #514 [Verbose] > │     let v26 : string = "sin cos"                                             │

00:00:17 #515 [Verbose] > │     let v27 : string = "x"                                                   │

00:00:17 #516 [Verbose] > │     let v28 : string = "y"                                                   │

00:00:17 #517 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:17 #518 [Verbose] > │ method0()                                                                    │

00:00:17 #519 [Verbose] > │                                                                              │

00:00:17 #520 [Verbose] > │                                                                              │

00:00:17 #521 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #522 [Verbose] >

00:00:17 #523 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #524 [Verbose] > // // test

00:00:17 #525 [Verbose] >

00:00:17 #526 [Verbose] > inl y_pos y0 vy0 ay t =

00:00:17 #527 [Verbose] >     y0 + vy0 * t + ay * (t |> math.square) / 2

00:00:17 #528 [Verbose] >

00:00:17 #529 [Verbose] > inl x : a _ f64 = am'.init_series 0 5 0.01

00:00:17 #530 [Verbose] > inl y = x |> am.map (y_pos 0 20 -9.8)

00:00:17 #531 [Verbose] > "projectile motion", "time (s)", "", ;[[ "height of projectile (m)", x, y ]]

00:00:17 #532 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4920-2080-2e0873ddd3f0\main.spi

00:00:17 #533 [Verbose] >

00:00:17 #534 [Verbose] > ╭─[ 189.42ms - return value ]──────────────────────────────────────────────────╮

00:00:17 #535 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:17 #536 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:17 #537 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:17 #538 [Verbose] > │ stroke="none"/>                                                              │

00:00:17 #539 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:17 #540 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:17 #541 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:17 #542 [Verbose] > │ projectile motion                                                            │

00:00:17 #543 [Verbose] > │ </text>                                                                      │

00:00:17 #544 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:17 #545 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #546 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:17 #547 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #548 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:17 #549 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #550 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:17 #551 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #552 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="99" y1="42...        │

00:00:17 #553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #554 [Verbose] >

00:00:17 #555 [Verbose] > ╭─[ 200.38ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #556 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:17 #557 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:17 #558 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:17 #559 [Verbose] > │     let v2 : bool = v1 < 501                                                 │

00:00:17 #560 [Verbose] > │     v2                                                                       │

00:00:17 #561 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:17 #562 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:17 #563 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:17 #564 [Verbose] > │     v3                                                                       │

00:00:17 #565 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:17 #566 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:17 #567 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (501)                      │

00:00:17 #568 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:17 #569 [Verbose] > │     while method1(v1) do                                                     │

00:00:17 #570 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:17 #571 [Verbose] > │         let v4 : float = float v3                                            │

00:00:17 #572 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:17 #573 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:17 #574 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:17 #575 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:17 #576 [Verbose] > │         ()                                                                   │

00:00:17 #577 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:17 #578 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:17 #579 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:17 #580 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:17 #581 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:17 #582 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:17 #583 [Verbose] > │         let v13 : float = 20.0 * v12                                         │

00:00:17 #584 [Verbose] > │         let v14 : float = v12 ** 2.0                                         │

00:00:17 #585 [Verbose] > │         let v15 : float = -9.8 * v14                                         │

00:00:17 #586 [Verbose] > │         let v16 : float = v15 / 2.0                                          │

00:00:17 #587 [Verbose] > │         let v17 : float = v13 + v16                                          │

00:00:17 #588 [Verbose] > │         v8.[int v11] <- v17                                                  │

00:00:17 #589 [Verbose] > │         let v18 : int32 = v11 + 1                                            │

00:00:17 #590 [Verbose] > │         v9.l0 <- v18                                                         │

00:00:17 #591 [Verbose] > │         ()                                                                   │

00:00:17 #592 [Verbose] > │     let v19 : string = "height of projectile (m)"                            │

00:00:17 #593 [Verbose] > │     let v20 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:17 #594 [Verbose] > │ (v19, v0, v8)|]                                                              │

00:00:17 #595 [Verbose] > │     let v21 : string = "projectile motion"                                   │

00:00:17 #596 [Verbose] > │     let v22 : string = "time (s)"                                            │

00:00:17 #597 [Verbose] > │     let v23 : string = ""                                                    │

00:00:17 #598 [Verbose] > │     struct (v21, v22, v23, v20)                                              │

00:00:17 #599 [Verbose] > │ method0()                                                                    │

00:00:17 #600 [Verbose] > │                                                                              │

00:00:17 #601 [Verbose] > │                                                                              │

00:00:17 #602 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #603 [Verbose] >

00:00:17 #604 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:17 #605 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:17 #606 [Verbose] > │ ## velocity_cf                                                               │

00:00:17 #607 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #608 [Verbose] >

00:00:17 #609 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #610 [Verbose] > type mass = f64

00:00:17 #611 [Verbose] > type time = f64

00:00:17 #612 [Verbose] > type position = f64

00:00:17 #613 [Verbose] > type velocity = f64

00:00:17 #614 [Verbose] > type force = f64

00:00:17 #615 [Verbose] >

00:00:17 #616 [Verbose] > type velocity_cf = mass -> velocity -> list force -> (time -> velocity)

00:00:17 #617 [Verbose] >

00:00:17 #618 [Verbose] > inl velocity_cf m v0 fs =

00:00:17 #619 [Verbose] >     inl f_net = fs |> listm'.sum

00:00:17 #620 [Verbose] >     inl a0 = f_net / m

00:00:17 #621 [Verbose] >     inl v t = v0 + a0 * t

00:00:17 #622 [Verbose] >     v

00:00:17 #623 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4943-4311-439ace975629\main.spi

00:00:17 #624 [Verbose] >

00:00:17 #625 [Verbose] > ╭─[ 169.27ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #626 [Verbose] > │ ()                                                                           │

00:00:17 #627 [Verbose] > │                                                                              │

00:00:17 #628 [Verbose] > │                                                                              │

00:00:17 #629 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #630 [Verbose] >

00:00:17 #631 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #632 [Verbose] > // // test

00:00:17 #633 [Verbose] >

00:00:17 #634 [Verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 0

00:00:17 #635 [Verbose] > |> _equal 0.6

00:00:17 #636 [Verbose] >

00:00:17 #637 [Verbose] > velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]] 1

00:00:17 #638 [Verbose] > |> _equal 0.2

00:00:17 #639 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4960-6025-6ff519e00881\main.spi

00:00:17 #640 [Verbose] >

00:00:17 #641 [Verbose] > ╭─[ 166.40ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #642 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:17 #643 [Verbose] > │     let v0 : string = $"_equal / actual: %A{0.6} / expected: %A{0.6}"        │

00:00:17 #644 [Verbose] > │     let v1 : string = $"_equal / actual: %A{0.2} / expected: %A{0.2}"        │

00:00:17 #645 [Verbose] > │     ()                                                                       │

00:00:17 #646 [Verbose] > │ method0()                                                                    │

00:00:17 #647 [Verbose] > │                                                                              │

00:00:17 #648 [Verbose] > │                                                                              │

00:00:17 #649 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #650 [Verbose] >

00:00:17 #651 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #652 [Verbose] > // // test

00:00:17 #653 [Verbose] >

00:00:17 #654 [Verbose] > inl x = am'.init_series 0 4 0.1

00:00:17 #655 [Verbose] > inl y = x |> am.map (velocity_cf 0.1f64 0.6 [[ 0.04; -0.08 ]])

00:00:17 #656 [Verbose] > "car on an air track", "time (s)", "", ;[[ "velocity of car (m/s)", x, y ]]

00:00:17 #657 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-4977-7729-70f5b930c820\main.spi

00:00:17 #658 [Verbose] >

00:00:17 #659 [Verbose] > ╭─[ 215.02ms - return value ]──────────────────────────────────────────────────╮

00:00:17 #660 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:17 #661 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:17 #662 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:17 #663 [Verbose] > │ stroke="none"/>                                                              │

00:00:17 #664 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:17 #665 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:17 #666 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:17 #667 [Verbose] > │ car on an air track                                                          │

00:00:17 #668 [Verbose] > │ </text>                                                                      │

00:00:17 #669 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="57" y1="424" x2="57" │

00:00:17 #670 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #671 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:17 #672 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #673 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="82" y1="424" x2="82" │

00:00:17 #674 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #675 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x2="94" │

00:00:17 #676 [Verbose] > │ y2="75"/>                                                                    │

00:00:17 #677 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="107" y1=...          │

00:00:17 #678 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #679 [Verbose] >

00:00:17 #680 [Verbose] > ╭─[ 224.94ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #681 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:17 #682 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:17 #683 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:17 #684 [Verbose] > │     let v2 : bool = v1 < 41                                                  │

00:00:17 #685 [Verbose] > │     v2                                                                       │

00:00:17 #686 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:17 #687 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:17 #688 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:17 #689 [Verbose] > │     v3                                                                       │

00:00:17 #690 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:17 #691 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:17 #692 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (41)                       │

00:00:17 #693 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:17 #694 [Verbose] > │     while method1(v1) do                                                     │

00:00:17 #695 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:17 #696 [Verbose] > │         let v4 : float = float v3                                            │

00:00:17 #697 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:17 #698 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:17 #699 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:17 #700 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:17 #701 [Verbose] > │         ()                                                                   │

00:00:17 #702 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:17 #703 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:17 #704 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:17 #705 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:17 #706 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:17 #707 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:17 #708 [Verbose] > │         let v13 : float = -0.39999999999999997 * v12                         │

00:00:17 #709 [Verbose] > │         let v14 : float = 0.6 + v13                                          │

00:00:17 #710 [Verbose] > │         v8.[int v11] <- v14                                                  │

00:00:17 #711 [Verbose] > │         let v15 : int32 = v11 + 1                                            │

00:00:17 #712 [Verbose] > │         v9.l0 <- v15                                                         │

00:00:17 #713 [Verbose] > │         ()                                                                   │

00:00:17 #714 [Verbose] > │     let v16 : string = "velocity of car (m/s)"                               │

00:00:17 #715 [Verbose] > │     let v17 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:17 #716 [Verbose] > │ (v16, v0, v8)|]                                                              │

00:00:17 #717 [Verbose] > │     let v18 : string = "car on an air track"                                 │

00:00:17 #718 [Verbose] > │     let v19 : string = "time (s)"                                            │

00:00:17 #719 [Verbose] > │     let v20 : string = ""                                                    │

00:00:17 #720 [Verbose] > │     struct (v18, v19, v20, v17)                                              │

00:00:17 #721 [Verbose] > │ method0()                                                                    │

00:00:17 #722 [Verbose] > │                                                                              │

00:00:17 #723 [Verbose] > │                                                                              │

00:00:17 #724 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #725 [Verbose] >

00:00:17 #726 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:17 #727 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:17 #728 [Verbose] > │ ## derivative                                                                │

00:00:17 #729 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #730 [Verbose] >

00:00:17 #731 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #732 [Verbose] > type derivative = (f64 -> f64) -> f64 -> f64

00:00:17 #733 [Verbose] >

00:00:17 #734 [Verbose] > inl derivative dt : derivative =

00:00:17 #735 [Verbose] >     fun x t =>

00:00:17 #736 [Verbose] >         (x (t + dt / 2) - x (t - dt / 2)) / dt

00:00:17 #737 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5002-0202-0176c6da4973\main.spi

00:00:17 #738 [Verbose] >

00:00:17 #739 [Verbose] > ╭─[ 132.36ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #740 [Verbose] > │ ()                                                                           │

00:00:17 #741 [Verbose] > │                                                                              │

00:00:17 #742 [Verbose] > │                                                                              │

00:00:17 #743 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #744 [Verbose] >

00:00:17 #745 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #746 [Verbose] > // // test

00:00:17 #747 [Verbose] >

00:00:17 #748 [Verbose] > derivative 1 (fun x => x ** 4 / 4) 1 - 1

00:00:17 #749 [Verbose] > |> _almost_equal 0.25

00:00:17 #750 [Verbose] >

00:00:17 #751 [Verbose] > derivative 0.001 (fun x => x ** 4 / 4) 1 - 1

00:00:17 #752 [Verbose] > |> _almost_equal 0.0000002499998827953931

00:00:17 #753 [Verbose] >

00:00:17 #754 [Verbose] > derivative 0.000001 (fun x => x ** 4 / 4) 1 - 1

00:00:17 #755 [Verbose] > |> _almost_equal 0.000000000001000088900582341

00:00:17 #756 [Verbose] >

00:00:17 #757 [Verbose] > derivative 0.000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:17 #758 [Verbose] > |> _almost_equal 0.00000008274037099909037

00:00:17 #759 [Verbose] >

00:00:17 #760 [Verbose] > derivative 0.000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:17 #761 [Verbose] > |> _almost_equal 0.00008890058234101161

00:00:17 #762 [Verbose] >

00:00:17 #763 [Verbose] > derivative 0.000000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:17 #764 [Verbose] > |> _almost_equal -0.0007992778373592246

00:00:17 #765 [Verbose] >

00:00:17 #766 [Verbose] > derivative 0.000000000000000001 (fun x => x ** 4 / 4) 1 - 1

00:00:17 #767 [Verbose] > |> _almost_equal -1

00:00:18 #768 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5015-1546-19cfc9a1f761\main.spi

00:00:18 #769 [Verbose] >

00:00:18 #770 [Verbose] > ╭─[ 167.66ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #771 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:18 #772 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.25} / expected:         │

00:00:18 #773 [Verbose] > │ %A{0.25}"                                                                    │

00:00:18 #774 [Verbose] > │     let v1 : string = $"_almost_equal / actual: %A{2.499998827953931E-07} /  │

00:00:18 #775 [Verbose] > │ expected: %A{2.499998827953931E-07}"                                         │

00:00:18 #776 [Verbose] > │     let v2 : string = $"_almost_equal / actual: %A{1.000088900582341E-12} /  │

00:00:18 #777 [Verbose] > │ expected: %A{1.000088900582341E-12}"                                         │

00:00:18 #778 [Verbose] > │     let v3 : string = $"_almost_equal / actual: %A{8.274037099909037E-08} /  │

00:00:18 #779 [Verbose] > │ expected: %A{8.274037099909037E-08}"                                         │

00:00:18 #780 [Verbose] > │     let v4 : string = $"_almost_equal / actual: %A{8.890058234101161E-05} /  │

00:00:18 #781 [Verbose] > │ expected: %A{8.890058234101161E-05}"                                         │

00:00:18 #782 [Verbose] > │     let v5 : string = $"_almost_equal / actual: %A{-0.0007992778373592246} / │

00:00:18 #783 [Verbose] > │ expected: %A{-0.0007992778373592246}"                                        │

00:00:18 #784 [Verbose] > │     let v6 : string = $"_almost_equal / actual: %A{-1.0} / expected:         │

00:00:18 #785 [Verbose] > │ %A{-1.0}"                                                                    │

00:00:18 #786 [Verbose] > │     ()                                                                       │

00:00:18 #787 [Verbose] > │ method0()                                                                    │

00:00:18 #788 [Verbose] > │                                                                              │

00:00:18 #789 [Verbose] > │                                                                              │

00:00:18 #790 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #791 [Verbose] >

00:00:18 #792 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:18 #793 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:18 #794 [Verbose] > │ ## integration                                                               │

00:00:18 #795 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #796 [Verbose] >

00:00:18 #797 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #798 [Verbose] > type integration = (f64 -> f64) -> f64 -> f64 -> f64

00:00:18 #799 [Verbose] >

00:00:18 #800 [Verbose] > inl integral dt : integration =

00:00:18 #801 [Verbose] >     fun f a b =>

00:00:18 #802 [Verbose] >         inl rec loop t y =

00:00:18 #803 [Verbose] >             if t < b

00:00:18 #804 [Verbose] >             then loop (t + dt) (y + f t * dt)

00:00:18 #805 [Verbose] >             else t, y

00:00:18 #806 [Verbose] >         loop (a + dt / 2) 0

00:00:18 #807 [Verbose] >         |> snd

00:00:18 #808 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5033-3323-3dcd97d904a3\main.spi

00:00:18 #809 [Verbose] >

00:00:18 #810 [Verbose] > ╭─[ 130.43ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #811 [Verbose] > │ ()                                                                           │

00:00:18 #812 [Verbose] > │                                                                              │

00:00:18 #813 [Verbose] > │                                                                              │

00:00:18 #814 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #815 [Verbose] >

00:00:18 #816 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #817 [Verbose] > // // test

00:00:18 #818 [Verbose] >

00:00:18 #819 [Verbose] > integral 0.01 math.square 0 1

00:00:18 #820 [Verbose] > |> _almost_equal 0.33332500000000004

00:00:18 #821 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5046-4650-40dd7671ba69\main.spi

00:00:18 #822 [Verbose] >

00:00:18 #823 [Verbose] > ╭─[ 188.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #824 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:18 #825 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.3333250000000004} /     │

00:00:18 #826 [Verbose] > │ expected: %A{0.33332500000000004}"                                           │

00:00:18 #827 [Verbose] > │     ()                                                                       │

00:00:18 #828 [Verbose] > │ method0()                                                                    │

00:00:18 #829 [Verbose] > │                                                                              │

00:00:18 #830 [Verbose] > │                                                                              │

00:00:18 #831 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #832 [Verbose] >

00:00:18 #833 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #834 [Verbose] > inl integral' dt : integration =

00:00:18 #835 [Verbose] >     fun f a b =>

00:00:18 #836 [Verbose] >         listm'.init_series (a + dt / 2) (b - dt / 2) dt

00:00:18 #837 [Verbose] >         |> listm.map (f >> (*) dt)

00:00:18 #838 [Verbose] >         |> listm'.sum

00:00:18 #839 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5065-6594-69fbefc41875\main.spi

00:00:18 #840 [Verbose] >

00:00:18 #841 [Verbose] > ╭─[ 152.20ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #842 [Verbose] > │ ()                                                                           │

00:00:18 #843 [Verbose] > │                                                                              │

00:00:18 #844 [Verbose] > │                                                                              │

00:00:18 #845 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #846 [Verbose] >

00:00:18 #847 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #848 [Verbose] > // // test

00:00:18 #849 [Verbose] >

00:00:18 #850 [Verbose] > integral' 0.1 math.square 0 1

00:00:18 #851 [Verbose] > |> _almost_equal (integral 0.1 math.square 0 1)

00:00:18 #852 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5081-8131-876c09009d18\main.spi

00:00:18 #853 [Verbose] >

00:00:18 #854 [Verbose] > ╭─[ 157.95ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #855 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:18 #856 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{0.3325000000000001} /     │

00:00:18 #857 [Verbose] > │ expected: %A{0.33249999999999996}"                                           │

00:00:18 #858 [Verbose] > │     ()                                                                       │

00:00:18 #859 [Verbose] > │ method0()                                                                    │

00:00:18 #860 [Verbose] > │                                                                              │

00:00:18 #861 [Verbose] > │                                                                              │

00:00:18 #862 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #863 [Verbose] >

00:00:18 #864 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #865 [Verbose] > inl integral'' dt : integration =

00:00:18 #866 [Verbose] >     fun f a b =>

00:00:18 #867 [Verbose] >         am'.init_series (a + dt / 2) (b - dt / 2) dt

00:00:18 #868 [Verbose] >         |> am.map (f >> (*) dt)

00:00:18 #869 [Verbose] >         |> am'.sum

00:00:18 #870 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5097-9755-90e7a367a910\main.spi

00:00:18 #871 [Verbose] >

00:00:18 #872 [Verbose] > ╭─[ 162.89ms - stdout ]────────────────────────────────────────────────────────╮

00:00:18 #873 [Verbose] > │ ()                                                                           │

00:00:18 #874 [Verbose] > │                                                                              │

00:00:18 #875 [Verbose] > │                                                                              │

00:00:18 #876 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #877 [Verbose] >

00:00:18 #878 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #879 [Verbose] > // // test

00:00:18 #880 [Verbose] >

00:00:18 #881 [Verbose] > integral'' 0.01 math.square 0 1

00:00:18 #882 [Verbose] > |> _almost_equal (integral 0.01 math.square 0 1)

00:00:19 #883 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5114-1404-1c71a8f23af4\main.spi

00:00:19 #884 [Verbose] >

00:00:19 #885 [Verbose] > ╭─[ 256.83ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #886 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:19 #887 [Verbose] > │ and Mut1 = {mutable l0 : int32; mutable l1 : float}                          │

00:00:19 #888 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:19 #889 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:19 #890 [Verbose] > │     let v2 : bool = v1 < 100                                                 │

00:00:19 #891 [Verbose] > │     v2                                                                       │

00:00:19 #892 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:19 #893 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:19 #894 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:19 #895 [Verbose] > │     v3                                                                       │

00:00:19 #896 [Verbose] > │ and method3 (v0 : int32, v1 : Mut1) : bool =                                 │

00:00:19 #897 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:19 #898 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:19 #899 [Verbose] > │     v3                                                                       │

00:00:19 #900 [Verbose] > │ and method0 () : unit =                                                      │

00:00:19 #901 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (100)                      │

00:00:19 #902 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:19 #903 [Verbose] > │     while method1(v1) do                                                     │

00:00:19 #904 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:19 #905 [Verbose] > │         let v4 : float = float v3                                            │

00:00:19 #906 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:19 #907 [Verbose] > │         let v6 : float = 0.005 + v5                                          │

00:00:19 #908 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:19 #909 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:19 #910 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:19 #911 [Verbose] > │         ()                                                                   │

00:00:19 #912 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:19 #913 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:19 #914 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:19 #915 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:19 #916 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:19 #917 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:19 #918 [Verbose] > │         let v14 : float = v13 ** 2.0                                         │

00:00:19 #919 [Verbose] > │         let v15 : float = 0.01 * v14                                         │

00:00:19 #920 [Verbose] > │         v9.[int v12] <- v15                                                  │

00:00:19 #921 [Verbose] > │         let v16 : int32 = v12 + 1                                            │

00:00:19 #922 [Verbose] > │         v10.l0 <- v16                                                        │

00:00:19 #923 [Verbose] > │         ()                                                                   │

00:00:19 #924 [Verbose] > │     let v17 : int32 = v9.Length                                              │

00:00:19 #925 [Verbose] > │     let v18 : Mut1 = {l0 = 0; l1 = 0.0} : Mut1                               │

00:00:19 #926 [Verbose] > │     while method3(v17, v18) do                                               │

00:00:19 #927 [Verbose] > │         let v20 : int32 = v18.l0                                             │

00:00:19 #928 [Verbose] > │         let v21 : float = v18.l1                                             │

00:00:19 #929 [Verbose] > │         let v22 : float = v9.[int v20]                                       │

00:00:19 #930 [Verbose] > │         let v23 : float = v21 + v22                                          │

00:00:19 #931 [Verbose] > │         let v24 : int32 = v20 + 1                                            │

00:00:19 #932 [Verbose] > │         v18.l0 <- v24                                                        │

00:00:19 #933 [Verbose] > │         v18.l1 <- v23                                                        │

00:00:19 #934 [Verbose] > │         ()                                                                   │

00:00:19 #935 [Verbose] > │     let v25 : float = v18.l1                                                 │

00:00:19 #936 [Verbose] > │     let v26 : float = 0.3333250000000004 - v25                               │

00:00:19 #937 [Verbose] > │     let v27 : float =  -v26                                                  │

00:00:19 #938 [Verbose] > │     let v28 : bool = v26 >= v27                                              │

00:00:19 #939 [Verbose] > │     let v29 : float =                                                        │

00:00:19 #940 [Verbose] > │         if v28 then                                                          │

00:00:19 #941 [Verbose] > │             v26                                                              │

00:00:19 #942 [Verbose] > │         else                                                                 │

00:00:19 #943 [Verbose] > │             v27                                                              │

00:00:19 #944 [Verbose] > │     let v30 : bool = v29 < 1E-08                                             │

00:00:19 #945 [Verbose] > │     let v31 : string = $"_almost_equal / actual: %A{v25} / expected:         │

00:00:19 #946 [Verbose] > │ %A{0.3333250000000004}"                                                      │

00:00:19 #947 [Verbose] > │     let v32 : bool = v30 = false                                             │

00:00:19 #948 [Verbose] > │     if v32 then                                                              │

00:00:19 #949 [Verbose] > │         failwith<unit> v31                                                   │

00:00:19 #950 [Verbose] > │ method0()                                                                    │

00:00:19 #951 [Verbose] > │                                                                              │

00:00:19 #952 [Verbose] > │                                                                              │

00:00:19 #953 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #954 [Verbose] >

00:00:19 #955 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:19 #956 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:19 #957 [Verbose] > │ ## anti_derivative                                                           │

00:00:19 #958 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #959 [Verbose] >

00:00:19 #960 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #961 [Verbose] > inl anti_derivative dt v0 a t =

00:00:19 #962 [Verbose] >     v0 + integral' dt a 0 t

00:00:19 #963 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5142-4260-4392f6a43670\main.spi

00:00:19 #964 [Verbose] >

00:00:19 #965 [Verbose] > ╭─[ 198.95ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #966 [Verbose] > │ ()                                                                           │

00:00:19 #967 [Verbose] > │                                                                              │

00:00:19 #968 [Verbose] > │                                                                              │

00:00:19 #969 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #970 [Verbose] >

00:00:19 #971 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:19 #972 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:19 #973 [Verbose] > │ ## velocity_ft                                                               │

00:00:19 #974 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #975 [Verbose] >

00:00:19 #976 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #977 [Verbose] > type velocity_ft = mass -> velocity -> list (time -> force) -> (time ->

00:00:19 #978 [Verbose] > velocity)

00:00:19 #979 [Verbose] >

00:00:19 #980 [Verbose] > inl velocity_ft dt : velocity_ft =

00:00:19 #981 [Verbose] >     fun m v0 fs =>

00:00:19 #982 [Verbose] >         inl f_net t = fs |> listm.map (fun f => f t) |> listm'.sum

00:00:19 #983 [Verbose] >         inl a t = f_net t / m

00:00:19 #984 [Verbose] >         anti_derivative dt v0 a

00:00:19 #985 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5162-6282-661cf0bb516a\main.spi

00:00:19 #986 [Verbose] >

00:00:19 #987 [Verbose] > ╭─[ 136.92ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #988 [Verbose] > │ ()                                                                           │

00:00:19 #989 [Verbose] > │                                                                              │

00:00:19 #990 [Verbose] > │                                                                              │

00:00:19 #991 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #992 [Verbose] >

00:00:19 #993 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:19 #994 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:19 #995 [Verbose] > │ ## position_ft                                                               │

00:00:19 #996 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #997 [Verbose] >

00:00:19 #998 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #999 [Verbose] > type position_ft = mass -> position -> velocity -> list (time -> force) -> (time

00:00:19 #1000 [Verbose] > -> position)

00:00:19 #1001 [Verbose] >

00:00:19 #1002 [Verbose] > inl position_ft dt : position_ft =

00:00:19 #1003 [Verbose] >     fun m x0 v0 fs =>

00:00:19 #1004 [Verbose] >         velocity_ft dt m v0 fs

00:00:19 #1005 [Verbose] >         |> anti_derivative dt x0

00:00:19 #1006 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5177-7707-7cf43dd96db9\main.spi

00:00:19 #1007 [Verbose] >

00:00:19 #1008 [Verbose] > ╭─[ 232.04ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #1009 [Verbose] > │ ()                                                                           │

00:00:19 #1010 [Verbose] > │                                                                              │

00:00:19 #1011 [Verbose] > │                                                                              │

00:00:19 #1012 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:19 #1013 [Verbose] >

00:00:19 #1014 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:19 #1015 [Verbose] > // // test

00:00:19 #1016 [Verbose] >

00:00:19 #1017 [Verbose] > inl pedal_coast (t : time) : force =

00:00:19 #1018 [Verbose] >     inl t_cycle = 20

00:00:19 #1019 [Verbose] >     inl n_complete : i32 = t / t_cycle |> conv

00:00:19 #1020 [Verbose] >     inl remainder = t - conv n_complete * t_cycle

00:00:19 #1021 [Verbose] >     if remainder > 0 && remainder < 10

00:00:19 #1022 [Verbose] >     then 10

00:00:19 #1023 [Verbose] >     else 0

00:00:19 #1024 [Verbose] >

00:00:19 #1025 [Verbose] > inl x = am'.init_series -5 45 0.1

00:00:19 #1026 [Verbose] > inl y = x |> am.map pedal_coast

00:00:19 #1027 [Verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "force on bike (N)", x, y ]]

00:00:19 #1028 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5200-0039-08f53d992e29\main.spi

00:00:19 #1029 [Verbose] >

00:00:19 #1030 [Verbose] > ╭─[ 186.14ms - return value ]──────────────────────────────────────────────────╮

00:00:19 #1031 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:19 #1032 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:19 #1033 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:19 #1034 [Verbose] > │ stroke="none"/>                                                              │

00:00:19 #1035 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:19 #1036 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:19 #1037 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:19 #1038 [Verbose] > │ child pedaling then coasting                                                 │

00:00:19 #1039 [Verbose] > │ </text>                                                                      │

00:00:19 #1040 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:19 #1041 [Verbose] > │ y2="75"/>                                                                    │

00:00:19 #1042 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:20 #1043 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1044 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:20 #1045 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1046 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:20 #1047 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1048 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:20 #1049 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1050 [Verbose] >

00:00:20 #1051 [Verbose] > ╭─[ 198.19ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #1052 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:20 #1053 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:20 #1054 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:20 #1055 [Verbose] > │     let v2 : bool = v1 < 501                                                 │

00:00:20 #1056 [Verbose] > │     v2                                                                       │

00:00:20 #1057 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:20 #1058 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:20 #1059 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:20 #1060 [Verbose] > │     v3                                                                       │

00:00:20 #1061 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:20 #1062 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:20 #1063 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (501)                      │

00:00:20 #1064 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:20 #1065 [Verbose] > │     while method1(v1) do                                                     │

00:00:20 #1066 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:20 #1067 [Verbose] > │         let v4 : float = float v3                                            │

00:00:20 #1068 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:20 #1069 [Verbose] > │         let v6 : float = -5.0 + v5                                           │

00:00:20 #1070 [Verbose] > │         v0.[int v3] <- v6                                                    │

00:00:20 #1071 [Verbose] > │         let v7 : int32 = v3 + 1                                              │

00:00:20 #1072 [Verbose] > │         v1.l0 <- v7                                                          │

00:00:20 #1073 [Verbose] > │         ()                                                                   │

00:00:20 #1074 [Verbose] > │     let v8 : int32 = v0.Length                                               │

00:00:20 #1075 [Verbose] > │     let v9 : (float []) = Array.zeroCreate<float> (v8)                       │

00:00:20 #1076 [Verbose] > │     let v10 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:20 #1077 [Verbose] > │     while method2(v8, v10) do                                                │

00:00:20 #1078 [Verbose] > │         let v12 : int32 = v10.l0                                             │

00:00:20 #1079 [Verbose] > │         let v13 : float = v0.[int v12]                                       │

00:00:20 #1080 [Verbose] > │         let v14 : float = v13 / 20.0                                         │

00:00:20 #1081 [Verbose] > │         let v15 : int32 = int32 v14                                          │

00:00:20 #1082 [Verbose] > │         let v16 : float = float v15                                          │

00:00:20 #1083 [Verbose] > │         let v17 : float = v16 * 20.0                                         │

00:00:20 #1084 [Verbose] > │         let v18 : float = v13 - v17                                          │

00:00:20 #1085 [Verbose] > │         let v19 : bool = v18 > 0.0                                           │

00:00:20 #1086 [Verbose] > │         let v21 : bool =                                                     │

00:00:20 #1087 [Verbose] > │             if v19 then                                                      │

00:00:20 #1088 [Verbose] > │                 let v20 : bool = v18 < 10.0                                  │

00:00:20 #1089 [Verbose] > │                 v20                                                          │

00:00:20 #1090 [Verbose] > │             else                                                             │

00:00:20 #1091 [Verbose] > │                 false                                                        │

00:00:20 #1092 [Verbose] > │         let v22 : float =                                                    │

00:00:20 #1093 [Verbose] > │             if v21 then                                                      │

00:00:20 #1094 [Verbose] > │                 10.0                                                         │

00:00:20 #1095 [Verbose] > │             else                                                             │

00:00:20 #1096 [Verbose] > │                 0.0                                                          │

00:00:20 #1097 [Verbose] > │         v9.[int v12] <- v22                                                  │

00:00:20 #1098 [Verbose] > │         let v23 : int32 = v12 + 1                                            │

00:00:20 #1099 [Verbose] > │         v10.l0 <- v23                                                        │

00:00:20 #1100 [Verbose] > │         ()                                                                   │

00:00:20 #1101 [Verbose] > │     let v24 : string = "force on bike (N)"                                   │

00:00:20 #1102 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:20 #1103 [Verbose] > │ (v24, v0, v9)|]                                                              │

00:00:20 #1104 [Verbose] > │     let v26 : string = "child pedaling then coasting"                        │

00:00:20 #1105 [Verbose] > │     let v27 : string = "time (s)"                                            │

00:00:20 #1106 [Verbose] > │     let v28 : string = ""                                                    │

00:00:20 #1107 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:20 #1108 [Verbose] > │ method0()                                                                    │

00:00:20 #1109 [Verbose] > │                                                                              │

00:00:20 #1110 [Verbose] > │                                                                              │

00:00:20 #1111 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1112 [Verbose] >

00:00:20 #1113 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #1114 [Verbose] > // // test

00:00:20 #1115 [Verbose] >

00:00:20 #1116 [Verbose] > inl x = am'.init_series -5 45 1

00:00:20 #1117 [Verbose] > inl y = x |> am.map (position_ft 0.1f64 20 0 0 [[ pedal_coast ]])

00:00:20 #1118 [Verbose] > "child pedaling then coasting", "time (s)", "", ;[[ "position of bike (m)", x, y

00:00:20 #1119 [Verbose] > ]]

00:00:20 #1120 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5223-2305-2b9613ed8166\main.spi

00:00:20 #1121 [Verbose] >

00:00:20 #1122 [Verbose] > ╭─[ 481.08ms - return value ]──────────────────────────────────────────────────╮

00:00:20 #1123 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:20 #1124 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:20 #1125 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:20 #1126 [Verbose] > │ stroke="none"/>                                                              │

00:00:20 #1127 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:20 #1128 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:20 #1129 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:20 #1130 [Verbose] > │ child pedaling then coasting                                                 │

00:00:20 #1131 [Verbose] > │ </text>                                                                      │

00:00:20 #1132 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:20 #1133 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1134 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:20 #1135 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1136 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:20 #1137 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1138 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:20 #1139 [Verbose] > │ y2="75"/>                                                                    │

00:00:20 #1140 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:20 #1141 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1142 [Verbose] >

00:00:20 #1143 [Verbose] > ╭─[ 495.02ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #1144 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:20 #1145 [Verbose] > │ and UH0 =                                                                    │

00:00:20 #1146 [Verbose] > │     | UH0_0 of float * UH0                                                   │

00:00:20 #1147 [Verbose] > │     | UH0_1                                                                  │

00:00:20 #1148 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:20 #1149 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:20 #1150 [Verbose] > │     let v2 : bool = v1 < 51                                                  │

00:00:20 #1151 [Verbose] > │     v2                                                                       │

00:00:20 #1152 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:20 #1153 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:20 #1154 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:20 #1155 [Verbose] > │     v3                                                                       │

00:00:20 #1156 [Verbose] > │ and method3 (v0 : float, v1 : float) : UH0 =                                 │

00:00:20 #1157 [Verbose] > │     let v2 : bool = v1 < v0                                                  │

00:00:20 #1158 [Verbose] > │     if v2 then                                                               │

00:00:20 #1159 [Verbose] > │         let v3 : float = 0.1 * v1                                            │

00:00:20 #1160 [Verbose] > │         let v4 : float = 0.05 + v3                                           │

00:00:20 #1161 [Verbose] > │         let v5 : float = v1 + 1.0                                            │

00:00:20 #1162 [Verbose] > │         let v6 : UH0 = method3(v0, v5)                                       │

00:00:20 #1163 [Verbose] > │         UH0_0(v4, v6)                                                        │

00:00:20 #1164 [Verbose] > │     else                                                                     │

00:00:20 #1165 [Verbose] > │         UH0_1                                                                │

00:00:20 #1166 [Verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:20 #1167 [Verbose] > │     match v0 with                                                            │

00:00:20 #1168 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:20 #1169 [Verbose] > │         let v4 : UH0 = method5(v3, v1)                                       │

00:00:20 #1170 [Verbose] > │         let v5 : float = v2 / 20.0                                           │

00:00:20 #1171 [Verbose] > │         let v6 : int32 = int32 v5                                            │

00:00:20 #1172 [Verbose] > │         let v7 : float = float v6                                            │

00:00:20 #1173 [Verbose] > │         let v8 : float = v7 * 20.0                                           │

00:00:20 #1174 [Verbose] > │         let v9 : float = v2 - v8                                             │

00:00:20 #1175 [Verbose] > │         let v10 : bool = v9 > 0.0                                            │

00:00:20 #1176 [Verbose] > │         let v12 : bool =                                                     │

00:00:20 #1177 [Verbose] > │             if v10 then                                                      │

00:00:20 #1178 [Verbose] > │                 let v11 : bool = v9 < 10.0                                   │

00:00:20 #1179 [Verbose] > │                 v11                                                          │

00:00:20 #1180 [Verbose] > │             else                                                             │

00:00:20 #1181 [Verbose] > │                 false                                                        │

00:00:20 #1182 [Verbose] > │         let v13 : float =                                                    │

00:00:20 #1183 [Verbose] > │             if v12 then                                                      │

00:00:20 #1184 [Verbose] > │                 10.0                                                         │

00:00:20 #1185 [Verbose] > │             else                                                             │

00:00:20 #1186 [Verbose] > │                 0.0                                                          │

00:00:20 #1187 [Verbose] > │         let v14 : float = v13 / 20.0                                         │

00:00:20 #1188 [Verbose] > │         let v15 : float = 0.1 * v14                                          │

00:00:20 #1189 [Verbose] > │         UH0_0(v15, v4)                                                       │

00:00:20 #1190 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:20 #1191 [Verbose] > │         v1                                                                   │

00:00:20 #1192 [Verbose] > │ and method6 (v0 : UH0, v1 : float) : float =                                 │

00:00:20 #1193 [Verbose] > │     match v0 with                                                            │

00:00:20 #1194 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:20 #1195 [Verbose] > │         let v4 : float = v1 + v2                                             │

00:00:20 #1196 [Verbose] > │         method6(v3, v4)                                                      │

00:00:20 #1197 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:20 #1198 [Verbose] > │         v1                                                                   │

00:00:20 #1199 [Verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:20 #1200 [Verbose] > │     match v0 with                                                            │

00:00:20 #1201 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:20 #1202 [Verbose] > │         let v4 : UH0 = method4(v3, v1)                                       │

00:00:20 #1203 [Verbose] > │         let v5 : float = v2 - 0.05                                           │

00:00:20 #1204 [Verbose] > │         let v6 : float = v5 - 0.05                                           │

00:00:20 #1205 [Verbose] > │         let v7 : float = v6 / 0.1                                            │

00:00:20 #1206 [Verbose] > │         let v8 : float = v7 + 1.0                                            │

00:00:20 #1207 [Verbose] > │         let v9 : float = 0.0                                                 │

00:00:20 #1208 [Verbose] > │         let v10 : UH0 = method3(v8, v9)                                      │

00:00:20 #1209 [Verbose] > │         let v11 : UH0 = UH0_1                                                │

00:00:20 #1210 [Verbose] > │         let v12 : UH0 = method5(v10, v11)                                    │

00:00:20 #1211 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:20 #1212 [Verbose] > │         let v14 : float = method6(v12, v13)                                  │

00:00:20 #1213 [Verbose] > │         let v15 : float = 0.1 * v14                                          │

00:00:20 #1214 [Verbose] > │         UH0_0(v15, v4)                                                       │

00:00:20 #1215 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:20 #1216 [Verbose] > │         v1                                                                   │

00:00:20 #1217 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:20 #1218 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:20 #1219 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (51)                       │

00:00:20 #1220 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:20 #1221 [Verbose] > │     while method1(v1) do                                                     │

00:00:20 #1222 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:20 #1223 [Verbose] > │         let v4 : float = float v3                                            │

00:00:20 #1224 [Verbose] > │         let v5 : float = -5.0 + v4                                           │

00:00:20 #1225 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:20 #1226 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:20 #1227 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:20 #1228 [Verbose] > │         ()                                                                   │

00:00:20 #1229 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:20 #1230 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:20 #1231 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:20 #1232 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:20 #1233 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:20 #1234 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:20 #1235 [Verbose] > │         let v13 : float = v12 - 0.05                                         │

00:00:20 #1236 [Verbose] > │         let v14 : float = v13 - 0.05                                         │

00:00:20 #1237 [Verbose] > │         let v15 : float = v14 / 0.1                                          │

00:00:20 #1238 [Verbose] > │         let v16 : float = v15 + 1.0                                          │

00:00:20 #1239 [Verbose] > │         let v17 : float = 0.0                                                │

00:00:20 #1240 [Verbose] > │         let v18 : UH0 = method3(v16, v17)                                    │

00:00:20 #1241 [Verbose] > │         let v19 : UH0 = UH0_1                                                │

00:00:20 #1242 [Verbose] > │         let v20 : UH0 = method4(v18, v19)                                    │

00:00:20 #1243 [Verbose] > │         let v21 : float = 0.0                                                │

00:00:20 #1244 [Verbose] > │         let v22 : float = method6(v20, v21)                                  │

00:00:20 #1245 [Verbose] > │         v8.[int v11] <- v22                                                  │

00:00:20 #1246 [Verbose] > │         let v23 : int32 = v11 + 1                                            │

00:00:20 #1247 [Verbose] > │         v9.l0 <- v23                                                         │

00:00:20 #1248 [Verbose] > │         ()                                                                   │

00:00:20 #1249 [Verbose] > │     let v24 : string = "position of bike (m)"                                │

00:00:20 #1250 [Verbose] > │     let v25 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:20 #1251 [Verbose] > │ (v24, v0, v8)|]                                                              │

00:00:20 #1252 [Verbose] > │     let v26 : string = "child pedaling then coasting"                        │

00:00:20 #1253 [Verbose] > │     let v27 : string = "time (s)"                                            │

00:00:20 #1254 [Verbose] > │     let v28 : string = ""                                                    │

00:00:20 #1255 [Verbose] > │     struct (v26, v27, v28, v25)                                              │

00:00:20 #1256 [Verbose] > │ method0()                                                                    │

00:00:20 #1257 [Verbose] > │                                                                              │

00:00:20 #1258 [Verbose] > │                                                                              │

00:00:20 #1259 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1260 [Verbose] >

00:00:20 #1261 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:20 #1262 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:20 #1263 [Verbose] > │ ## velocity_fv                                                               │

00:00:20 #1264 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1265 [Verbose] >

00:00:20 #1266 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #1267 [Verbose] > inl newton_second_v m fs v0 =

00:00:20 #1268 [Verbose] >     fs |> listm.map (fun f => f v0) |> listm'.sum |> fun x => x / m

00:00:20 #1269 [Verbose] >

00:00:20 #1270 [Verbose] > inl update_velocity dt m fs v0 =

00:00:20 #1271 [Verbose] >     v0 + newton_second_v m fs v0 * dt

00:00:20 #1272 [Verbose] >

00:00:20 #1273 [Verbose] > inl velocity_fv dt m v0 fs t =

00:00:20 #1274 [Verbose] >     stream.iterate (update_velocity dt m fs) v0

00:00:20 #1275 [Verbose] >     |> stream.try_item (t / dt |> math.round |> abs)

00:00:20 #1276 [Verbose] >     |> optionm'.default_value 0

00:00:20 #1277 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5277-7785-7815ad8c1178\main.spi

00:00:20 #1278 [Verbose] >

00:00:20 #1279 [Verbose] > ╭─[ 167.02ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #1280 [Verbose] > │ ()                                                                           │

00:00:20 #1281 [Verbose] > │                                                                              │

00:00:20 #1282 [Verbose] > │                                                                              │

00:00:20 #1283 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1284 [Verbose] >

00:00:20 #1285 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #1286 [Verbose] > inl f_air drag rho area v =

00:00:20 #1287 [Verbose] >     -drag * rho * area * abs v * v / 2

00:00:20 #1288 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5294-9463-9f6dacc1b6fd\main.spi

00:00:20 #1289 [Verbose] >

00:00:20 #1290 [Verbose] > ╭─[ 200.17ms - stdout ]────────────────────────────────────────────────────────╮

00:00:20 #1291 [Verbose] > │ ()                                                                           │

00:00:20 #1292 [Verbose] > │                                                                              │

00:00:20 #1293 [Verbose] > │                                                                              │

00:00:20 #1294 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #1295 [Verbose] >

00:00:20 #1296 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:20 #1297 [Verbose] > // // test

00:00:20 #1298 [Verbose] >

00:00:20 #1299 [Verbose] > inl x = am'.init_series 0 60 0.5

00:00:20 #1300 [Verbose] > inl y = x |> am.map (velocity_fv 1 70 0f64 [[ fun _ => 100; f_air 2 1.225 0.6

00:00:20 #1301 [Verbose] > ]])

00:00:20 #1302 [Verbose] > "bike velocity", "time (s)", "", ;[[ "velocity of bike (m/s)", x, y ]]

00:00:21 #1303 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5315-1503-1e8c80b6b48a\main.spi

00:00:21 #1304 [Verbose] >

00:00:21 #1305 [Verbose] > ╭─[ 537.47ms - return value ]──────────────────────────────────────────────────╮

00:00:21 #1306 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:21 #1307 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:21 #1308 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:21 #1309 [Verbose] > │ stroke="none"/>                                                              │

00:00:21 #1310 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:21 #1311 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:21 #1312 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:21 #1313 [Verbose] > │ bike velocity                                                                │

00:00:21 #1314 [Verbose] > │ </text>                                                                      │

00:00:21 #1315 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:21 #1316 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1317 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:21 #1318 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1319 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:21 #1320 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1321 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:21 #1322 [Verbose] > │ y2="75"/>                                                                    │

00:00:21 #1323 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="94" y1="424" x...    │

00:00:21 #1324 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1325 [Verbose] >

00:00:21 #1326 [Verbose] > ╭─[ 551.83ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #1327 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:21 #1328 [Verbose] > │ and UH0 =                                                                    │

00:00:21 #1329 [Verbose] > │     | UH0_0 of float * (unit -> UH0)                                         │

00:00:21 #1330 [Verbose] > │     | UH0_1                                                                  │

00:00:21 #1331 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:21 #1332 [Verbose] > │     | US0_0                                                                  │

00:00:21 #1333 [Verbose] > │     | US0_1 of f1_0 : float                                                  │

00:00:21 #1334 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:21 #1335 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:21 #1336 [Verbose] > │     let v2 : bool = v1 < 121                                                 │

00:00:21 #1337 [Verbose] > │     v2                                                                       │

00:00:21 #1338 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:21 #1339 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:21 #1340 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:21 #1341 [Verbose] > │     v3                                                                       │

00:00:21 #1342 [Verbose] > │ and closure129 () () : UH0 =                                                 │

00:00:21 #1343 [Verbose] > │     let v0 : (unit -> UH0) = closure129()                                    │

00:00:21 #1344 [Verbose] > │     UH0_0(11.664236870396083, v0)                                            │

00:00:21 #1345 [Verbose] > │ and closure128 () () : UH0 =                                                 │

00:00:21 #1346 [Verbose] > │     let v0 : (unit -> UH0) = closure129()                                    │

00:00:21 #1347 [Verbose] > │     UH0_0(11.664236870396081, v0)                                            │

00:00:21 #1348 [Verbose] > │ and closure127 () () : UH0 =                                                 │

00:00:21 #1349 [Verbose] > │     let v0 : (unit -> UH0) = closure128()                                    │

00:00:21 #1350 [Verbose] > │     UH0_0(11.66423687039608, v0)                                             │

00:00:21 #1351 [Verbose] > │ and closure126 () () : UH0 =                                                 │

00:00:21 #1352 [Verbose] > │     let v0 : (unit -> UH0) = closure127()                                    │

00:00:21 #1353 [Verbose] > │     UH0_0(11.664236870396078, v0)                                            │

00:00:21 #1354 [Verbose] > │ and closure125 () () : UH0 =                                                 │

00:00:21 #1355 [Verbose] > │     let v0 : (unit -> UH0) = closure126()                                    │

00:00:21 #1356 [Verbose] > │     UH0_0(11.664236870396074, v0)                                            │

00:00:21 #1357 [Verbose] > │ and closure124 () () : UH0 =                                                 │

00:00:21 #1358 [Verbose] > │     let v0 : (unit -> UH0) = closure125()                                    │

00:00:21 #1359 [Verbose] > │     UH0_0(11.66423687039607, v0)                                             │

00:00:21 #1360 [Verbose] > │ and closure123 () () : UH0 =                                                 │

00:00:21 #1361 [Verbose] > │     let v0 : (unit -> UH0) = closure124()                                    │

00:00:21 #1362 [Verbose] > │     UH0_0(11.664236870396065, v0)                                            │

00:00:21 #1363 [Verbose] > │ and closure122 () () : UH0 =                                                 │

00:00:21 #1364 [Verbose] > │     let v0 : (unit -> UH0) = closure123()                                    │

00:00:21 #1365 [Verbose] > │     UH0_0(11.664236870396058, v0)                                            │

00:00:21 #1366 [Verbose] > │ and closure121 () () : UH0 =                                                 │

00:00:21 #1367 [Verbose] > │     let v0 : (unit -> UH0) = closure122()                                    │

00:00:21 #1368 [Verbose] > │     UH0_0(11.66423687039605, v0)                                             │

00:00:21 #1369 [Verbose] > │ and closure120 () () : UH0 =                                                 │

00:00:21 #1370 [Verbose] > │     let v0 : (unit -> UH0) = closure121()                                    │

00:00:21 #1371 [Verbose] > │     UH0_0(11.664236870396037, v0)                                            │

00:00:21 #1372 [Verbose] > │ and closure119 () () : UH0 =                                                 │

00:00:21 #1373 [Verbose] > │     let v0 : (unit -> UH0) = closure120()                                    │

00:00:21 #1374 [Verbose] > │     UH0_0(11.66423687039602, v0)                                             │

00:00:21 #1375 [Verbose] > │ and closure118 () () : UH0 =                                                 │

00:00:21 #1376 [Verbose] > │     let v0 : (unit -> UH0) = closure119()                                    │

00:00:21 #1377 [Verbose] > │     UH0_0(11.664236870396, v0)                                               │

00:00:21 #1378 [Verbose] > │ and closure117 () () : UH0 =                                                 │

00:00:21 #1379 [Verbose] > │     let v0 : (unit -> UH0) = closure118()                                    │

00:00:21 #1380 [Verbose] > │     UH0_0(11.664236870395971, v0)                                            │

00:00:21 #1381 [Verbose] > │ and closure116 () () : UH0 =                                                 │

00:00:21 #1382 [Verbose] > │     let v0 : (unit -> UH0) = closure117()                                    │

00:00:21 #1383 [Verbose] > │     UH0_0(11.664236870395934, v0)                                            │

00:00:21 #1384 [Verbose] > │ and closure115 () () : UH0 =                                                 │

00:00:21 #1385 [Verbose] > │     let v0 : (unit -> UH0) = closure116()                                    │

00:00:21 #1386 [Verbose] > │     UH0_0(11.664236870395884, v0)                                            │

00:00:21 #1387 [Verbose] > │ and closure114 () () : UH0 =                                                 │

00:00:21 #1388 [Verbose] > │     let v0 : (unit -> UH0) = closure115()                                    │

00:00:21 #1389 [Verbose] > │     UH0_0(11.664236870395818, v0)                                            │

00:00:21 #1390 [Verbose] > │ and closure113 () () : UH0 =                                                 │

00:00:21 #1391 [Verbose] > │     let v0 : (unit -> UH0) = closure114()                                    │

00:00:21 #1392 [Verbose] > │     UH0_0(11.664236870395731, v0)                                            │

00:00:21 #1393 [Verbose] > │ and closure112 () () : UH0 =                                                 │

00:00:21 #1394 [Verbose] > │     let v0 : (unit -> UH0) = closure113()                                    │

00:00:21 #1395 [Verbose] > │     UH0_0(11.664236870395616, v0)                                            │

00:00:21 #1396 [Verbose] > │ and closure111 () () : UH0 =                                                 │

00:00:21 #1397 [Verbose] > │     let v0 : (unit -> UH0) = closure112()                                    │

00:00:21 #1398 [Verbose] > │     UH0_0(11.664236870395463, v0)                                            │

00:00:21 #1399 [Verbose] > │ and closure110 () () : UH0 =                                                 │

00:00:21 #1400 [Verbose] > │     let v0 : (unit -> UH0) = closure111()                                    │

00:00:21 #1401 [Verbose] > │     UH0_0(11.66423687039526, v0)                                             │

00:00:21 #1402 [Verbose] > │ and closure109 () () : UH0 =                                                 │

00:00:21 #1403 [Verbose] > │     let v0 : (unit -> UH0) = closure110()                                    │

00:00:21 #1404 [Verbose] > │     UH0_0(11.664236870394992, v0)                                            │

00:00:21 #1405 [Verbose] > │ and closure108 () () : UH0 =                                                 │

00:00:21 #1406 [Verbose] > │     let v0 : (unit -> UH0) = closure109()                                    │

00:00:21 #1407 [Verbose] > │     UH0_0(11.664236870394637, v0)                                            │

00:00:21 #1408 [Verbose] > │ and closure107 () () : UH0 =                                                 │

00:00:21 #1409 [Verbose] > │     let v0 : (unit -> UH0) = closure108()                                    │

00:00:21 #1410 [Verbose] > │     UH0_0(11.664236870394168, v0)                                            │

00:00:21 #1411 [Verbose] > │ and closure106 () () : UH0 =                                                 │

00:00:21 #1412 [Verbose] > │     let v0 : (unit -> UH0) = closure107()                                    │

00:00:21 #1413 [Verbose] > │     UH0_0(11.664236870393546, v0)                                            │

00:00:21 #1414 [Verbose] > │ and closure105 () () : UH0 =                                                 │

00:00:21 #1415 [Verbose] > │     let v0 : (unit -> UH0) = closure106()                                    │

00:00:21 #1416 [Verbose] > │     UH0_0(11.664236870392722, v0)                                            │

00:00:21 #1417 [Verbose] > │ and closure104 () () : UH0 =                                                 │

00:00:21 #1418 [Verbose] > │     let v0 : (unit -> UH0) = closure105()                                    │

00:00:21 #1419 [Verbose] > │     UH0_0(11.664236870391631, v0)                                            │

00:00:21 #1420 [Verbose] > │ and closure103 () () : UH0 =                                                 │

00:00:21 #1421 [Verbose] > │     let v0 : (unit -> UH0) = closure104()                                    │

00:00:21 #1422 [Verbose] > │     UH0_0(11.664236870390187, v0)                                            │

00:00:21 #1423 [Verbose] > │ and closure102 () () : UH0 =                                                 │

00:00:21 #1424 [Verbose] > │     let v0 : (unit -> UH0) = closure103()                                    │

00:00:21 #1425 [Verbose] > │     UH0_0(11.664236870388274, v0)                                            │

00:00:21 #1426 [Verbose] > │ and closure101 () () : UH0 =                                                 │

00:00:21 #1427 [Verbose] > │     let v0 : (unit -> UH0) = closure102()                                    │

00:00:21 #1428 [Verbose] > │     UH0_0(11.66423687038574, v0)                                             │

00:00:21 #1429 [Verbose] > │ and closure100 () () : UH0 =                                                 │

00:00:21 #1430 [Verbose] > │     let v0 : (unit -> UH0) = closure101()                                    │

00:00:21 #1431 [Verbose] > │     UH0_0(11.664236870382384, v0)                                            │

00:00:21 #1432 [Verbose] > │ and closure99 () () : UH0 =                                                  │

00:00:21 #1433 [Verbose] > │     let v0 : (unit -> UH0) = closure100()                                    │

00:00:21 #1434 [Verbose] > │     UH0_0(11.664236870377938, v0)                                            │

00:00:21 #1435 [Verbose] > │ and closure98 () () : UH0 =                                                  │

00:00:21 #1436 [Verbose] > │     let v0 : (unit -> UH0) = closure99()                                     │

00:00:21 #1437 [Verbose] > │     UH0_0(11.66423687037205, v0)                                             │

00:00:21 #1438 [Verbose] > │ and closure97 () () : UH0 =                                                  │

00:00:21 #1439 [Verbose] > │     let v0 : (unit -> UH0) = closure98()                                     │

00:00:21 #1440 [Verbose] > │     UH0_0(11.664236870364254, v0)                                            │

00:00:21 #1441 [Verbose] > │ and closure96 () () : UH0 =                                                  │

00:00:21 #1442 [Verbose] > │     let v0 : (unit -> UH0) = closure97()                                     │

00:00:21 #1443 [Verbose] > │     UH0_0(11.664236870353927, v0)                                            │

00:00:21 #1444 [Verbose] > │ and closure95 () () : UH0 =                                                  │

00:00:21 #1445 [Verbose] > │     let v0 : (unit -> UH0) = closure96()                                     │

00:00:21 #1446 [Verbose] > │     UH0_0(11.664236870340249, v0)                                            │

00:00:21 #1447 [Verbose] > │ and closure94 () () : UH0 =                                                  │

00:00:21 #1448 [Verbose] > │     let v0 : (unit -> UH0) = closure95()                                     │

00:00:21 #1449 [Verbose] > │     UH0_0(11.664236870322135, v0)                                            │

00:00:21 #1450 [Verbose] > │ and closure93 () () : UH0 =                                                  │

00:00:21 #1451 [Verbose] > │     let v0 : (unit -> UH0) = closure94()                                     │

00:00:21 #1452 [Verbose] > │     UH0_0(11.664236870298145, v0)                                            │

00:00:21 #1453 [Verbose] > │ and closure92 () () : UH0 =                                                  │

00:00:21 #1454 [Verbose] > │     let v0 : (unit -> UH0) = closure93()                                     │

00:00:21 #1455 [Verbose] > │     UH0_0(11.664236870266372, v0)                                            │

00:00:21 #1456 [Verbose] > │ and closure91 () () : UH0 =                                                  │

00:00:21 #1457 [Verbose] > │     let v0 : (unit -> UH0) = closure92()                                     │

00:00:21 #1458 [Verbose] > │     UH0_0(11.664236870224292, v0)                                            │

00:00:21 #1459 [Verbose] > │ and closure90 () () : UH0 =                                                  │

00:00:21 #1460 [Verbose] > │     let v0 : (unit -> UH0) = closure91()                                     │

00:00:21 #1461 [Verbose] > │     UH0_0(11.66423687016856, v0)                                             │

00:00:21 #1462 [Verbose] > │ and closure89 () () : UH0 =                                                  │

00:00:21 #1463 [Verbose] > │     let v0 : (unit -> UH0) = closure90()                                     │

00:00:21 #1464 [Verbose] > │     UH0_0(11.664236870094747, v0)                                            │

00:00:21 #1465 [Verbose] > │ and closure88 () () : UH0 =                                                  │

00:00:21 #1466 [Verbose] > │     let v0 : (unit -> UH0) = closure89()                                     │

00:00:21 #1467 [Verbose] > │     UH0_0(11.664236869996989, v0)                                            │

00:00:21 #1468 [Verbose] > │ and closure87 () () : UH0 =                                                  │

00:00:21 #1469 [Verbose] > │     let v0 : (unit -> UH0) = closure88()                                     │

00:00:21 #1470 [Verbose] > │     UH0_0(11.664236869867516, v0)                                            │

00:00:21 #1471 [Verbose] > │ and closure86 () () : UH0 =                                                  │

00:00:21 #1472 [Verbose] > │     let v0 : (unit -> UH0) = closure87()                                     │

00:00:21 #1473 [Verbose] > │     UH0_0(11.66423686969604, v0)                                             │

00:00:21 #1474 [Verbose] > │ and closure85 () () : UH0 =                                                  │

00:00:21 #1475 [Verbose] > │     let v0 : (unit -> UH0) = closure86()                                     │

00:00:21 #1476 [Verbose] > │     UH0_0(11.664236869468937, v0)                                            │

00:00:21 #1477 [Verbose] > │ and closure84 () () : UH0 =                                                  │

00:00:21 #1478 [Verbose] > │     let v0 : (unit -> UH0) = closure85()                                     │

00:00:21 #1479 [Verbose] > │     UH0_0(11.664236869168157, v0)                                            │

00:00:21 #1480 [Verbose] > │ and closure83 () () : UH0 =                                                  │

00:00:21 #1481 [Verbose] > │     let v0 : (unit -> UH0) = closure84()                                     │

00:00:21 #1482 [Verbose] > │     UH0_0(11.6642368687698, v0)                                              │

00:00:21 #1483 [Verbose] > │ and closure82 () () : UH0 =                                                  │

00:00:21 #1484 [Verbose] > │     let v0 : (unit -> UH0) = closure83()                                     │

00:00:21 #1485 [Verbose] > │     UH0_0(11.664236868242211, v0)                                            │

00:00:21 #1486 [Verbose] > │ and closure81 () () : UH0 =                                                  │

00:00:21 #1487 [Verbose] > │     let v0 : (unit -> UH0) = closure82()                                     │

00:00:21 #1488 [Verbose] > │     UH0_0(11.664236867543465, v0)                                            │

00:00:21 #1489 [Verbose] > │ and closure80 () () : UH0 =                                                  │

00:00:21 #1490 [Verbose] > │     let v0 : (unit -> UH0) = closure81()                                     │

00:00:21 #1491 [Verbose] > │     UH0_0(11.664236866618037, v0)                                            │

00:00:21 #1492 [Verbose] > │ and closure79 () () : UH0 =                                                  │

00:00:21 #1493 [Verbose] > │     let v0 : (unit -> UH0) = closure80()                                     │

00:00:21 #1494 [Verbose] > │     UH0_0(11.664236865392386, v0)                                            │

00:00:21 #1495 [Verbose] > │ and closure78 () () : UH0 =                                                  │

00:00:21 #1496 [Verbose] > │     let v0 : (unit -> UH0) = closure79()                                     │

00:00:21 #1497 [Verbose] > │     UH0_0(11.664236863769117, v0)                                            │

00:00:21 #1498 [Verbose] > │ and closure77 () () : UH0 =                                                  │

00:00:21 #1499 [Verbose] > │     let v0 : (unit -> UH0) = closure78()                                     │

00:00:21 #1500 [Verbose] > │     UH0_0(11.664236861619237, v0)                                            │

00:00:21 #1501 [Verbose] > │ and closure76 () () : UH0 =                                                  │

00:00:21 #1502 [Verbose] > │     let v0 : (unit -> UH0) = closure77()                                     │

00:00:21 #1503 [Verbose] > │     UH0_0(11.664236858771906, v0)                                            │

00:00:21 #1504 [Verbose] > │ and closure75 () () : UH0 =                                                  │

00:00:21 #1505 [Verbose] > │     let v0 : (unit -> UH0) = closure76()                                     │

00:00:21 #1506 [Verbose] > │     UH0_0(11.66423685500086, v0)                                             │

00:00:21 #1507 [Verbose] > │ and closure74 () () : UH0 =                                                  │

00:00:21 #1508 [Verbose] > │     let v0 : (unit -> UH0) = closure75()                                     │

00:00:21 #1509 [Verbose] > │     UH0_0(11.664236850006436, v0)                                            │

00:00:21 #1510 [Verbose] > │ and closure73 () () : UH0 =                                                  │

00:00:21 #1511 [Verbose] > │     let v0 : (unit -> UH0) = closure74()                                     │

00:00:21 #1512 [Verbose] > │     UH0_0(11.664236843391752, v0)                                            │

00:00:21 #1513 [Verbose] > │ and closure72 () () : UH0 =                                                  │

00:00:21 #1514 [Verbose] > │     let v0 : (unit -> UH0) = closure73()                                     │

00:00:21 #1515 [Verbose] > │     UH0_0(11.664236834631172, v0)                                            │

00:00:21 #1516 [Verbose] > │ and closure71 () () : UH0 =                                                  │

00:00:21 #1517 [Verbose] > │     let v0 : (unit -> UH0) = closure72()                                     │

00:00:21 #1518 [Verbose] > │     UH0_0(11.66423682302854, v0)                                             │

00:00:21 #1519 [Verbose] > │ and closure70 () () : UH0 =                                                  │

00:00:21 #1520 [Verbose] > │     let v0 : (unit -> UH0) = closure71()                                     │

00:00:21 #1521 [Verbose] > │     UH0_0(11.664236807661855, v0)                                            │

00:00:21 #1522 [Verbose] > │ and closure69 () () : UH0 =                                                  │

00:00:21 #1523 [Verbose] > │     let v0 : (unit -> UH0) = closure70()                                     │

00:00:21 #1524 [Verbose] > │     UH0_0(11.664236787310005, v0)                                            │

00:00:21 #1525 [Verbose] > │ and closure68 () () : UH0 =                                                  │

00:00:21 #1526 [Verbose] > │     let v0 : (unit -> UH0) = closure69()                                     │

00:00:21 #1527 [Verbose] > │     UH0_0(11.664236760355733, v0)                                            │

00:00:21 #1528 [Verbose] > │ and closure67 () () : UH0 =                                                  │

00:00:21 #1529 [Verbose] > │     let v0 : (unit -> UH0) = closure68()                                     │

00:00:21 #1530 [Verbose] > │     UH0_0(11.664236724657123, v0)                                            │

00:00:21 #1531 [Verbose] > │ and closure66 () () : UH0 =                                                  │

00:00:21 #1532 [Verbose] > │     let v0 : (unit -> UH0) = closure67()                                     │

00:00:21 #1533 [Verbose] > │     UH0_0(11.66423667737739, v0)                                             │

00:00:21 #1534 [Verbose] > │ and closure65 () () : UH0 =                                                  │

00:00:21 #1535 [Verbose] > │     let v0 : (unit -> UH0) = closure66()                                     │

00:00:21 #1536 [Verbose] > │     UH0_0(11.664236614759462, v0)                                            │

00:00:21 #1537 [Verbose] > │ and closure64 () () : UH0 =                                                  │

00:00:21 #1538 [Verbose] > │     let v0 : (unit -> UH0) = closure65()                                     │

00:00:21 #1539 [Verbose] > │     UH0_0(11.664236531827415, v0)                                            │

00:00:21 #1540 [Verbose] > │ and closure63 () () : UH0 =                                                  │

00:00:21 #1541 [Verbose] > │     let v0 : (unit -> UH0) = closure64()                                     │

00:00:21 #1542 [Verbose] > │     UH0_0(11.664236421991067, v0)                                            │

00:00:21 #1543 [Verbose] > │ and closure62 () () : UH0 =                                                  │

00:00:21 #1544 [Verbose] > │     let v0 : (unit -> UH0) = closure63()                                     │

00:00:21 #1545 [Verbose] > │     UH0_0(11.664236276522294, v0)                                            │

00:00:21 #1546 [Verbose] > │ and closure61 () () : UH0 =                                                  │

00:00:21 #1547 [Verbose] > │     let v0 : (unit -> UH0) = closure62()                                     │

00:00:21 #1548 [Verbose] > │     UH0_0(11.664236083861448, v0)                                            │

00:00:21 #1549 [Verbose] > │ and closure60 () () : UH0 =                                                  │

00:00:21 #1550 [Verbose] > │     let v0 : (unit -> UH0) = closure61()                                     │

00:00:21 #1551 [Verbose] > │     UH0_0(11.664235828698772, v0)                                            │

00:00:21 #1552 [Verbose] > │ and closure59 () () : UH0 =                                                  │

00:00:21 #1553 [Verbose] > │     let v0 : (unit -> UH0) = closure60()                                     │

00:00:21 #1554 [Verbose] > │     UH0_0(11.664235490757811, v0)                                            │

00:00:21 #1555 [Verbose] > │ and closure58 () () : UH0 =                                                  │

00:00:21 #1556 [Verbose] > │     let v0 : (unit -> UH0) = closure59()                                     │

00:00:21 #1557 [Verbose] > │     UH0_0(11.664235043184158, v0)                                            │

00:00:21 #1558 [Verbose] > │ and closure57 () () : UH0 =                                                  │

00:00:21 #1559 [Verbose] > │     let v0 : (unit -> UH0) = closure58()                                     │

00:00:21 #1560 [Verbose] > │     UH0_0(11.66423445041147, v0)                                             │

00:00:21 #1561 [Verbose] > │ and closure56 () () : UH0 =                                                  │

00:00:21 #1562 [Verbose] > │     let v0 : (unit -> UH0) = closure57()                                     │

00:00:21 #1563 [Verbose] > │     UH0_0(11.664233665335203, v0)                                            │

00:00:21 #1564 [Verbose] > │ and closure55 () () : UH0 =                                                  │

00:00:21 #1565 [Verbose] > │     let v0 : (unit -> UH0) = closure56()                                     │

00:00:21 #1566 [Verbose] > │     UH0_0(11.664232625569467, v0)                                            │

00:00:21 #1567 [Verbose] > │ and closure54 () () : UH0 =                                                  │

00:00:21 #1568 [Verbose] > │     let v0 : (unit -> UH0) = closure55()                                     │

00:00:21 #1569 [Verbose] > │     UH0_0(11.664231248489562, v0)                                            │

00:00:21 #1570 [Verbose] > │ and closure53 () () : UH0 =                                                  │

00:00:21 #1571 [Verbose] > │     let v0 : (unit -> UH0) = closure54()                                     │

00:00:21 #1572 [Verbose] > │     UH0_0(11.664229424666262, v0)                                            │

00:00:21 #1573 [Verbose] > │ and closure52 () () : UH0 =                                                  │

00:00:21 #1574 [Verbose] > │     let v0 : (unit -> UH0) = closure53()                                     │

00:00:21 #1575 [Verbose] > │     UH0_0(11.66422700917009, v0)                                             │

00:00:21 #1576 [Verbose] > │ and closure51 () () : UH0 =                                                  │

00:00:21 #1577 [Verbose] > │     let v0 : (unit -> UH0) = closure52()                                     │

00:00:21 #1578 [Verbose] > │     UH0_0(11.664223810054642, v0)                                            │

00:00:21 #1579 [Verbose] > │ and closure50 () () : UH0 =                                                  │

00:00:21 #1580 [Verbose] > │     let v0 : (unit -> UH0) = closure51()                                     │

00:00:21 #1581 [Verbose] > │     UH0_0(11.664219573103773, v0)                                            │

00:00:21 #1582 [Verbose] > │ and closure49 () () : UH0 =                                                  │

00:00:21 #1583 [Verbose] > │     let v0 : (unit -> UH0) = closure50()                                     │

00:00:21 #1584 [Verbose] > │     UH0_0(11.6642139616307, v0)                                              │

00:00:21 #1585 [Verbose] > │ and closure48 () () : UH0 =                                                  │

00:00:21 #1586 [Verbose] > │     let v0 : (unit -> UH0) = closure49()                                     │

00:00:21 #1587 [Verbose] > │     UH0_0(11.664206529723813, v0)                                            │

00:00:21 #1588 [Verbose] > │ and closure47 () () : UH0 =                                                  │

00:00:21 #1589 [Verbose] > │     let v0 : (unit -> UH0) = closure48()                                     │

00:00:21 #1590 [Verbose] > │     UH0_0(11.664196686813408, v0)                                            │

00:00:21 #1591 [Verbose] > │ and closure46 () () : UH0 =                                                  │

00:00:21 #1592 [Verbose] > │     let v0 : (unit -> UH0) = closure47()                                     │

00:00:21 #1593 [Verbose] > │     UH0_0(11.664183650743945, v0)                                            │

00:00:21 #1594 [Verbose] > │ and closure45 () () : UH0 =                                                  │

00:00:21 #1595 [Verbose] > │     let v0 : (unit -> UH0) = closure46()                                     │

00:00:21 #1596 [Verbose] > │     UH0_0(11.664166385623318, v0)                                            │

00:00:21 #1597 [Verbose] > │ and closure44 () () : UH0 =                                                  │

00:00:21 #1598 [Verbose] > │     let v0 : (unit -> UH0) = closure45()                                     │

00:00:21 #1599 [Verbose] > │     UH0_0(11.664143519511356, v0)                                            │

00:00:21 #1600 [Verbose] > │ and closure43 () () : UH0 =                                                  │

00:00:21 #1601 [Verbose] > │     let v0 : (unit -> UH0) = closure44()                                     │

00:00:21 #1602 [Verbose] > │     UH0_0(11.664113235408447, v0)                                            │

00:00:21 #1603 [Verbose] > │ and closure42 () () : UH0 =                                                  │

00:00:21 #1604 [Verbose] > │     let v0 : (unit -> UH0) = closure43()                                     │

00:00:21 #1605 [Verbose] > │     UH0_0(11.66407312688485, v0)                                             │

00:00:21 #1606 [Verbose] > │ and closure41 () () : UH0 =                                                  │

00:00:21 #1607 [Verbose] > │     let v0 : (unit -> UH0) = closure42()                                     │

00:00:21 #1608 [Verbose] > │     UH0_0(11.664020006883758, v0)                                            │

00:00:21 #1609 [Verbose] > │ and closure40 () () : UH0 =                                                  │

00:00:21 #1610 [Verbose] > │     let v0 : (unit -> UH0) = closure41()                                     │

00:00:21 #1611 [Verbose] > │     UH0_0(11.663949654514292, v0)                                            │

00:00:21 #1612 [Verbose] > │ and closure39 () () : UH0 =                                                  │

00:00:21 #1613 [Verbose] > │     let v0 : (unit -> UH0) = closure40()                                     │

00:00:21 #1614 [Verbose] > │     UH0_0(11.663856479730171, v0)                                            │

00:00:21 #1615 [Verbose] > │ and closure38 () () : UH0 =                                                  │

00:00:21 #1616 [Verbose] > │     let v0 : (unit -> UH0) = closure39()                                     │

00:00:21 #1617 [Verbose] > │     UH0_0(11.663733079277343, v0)                                            │

00:00:21 #1618 [Verbose] > │ and closure37 () () : UH0 =                                                  │

00:00:21 #1619 [Verbose] > │     let v0 : (unit -> UH0) = closure38()                                     │

00:00:21 #1620 [Verbose] > │     UH0_0(11.663569648675777, v0)                                            │

00:00:21 #1621 [Verbose] > │ and closure36 () () : UH0 =                                                  │

00:00:21 #1622 [Verbose] > │     let v0 : (unit -> UH0) = closure37()                                     │

00:00:21 #1623 [Verbose] > │     UH0_0(11.663353203599439, v0)                                            │

00:00:21 #1624 [Verbose] > │ and closure35 () () : UH0 =                                                  │

00:00:21 #1625 [Verbose] > │     let v0 : (unit -> UH0) = closure36()                                     │

00:00:21 #1626 [Verbose] > │     UH0_0(11.663066548940721, v0)                                            │

00:00:21 #1627 [Verbose] > │ and closure34 () () : UH0 =                                                  │

00:00:21 #1628 [Verbose] > │     let v0 : (unit -> UH0) = closure35()                                     │

00:00:21 #1629 [Verbose] > │     UH0_0(11.662686913915445, v0)                                            │

00:00:21 #1630 [Verbose] > │ and closure33 () () : UH0 =                                                  │

00:00:21 #1631 [Verbose] > │     let v0 : (unit -> UH0) = closure34()                                     │

00:00:21 #1632 [Verbose] > │     UH0_0(11.662184145236864, v0)                                            │

00:00:21 #1633 [Verbose] > │ and closure32 () () : UH0 =                                                  │

00:00:21 #1634 [Verbose] > │     let v0 : (unit -> UH0) = closure33()                                     │

00:00:21 #1635 [Verbose] > │     UH0_0(11.661518315638029, v0)                                            │

00:00:21 #1636 [Verbose] > │ and closure31 () () : UH0 =                                                  │

00:00:21 #1637 [Verbose] > │     let v0 : (unit -> UH0) = closure32()                                     │

00:00:21 #1638 [Verbose] > │     UH0_0(11.66063655920926, v0)                                             │

00:00:21 #1639 [Verbose] > │ and closure30 () () : UH0 =                                                  │

00:00:21 #1640 [Verbose] > │     let v0 : (unit -> UH0) = closure31()                                     │

00:00:21 #1641 [Verbose] > │     UH0_0(11.659468884709733, v0)                                            │

00:00:21 #1642 [Verbose] > │ and closure29 () () : UH0 =                                                  │

00:00:21 #1643 [Verbose] > │     let v0 : (unit -> UH0) = closure30()                                     │

00:00:21 #1644 [Verbose] > │     UH0_0(11.657922638782631, v0)                                            │

00:00:21 #1645 [Verbose] > │ and closure28 () () : UH0 =                                                  │

00:00:21 #1646 [Verbose] > │     let v0 : (unit -> UH0) = closure29()                                     │

00:00:21 #1647 [Verbose] > │     UH0_0(11.655875187195818, v0)                                            │

00:00:21 #1648 [Verbose] > │ and closure27 () () : UH0 =                                                  │

00:00:21 #1649 [Verbose] > │     let v0 : (unit -> UH0) = closure28()                                     │

00:00:21 #1650 [Verbose] > │     UH0_0(11.653164246713697, v0)                                            │

00:00:21 #1651 [Verbose] > │ and closure26 () () : UH0 =                                                  │

00:00:21 #1652 [Verbose] > │     let v0 : (unit -> UH0) = closure27()                                     │

00:00:21 #1653 [Verbose] > │     UH0_0(11.64957512416459, v0)                                             │

00:00:21 #1654 [Verbose] > │ and closure25 () () : UH0 =                                                  │

00:00:21 #1655 [Verbose] > │     let v0 : (unit -> UH0) = closure26()                                     │

00:00:21 #1656 [Verbose] > │     UH0_0(11.644823892116417, v0)                                            │

00:00:21 #1657 [Verbose] > │ and closure24 () () : UH0 =                                                  │

00:00:21 #1658 [Verbose] > │     let v0 : (unit -> UH0) = closure25()                                     │

00:00:21 #1659 [Verbose] > │     UH0_0(11.63853524018339, v0)                                             │

00:00:21 #1660 [Verbose] > │ and closure23 () () : UH0 =                                                  │

00:00:21 #1661 [Verbose] > │     let v0 : (unit -> UH0) = closure24()                                     │

00:00:21 #1662 [Verbose] > │     UH0_0(11.630213374558416, v0)                                            │

00:00:21 #1663 [Verbose] > │ and closure22 () () : UH0 =                                                  │

00:00:21 #1664 [Verbose] > │     let v0 : (unit -> UH0) = closure23()                                     │

00:00:21 #1665 [Verbose] > │     UH0_0(11.619203884549703, v0)                                            │

00:00:21 #1666 [Verbose] > │ and closure21 () () : UH0 =                                                  │

00:00:21 #1667 [Verbose] > │     let v0 : (unit -> UH0) = closure22()                                     │

00:00:21 #1668 [Verbose] > │     UH0_0(11.604643948207235, v0)                                            │

00:00:21 #1669 [Verbose] > │ and closure20 () () : UH0 =                                                  │

00:00:21 #1670 [Verbose] > │     let v0 : (unit -> UH0) = closure21()                                     │

00:00:21 #1671 [Verbose] > │     UH0_0(11.585397618384544, v0)                                            │

00:00:21 #1672 [Verbose] > │ and closure19 () () : UH0 =                                                  │

00:00:21 #1673 [Verbose] > │     let v0 : (unit -> UH0) = closure20()                                     │

00:00:21 #1674 [Verbose] > │     UH0_0(11.559972254267073, v0)                                            │

00:00:21 #1675 [Verbose] > │ and closure18 () () : UH0 =                                                  │

00:00:21 #1676 [Verbose] > │     let v0 : (unit -> UH0) = closure19()                                     │

00:00:21 #1677 [Verbose] > │     UH0_0(11.526411536153837, v0)                                            │

00:00:21 #1678 [Verbose] > │ and closure17 () () : UH0 =                                                  │

00:00:21 #1679 [Verbose] > │     let v0 : (unit -> UH0) = closure18()                                     │

00:00:21 #1680 [Verbose] > │     UH0_0(11.48216011776808, v0)                                             │

00:00:21 #1681 [Verbose] > │ and closure16 () () : UH0 =                                                  │

00:00:21 #1682 [Verbose] > │     let v0 : (unit -> UH0) = closure17()                                     │

00:00:21 #1683 [Verbose] > │     UH0_0(11.42389519391233, v0)                                             │

00:00:21 #1684 [Verbose] > │ and closure15 () () : UH0 =                                                  │

00:00:21 #1685 [Verbose] > │     let v0 : (unit -> UH0) = closure16()                                     │

00:00:21 #1686 [Verbose] > │     UH0_0(11.347321723441393, v0)                                            │

00:00:21 #1687 [Verbose] > │ and closure14 () () : UH0 =                                                  │

00:00:21 #1688 [Verbose] > │     let v0 : (unit -> UH0) = closure15()                                     │

00:00:21 #1689 [Verbose] > │     UH0_0(11.246931775734161, v0)                                            │

00:00:21 #1690 [Verbose] > │ and closure13 () () : UH0 =                                                  │

00:00:21 #1691 [Verbose] > │     let v0 : (unit -> UH0) = closure14()                                     │

00:00:21 #1692 [Verbose] > │     UH0_0(11.115736011467376, v0)                                            │

00:00:21 #1693 [Verbose] > │ and closure12 () () : UH0 =                                                  │

00:00:21 #1694 [Verbose] > │     let v0 : (unit -> UH0) = closure13()                                     │

00:00:21 #1695 [Verbose] > │     UH0_0(10.94498876251829, v0)                                             │

00:00:21 #1696 [Verbose] > │ and closure11 () () : UH0 =                                                  │

00:00:21 #1697 [Verbose] > │     let v0 : (unit -> UH0) = closure12()                                     │

00:00:21 #1698 [Verbose] > │     UH0_0(10.72394989903564, v0)                                             │

00:00:21 #1699 [Verbose] > │ and closure10 () () : UH0 =                                                  │

00:00:21 #1700 [Verbose] > │     let v0 : (unit -> UH0) = closure11()                                     │

00:00:21 #1701 [Verbose] > │     UH0_0(10.439758275369812, v0)                                            │

00:00:21 #1702 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:21 #1703 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:21 #1704 [Verbose] > │     UH0_0(10.077531599826058, v0)                                            │

00:00:21 #1705 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:21 #1706 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:21 #1707 [Verbose] > │     UH0_0(9.62084761372258, v0)                                              │

00:00:21 #1708 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:21 #1709 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:21 #1710 [Verbose] > │     UH0_0(9.052781056066443, v0)                                             │

00:00:21 #1711 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:21 #1712 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:21 #1713 [Verbose] > │     UH0_0(8.357635347880503, v0)                                             │

00:00:21 #1714 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:21 #1715 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:21 #1716 [Verbose] > │     UH0_0(7.523376447621674, v0)                                             │

00:00:21 #1717 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:21 #1718 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:21 #1719 [Verbose] > │     UH0_0(6.544529054818572, v0)                                             │

00:00:21 #1720 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:21 #1721 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:21 #1722 [Verbose] > │     UH0_0(5.424976512996006, v0)                                             │

00:00:21 #1723 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:21 #1724 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:21 #1725 [Verbose] > │     UH0_0(4.179852321428571, v0)                                             │

00:00:21 #1726 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:21 #1727 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:21 #1728 [Verbose] > │     UH0_0(2.835714285714286, v0)                                             │

00:00:21 #1729 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:21 #1730 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:21 #1731 [Verbose] > │     UH0_0(1.4285714285714286, v0)                                            │

00:00:21 #1732 [Verbose] > │ and method3 (v0 : float, v1 : UH0) : US0 =                                   │

00:00:21 #1733 [Verbose] > │     match v1 with                                                            │

00:00:21 #1734 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:21 #1735 [Verbose] > │         let v4 : bool = v0 <= 0.0                                            │

00:00:21 #1736 [Verbose] > │         if v4 then                                                           │

00:00:21 #1737 [Verbose] > │             US0_1(v2)                                                        │

00:00:21 #1738 [Verbose] > │         else                                                                 │

00:00:21 #1739 [Verbose] > │             let v6 : float = v0 - 1.0                                        │

00:00:21 #1740 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:21 #1741 [Verbose] > │             method3(v6, v7)                                                  │

00:00:21 #1742 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:21 #1743 [Verbose] > │         US0_0                                                                │

00:00:21 #1744 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:21 #1745 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:21 #1746 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (121)                      │

00:00:21 #1747 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:21 #1748 [Verbose] > │     while method1(v1) do                                                     │

00:00:21 #1749 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:21 #1750 [Verbose] > │         let v4 : float = float v3                                            │

00:00:21 #1751 [Verbose] > │         let v5 : float = 0.5 * v4                                            │

00:00:21 #1752 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:21 #1753 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:21 #1754 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:21 #1755 [Verbose] > │         ()                                                                   │

00:00:21 #1756 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:21 #1757 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:21 #1758 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:21 #1759 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:21 #1760 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:21 #1761 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:21 #1762 [Verbose] > │         let v13 : float = round v12                                          │

00:00:21 #1763 [Verbose] > │         let v14 : float =  -v13                                              │

00:00:21 #1764 [Verbose] > │         let v15 : bool = v13 >= v14                                          │

00:00:21 #1765 [Verbose] > │         let v16 : float =                                                    │

00:00:21 #1766 [Verbose] > │             if v15 then                                                      │

00:00:21 #1767 [Verbose] > │                 v13                                                          │

00:00:21 #1768 [Verbose] > │             else                                                             │

00:00:21 #1769 [Verbose] > │                 v14                                                          │

00:00:21 #1770 [Verbose] > │         let v17 : float = 0.0                                                │

00:00:21 #1771 [Verbose] > │         let v18 : (unit -> UH0) = closure0()                                 │

00:00:21 #1772 [Verbose] > │         let v19 : UH0 = UH0_0(v17, v18)                                      │

00:00:21 #1773 [Verbose] > │         let v20 : US0 = method3(v16, v19)                                    │

00:00:21 #1774 [Verbose] > │         let v23 : float =                                                    │

00:00:21 #1775 [Verbose] > │             match v20 with                                                   │

00:00:21 #1776 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:21 #1777 [Verbose] > │                 0.0                                                          │

00:00:21 #1778 [Verbose] > │             | US0_1(v21) -> (* Some *)                                       │

00:00:21 #1779 [Verbose] > │                 v21                                                          │

00:00:21 #1780 [Verbose] > │         v8.[int v11] <- v23                                                  │

00:00:21 #1781 [Verbose] > │         let v24 : int32 = v11 + 1                                            │

00:00:21 #1782 [Verbose] > │         v9.l0 <- v24                                                         │

00:00:21 #1783 [Verbose] > │         ()                                                                   │

00:00:21 #1784 [Verbose] > │     let v25 : string = "velocity of bike (m/s)"                              │

00:00:21 #1785 [Verbose] > │     let v26 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:21 #1786 [Verbose] > │ (v25, v0, v8)|]                                                              │

00:00:21 #1787 [Verbose] > │     let v27 : string = "bike velocity"                                       │

00:00:21 #1788 [Verbose] > │     let v28 : string = "time (s)"                                            │

00:00:21 #1789 [Verbose] > │     let v29 : string = ""                                                    │

00:00:21 #1790 [Verbose] > │     struct (v27, v28, v29, v26)                                              │

00:00:21 #1791 [Verbose] > │ method0()                                                                    │

00:00:21 #1792 [Verbose] > │                                                                              │

00:00:21 #1793 [Verbose] > │                                                                              │

00:00:21 #1794 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1795 [Verbose] >

00:00:21 #1796 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:21 #1797 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:21 #1798 [Verbose] > │ ## velocity_ftv                                                              │

00:00:21 #1799 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1800 [Verbose] >

00:00:21 #1801 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #1802 [Verbose] > inl newton_second_tv m fs (t, v0) =

00:00:21 #1803 [Verbose] >     inl f_net = fs |> listm.map (fun f => f (t, v0)) |> listm'.sum

00:00:21 #1804 [Verbose] >     inl acc = f_net / m

00:00:21 #1805 [Verbose] >     1, acc

00:00:21 #1806 [Verbose] >

00:00:21 #1807 [Verbose] > inl update_tv dt m fs (t, v0) =

00:00:21 #1808 [Verbose] >     inl dtdt, dvdt = newton_second_tv m fs (t, v0)

00:00:21 #1809 [Verbose] >     t + dtdt * dt, v0 + dvdt * dt

00:00:21 #1810 [Verbose] >

00:00:21 #1811 [Verbose] > inl velocity_ftv dt m tv0 fs t =

00:00:21 #1812 [Verbose] >     stream.iterate (join update_tv dt m fs) tv0

00:00:21 #1813 [Verbose] >     |> stream.try_item (t / dt |> math.round |> abs)

00:00:21 #1814 [Verbose] >     |> optionm.map snd

00:00:21 #1815 [Verbose] >     |> optionm'.default_value 0

00:00:21 #1816 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5391-9175-984ceda7fd7f\main.spi

00:00:21 #1817 [Verbose] >

00:00:21 #1818 [Verbose] > ╭─[ 157.29ms - stdout ]────────────────────────────────────────────────────────╮

00:00:21 #1819 [Verbose] > │ ()                                                                           │

00:00:21 #1820 [Verbose] > │                                                                              │

00:00:21 #1821 [Verbose] > │                                                                              │

00:00:21 #1822 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:21 #1823 [Verbose] >

00:00:21 #1824 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:21 #1825 [Verbose] > // // test

00:00:21 #1826 [Verbose] >

00:00:21 #1827 [Verbose] > inl x = am'.init_series 0 100 0.1

00:00:21 #1828 [Verbose] > inl y =

00:00:21 #1829 [Verbose] >     x

00:00:21 #1830 [Verbose] >     |> am.map (

00:00:21 #1831 [Verbose] >         velocity_ftv 0.1 20 (dyn (0, 0)) [[ fun (t, _) => pedal_coast t; fun (_,

00:00:21 #1832 [Verbose] > v) => f_air 2 1.225 0.5 v ]]

00:00:21 #1833 [Verbose] >     )

00:00:21 #1834 [Verbose] > "pedaling and coasting with air", "time (s)", "", ;[[ "velocity of bike (m/s)",

00:00:21 #1835 [Verbose] > x, y ]]

00:00:21 #1836 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5407-0764-05030a3bc3af\main.spi

00:00:22 #1837 [Verbose] >

00:00:22 #1838 [Verbose] > ╭─[ 321.40ms - return value ]──────────────────────────────────────────────────╮

00:00:22 #1839 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:22 #1840 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:22 #1841 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:22 #1842 [Verbose] > │ stroke="none"/>                                                              │

00:00:22 #1843 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:22 #1844 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:22 #1845 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:22 #1846 [Verbose] > │ pedaling and coasting with air                                               │

00:00:22 #1847 [Verbose] > │ </text>                                                                      │

00:00:22 #1848 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:22 #1849 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1850 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:22 #1851 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1852 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:22 #1853 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1854 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:22 #1855 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #1856 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x...                     │

00:00:22 #1857 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1858 [Verbose] >

00:00:22 #1859 [Verbose] > ╭─[ 330.75ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #1860 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:22 #1861 [Verbose] > │ and UH0 =                                                                    │

00:00:22 #1862 [Verbose] > │     | UH0_0 of float * float * (unit -> UH0)                                 │

00:00:22 #1863 [Verbose] > │     | UH0_1                                                                  │

00:00:22 #1864 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:22 #1865 [Verbose] > │     | US0_0                                                                  │

00:00:22 #1866 [Verbose] > │     | US0_1 of f1_0 : float * f1_1 : float                                   │

00:00:22 #1867 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:22 #1868 [Verbose] > │     | US1_0                                                                  │

00:00:22 #1869 [Verbose] > │     | US1_1 of f1_0 : float                                                  │

00:00:22 #1870 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:22 #1871 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:22 #1872 [Verbose] > │     let v2 : bool = v1 < 1001                                                │

00:00:22 #1873 [Verbose] > │     v2                                                                       │

00:00:22 #1874 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:22 #1875 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:22 #1876 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:22 #1877 [Verbose] > │     v3                                                                       │

00:00:22 #1878 [Verbose] > │ and closure0 () struct (v0 : float, v1 : float) : struct (float * float) =   │

00:00:22 #1879 [Verbose] > │     let v2 : float =  -v1                                                    │

00:00:22 #1880 [Verbose] > │     let v3 : bool = v1 >= v2                                                 │

00:00:22 #1881 [Verbose] > │     let v4 : float =                                                         │

00:00:22 #1882 [Verbose] > │         if v3 then                                                           │

00:00:22 #1883 [Verbose] > │             v1                                                               │

00:00:22 #1884 [Verbose] > │         else                                                                 │

00:00:22 #1885 [Verbose] > │             v2                                                               │

00:00:22 #1886 [Verbose] > │     let v5 : float = -1.225 * v4                                             │

00:00:22 #1887 [Verbose] > │     let v6 : float = v5 * v1                                                 │

00:00:22 #1888 [Verbose] > │     let v7 : float = v6 / 2.0                                                │

00:00:22 #1889 [Verbose] > │     let v8 : float = v0 / 20.0                                               │

00:00:22 #1890 [Verbose] > │     let v9 : int32 = int32 v8                                                │

00:00:22 #1891 [Verbose] > │     let v10 : float = float v9                                               │

00:00:22 #1892 [Verbose] > │     let v11 : float = v10 * 20.0                                             │

00:00:22 #1893 [Verbose] > │     let v12 : float = v0 - v11                                               │

00:00:22 #1894 [Verbose] > │     let v13 : bool = v12 > 0.0                                               │

00:00:22 #1895 [Verbose] > │     let v15 : bool =                                                         │

00:00:22 #1896 [Verbose] > │         if v13 then                                                          │

00:00:22 #1897 [Verbose] > │             let v14 : bool = v12 < 10.0                                      │

00:00:22 #1898 [Verbose] > │             v14                                                              │

00:00:22 #1899 [Verbose] > │         else                                                                 │

00:00:22 #1900 [Verbose] > │             false                                                            │

00:00:22 #1901 [Verbose] > │     let v16 : float =                                                        │

00:00:22 #1902 [Verbose] > │         if v15 then                                                          │

00:00:22 #1903 [Verbose] > │             10.0                                                             │

00:00:22 #1904 [Verbose] > │         else                                                                 │

00:00:22 #1905 [Verbose] > │             0.0                                                              │

00:00:22 #1906 [Verbose] > │     let v17 : float = v16 + v7                                               │

00:00:22 #1907 [Verbose] > │     let v18 : float = v17 / 20.0                                             │

00:00:22 #1908 [Verbose] > │     let v19 : float = v0 + 0.1                                               │

00:00:22 #1909 [Verbose] > │     let v20 : float = v18 * 0.1                                              │

00:00:22 #1910 [Verbose] > │     let v21 : float = v1 + v20                                               │

00:00:22 #1911 [Verbose] > │     struct (v19, v21)                                                        │

00:00:22 #1912 [Verbose] > │ and method3 () : (struct (float * float) -> struct (float * float)) =        │

00:00:22 #1913 [Verbose] > │     closure0()                                                               │

00:00:22 #1914 [Verbose] > │ and closure1 (v0 : (struct (float * float) -> struct (float * float)), v1 :  │

00:00:22 #1915 [Verbose] > │ float, v2 : float, v3 : float, v4 : float) () : UH0 =                        │

00:00:22 #1916 [Verbose] > │     let struct (v5 : float, v6 : float) = v0 struct (v3, v4)                 │

00:00:22 #1917 [Verbose] > │     let v7 : (unit -> UH0) = closure1(v0, v1, v2, v5, v6)                    │

00:00:22 #1918 [Verbose] > │     UH0_0(v3, v4, v7)                                                        │

00:00:22 #1919 [Verbose] > │ and method4 (v0 : float, v1 : UH0) : US0 =                                   │

00:00:22 #1920 [Verbose] > │     match v1 with                                                            │

00:00:22 #1921 [Verbose] > │     | UH0_0(v2, v3, v4) -> (* StreamCons *)                                  │

00:00:22 #1922 [Verbose] > │         let v5 : bool = v0 <= 0.0                                            │

00:00:22 #1923 [Verbose] > │         if v5 then                                                           │

00:00:22 #1924 [Verbose] > │             US0_1(v2, v3)                                                    │

00:00:22 #1925 [Verbose] > │         else                                                                 │

00:00:22 #1926 [Verbose] > │             let v7 : float = v0 - 1.0                                        │

00:00:22 #1927 [Verbose] > │             let v8 : UH0 = v4 ()                                             │

00:00:22 #1928 [Verbose] > │             method4(v7, v8)                                                  │

00:00:22 #1929 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:22 #1930 [Verbose] > │         US0_0                                                                │

00:00:22 #1931 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:22 #1932 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:22 #1933 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (1001)                     │

00:00:22 #1934 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:22 #1935 [Verbose] > │     while method1(v1) do                                                     │

00:00:22 #1936 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:22 #1937 [Verbose] > │         let v4 : float = float v3                                            │

00:00:22 #1938 [Verbose] > │         let v5 : float = 0.1 * v4                                            │

00:00:22 #1939 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:22 #1940 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:22 #1941 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:22 #1942 [Verbose] > │         ()                                                                   │

00:00:22 #1943 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:22 #1944 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:22 #1945 [Verbose] > │     let v9 : int32 = v0.Length                                               │

00:00:22 #1946 [Verbose] > │     let v10 : (float []) = Array.zeroCreate<float> (v9)                      │

00:00:22 #1947 [Verbose] > │     let v11 : Mut0 = {l0 = 0} : Mut0                                         │

00:00:22 #1948 [Verbose] > │     while method2(v9, v11) do                                                │

00:00:22 #1949 [Verbose] > │         let v13 : int32 = v11.l0                                             │

00:00:22 #1950 [Verbose] > │         let v14 : float = v0.[int v13]                                       │

00:00:22 #1951 [Verbose] > │         let v15 : (struct (float * float) -> struct (float * float)) =       │

00:00:22 #1952 [Verbose] > │ method3()                                                                    │

00:00:22 #1953 [Verbose] > │         let struct (v16 : float, v17 : float) = v15 struct (v7, v8)          │

00:00:22 #1954 [Verbose] > │         let v18 : float = v14 / 0.1                                          │

00:00:22 #1955 [Verbose] > │         let v19 : float = round v18                                          │

00:00:22 #1956 [Verbose] > │         let v20 : float =  -v19                                              │

00:00:22 #1957 [Verbose] > │         let v21 : bool = v19 >= v20                                          │

00:00:22 #1958 [Verbose] > │         let v22 : float =                                                    │

00:00:22 #1959 [Verbose] > │             if v21 then                                                      │

00:00:22 #1960 [Verbose] > │                 v19                                                          │

00:00:22 #1961 [Verbose] > │             else                                                             │

00:00:22 #1962 [Verbose] > │                 v20                                                          │

00:00:22 #1963 [Verbose] > │         let v23 : (unit -> UH0) = closure1(v15, v7, v8, v16, v17)            │

00:00:22 #1964 [Verbose] > │         let v24 : UH0 = UH0_0(v7, v8, v23)                                   │

00:00:22 #1965 [Verbose] > │         let v25 : US0 = method4(v22, v24)                                    │

00:00:22 #1966 [Verbose] > │         let v31 : US1 =                                                      │

00:00:22 #1967 [Verbose] > │             match v25 with                                                   │

00:00:22 #1968 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:22 #1969 [Verbose] > │                 US1_0                                                        │

00:00:22 #1970 [Verbose] > │             | US0_1(v26, v27) -> (* Some *)                                  │

00:00:22 #1971 [Verbose] > │                 US1_1(v27)                                                   │

00:00:22 #1972 [Verbose] > │         let v34 : float =                                                    │

00:00:22 #1973 [Verbose] > │             match v31 with                                                   │

00:00:22 #1974 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:22 #1975 [Verbose] > │                 0.0                                                          │

00:00:22 #1976 [Verbose] > │             | US1_1(v32) -> (* Some *)                                       │

00:00:22 #1977 [Verbose] > │                 v32                                                          │

00:00:22 #1978 [Verbose] > │         v10.[int v13] <- v34                                                 │

00:00:22 #1979 [Verbose] > │         let v35 : int32 = v13 + 1                                            │

00:00:22 #1980 [Verbose] > │         v11.l0 <- v35                                                        │

00:00:22 #1981 [Verbose] > │         ()                                                                   │

00:00:22 #1982 [Verbose] > │     let v36 : string = "velocity of bike (m/s)"                              │

00:00:22 #1983 [Verbose] > │     let v37 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:22 #1984 [Verbose] > │ (v36, v0, v10)|]                                                             │

00:00:22 #1985 [Verbose] > │     let v38 : string = "pedaling and coasting with air"                      │

00:00:22 #1986 [Verbose] > │     let v39 : string = "time (s)"                                            │

00:00:22 #1987 [Verbose] > │     let v40 : string = ""                                                    │

00:00:22 #1988 [Verbose] > │     struct (v38, v39, v40, v37)                                              │

00:00:22 #1989 [Verbose] > │ method0()                                                                    │

00:00:22 #1990 [Verbose] > │                                                                              │

00:00:22 #1991 [Verbose] > │                                                                              │

00:00:22 #1992 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1993 [Verbose] >

00:00:22 #1994 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:22 #1995 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:22 #1996 [Verbose] > │ ## velocity_ftxv                                                             │

00:00:22 #1997 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #1998 [Verbose] >

00:00:22 #1999 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #2000 [Verbose] > nominal state_1d = time * position * velocity

00:00:22 #2001 [Verbose] > nominal rrr = f64 * f64 * f64

00:00:22 #2002 [Verbose] >

00:00:22 #2003 [Verbose] > inl newton_second_1d m fs (state_1d (t, x0, v0)) =

00:00:22 #2004 [Verbose] >     inl f_net = fs |> listm.map (fun f => f (state_1d (t, x0, v0))) |>

00:00:22 #2005 [Verbose] > listm'.sum

00:00:22 #2006 [Verbose] >     inl acc = f_net / m

00:00:22 #2007 [Verbose] >     rrr (1f64, v0, acc)

00:00:22 #2008 [Verbose] >

00:00:22 #2009 [Verbose] > inl euler_1d dt deriv (state_1d (t0, x0, v0) as t) =

00:00:22 #2010 [Verbose] >     inl (rrr (_, _, dvdt)) = deriv t

00:00:22 #2011 [Verbose] >     inl t1 = t0 + dt

00:00:22 #2012 [Verbose] >     inl x1 = x0 + v0 * dt

00:00:22 #2013 [Verbose] >     inl v1 = v0 + dvdt * dt

00:00:22 #2014 [Verbose] >     state_1d (t1, x1, v1)

00:00:22 #2015 [Verbose] >

00:00:22 #2016 [Verbose] > inl update_txv dt m fs =

00:00:22 #2017 [Verbose] >     newton_second_1d m fs |> euler_1d dt

00:00:22 #2018 [Verbose] >

00:00:22 #2019 [Verbose] > inl states_txv dt m txv0 fs =

00:00:22 #2020 [Verbose] >     seq.iterate_ (update_txv dt m fs) txv0

00:00:22 #2021 [Verbose] >

00:00:22 #2022 [Verbose] > inl velocity_1d sts t =

00:00:22 #2023 [Verbose] >     inl (state_1d (t0, _, _)) = sts 0

00:00:22 #2024 [Verbose] >     inl (state_1d (t1, _, _)) = sts 1

00:00:22 #2025 [Verbose] >     inl dt = t1 - t0

00:00:22 #2026 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:22 #2027 [Verbose] >     inl (state_1d (_, _, v0)) = sts num_steps

00:00:22 #2028 [Verbose] >     v0

00:00:22 #2029 [Verbose] >

00:00:22 #2030 [Verbose] > inl velocity_ftxv dt m txv0 fs =

00:00:22 #2031 [Verbose] >     states_txv dt m txv0 fs |> velocity_1d

00:00:22 #2032 [Verbose] >

00:00:22 #2033 [Verbose] > inl position_1d sts t =

00:00:22 #2034 [Verbose] >     inl (state_1d (t0, _, _)) = sts 0

00:00:22 #2035 [Verbose] >     inl (state_1d (t1, _, _)) = sts 1

00:00:22 #2036 [Verbose] >     inl dt = t1 - t0

00:00:22 #2037 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:22 #2038 [Verbose] >     inl (state_1d (_, x0, _)) = sts num_steps

00:00:22 #2039 [Verbose] >     x0

00:00:22 #2040 [Verbose] >

00:00:22 #2041 [Verbose] > inl position_ftxv dt m txv0 fs =

00:00:22 #2042 [Verbose] >     states_txv dt m txv0 fs |> position_1d

00:00:22 #2043 [Verbose] >

00:00:22 #2044 [Verbose] > inl spring_force k (state_1d (_, x0, _)) =

00:00:22 #2045 [Verbose] >     -k * x0

00:00:22 #2046 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5445-4566-46bbe7d82f3c\main.spi

00:00:22 #2047 [Verbose] >

00:00:22 #2048 [Verbose] > ╭─[ 166.51ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #2049 [Verbose] > │ ()                                                                           │

00:00:22 #2050 [Verbose] > │                                                                              │

00:00:22 #2051 [Verbose] > │                                                                              │

00:00:22 #2052 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #2053 [Verbose] >

00:00:22 #2054 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #2055 [Verbose] > // // test

00:00:22 #2056 [Verbose] >

00:00:22 #2057 [Verbose] > inl damped_ho_forces () =

00:00:22 #2058 [Verbose] >     [[

00:00:22 #2059 [Verbose] >         spring_force 0.8

00:00:22 #2060 [Verbose] >         fun (state_1d (_, _, v0)) => f_air 2 1.225 (pi * math.square 0.02) v0

00:00:22 #2061 [Verbose] >         fun _ => -0.0027 * 9.80665

00:00:22 #2062 [Verbose] >     ]]

00:00:22 #2063 [Verbose] >

00:00:22 #2064 [Verbose] > inl damped_ho_states () =

00:00:22 #2065 [Verbose] >     states_txv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ())

00:00:22 #2066 [Verbose] >

00:00:22 #2067 [Verbose] > inl pingpong_position t =

00:00:22 #2068 [Verbose] >     position_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t

00:00:22 #2069 [Verbose] >

00:00:22 #2070 [Verbose] > inl x : a _ f64 = am'.init_series 0 3 0.01

00:00:22 #2071 [Verbose] > inl y = x |> am.map pingpong_position

00:00:22 #2072 [Verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "position (m)", x, y ]]

00:00:22 #2073 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5462-6241-6202f8dcc27d\main.spi

00:00:22 #2074 [Verbose] >

00:00:22 #2075 [Verbose] > ╭─[ 281.59ms - return value ]──────────────────────────────────────────────────╮

00:00:22 #2076 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:22 #2077 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:22 #2078 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:22 #2079 [Verbose] > │ stroke="none"/>                                                              │

00:00:22 #2080 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:22 #2081 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:22 #2082 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:22 #2083 [Verbose] > │ ping pong ball on a slinky                                                   │

00:00:22 #2084 [Verbose] > │ </text>                                                                      │

00:00:22 #2085 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:22 #2086 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2087 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:22 #2088 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2089 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:22 #2090 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2091 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:22 #2092 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2093 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9...                 │

00:00:22 #2094 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #2095 [Verbose] >

00:00:22 #2096 [Verbose] > ╭─[ 292.15ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #2097 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:22 #2098 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:22 #2099 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:22 #2100 [Verbose] > │     let v2 : bool = v1 < 301                                                 │

00:00:22 #2101 [Verbose] > │     v2                                                                       │

00:00:22 #2102 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:22 #2103 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:22 #2104 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:22 #2105 [Verbose] > │     v3                                                                       │

00:00:22 #2106 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │

00:00:22 #2107 [Verbose] > │ * float * float) =                                                           │

00:00:22 #2108 [Verbose] > │     let v4 : bool = v3 <= 0.0                                                │

00:00:22 #2109 [Verbose] > │     if v4 then                                                               │

00:00:22 #2110 [Verbose] > │         struct (v0, v1, v2)                                                  │

00:00:22 #2111 [Verbose] > │     else                                                                     │

00:00:22 #2112 [Verbose] > │         let v5 : float =  -v2                                                │

00:00:22 #2113 [Verbose] > │         let v6 : bool = v2 >= v5                                             │

00:00:22 #2114 [Verbose] > │         let v7 : float =                                                     │

00:00:22 #2115 [Verbose] > │             if v6 then                                                       │

00:00:22 #2116 [Verbose] > │                 v2                                                           │

00:00:22 #2117 [Verbose] > │             else                                                             │

00:00:22 #2118 [Verbose] > │                 v5                                                           │

00:00:22 #2119 [Verbose] > │         let v8 : float = -0.0030787608005179976 * v7                         │

00:00:22 #2120 [Verbose] > │         let v9 : float = v8 * v2                                             │

00:00:22 #2121 [Verbose] > │         let v10 : float = v9 / 2.0                                           │

00:00:22 #2122 [Verbose] > │         let v11 : float = -0.8 * v1                                          │

00:00:22 #2123 [Verbose] > │         let v12 : float = v11 + v10                                          │

00:00:22 #2124 [Verbose] > │         let v13 : float = v12 + -0.026477955                                 │

00:00:22 #2125 [Verbose] > │         let v14 : float = v13 / 0.0027                                       │

00:00:22 #2126 [Verbose] > │         let v15 : float = v0 + 0.001                                         │

00:00:22 #2127 [Verbose] > │         let v16 : float = v2 * 0.001                                         │

00:00:22 #2128 [Verbose] > │         let v17 : float = v1 + v16                                           │

00:00:22 #2129 [Verbose] > │         let v18 : float = v14 * 0.001                                        │

00:00:22 #2130 [Verbose] > │         let v19 : float = v2 + v18                                           │

00:00:22 #2131 [Verbose] > │         let v20 : float = v3 - 1.0                                           │

00:00:22 #2132 [Verbose] > │         method3(v15, v17, v19, v20)                                          │

00:00:22 #2133 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:22 #2134 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:22 #2135 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (301)                      │

00:00:22 #2136 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:22 #2137 [Verbose] > │     while method1(v1) do                                                     │

00:00:22 #2138 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:22 #2139 [Verbose] > │         let v4 : float = float v3                                            │

00:00:22 #2140 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:22 #2141 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:22 #2142 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:22 #2143 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:22 #2144 [Verbose] > │         ()                                                                   │

00:00:22 #2145 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:22 #2146 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:22 #2147 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:22 #2148 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:22 #2149 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:22 #2150 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:22 #2151 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:22 #2152 [Verbose] > │         let v14 : float = 0.1                                                │

00:00:22 #2153 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:22 #2154 [Verbose] > │         let v16 : float = 0.0                                                │

00:00:22 #2155 [Verbose] > │         let struct (v17 : float, v18 : float, v19 : float) = method3(v13,    │

00:00:22 #2156 [Verbose] > │ v14, v15, v16)                                                               │

00:00:22 #2157 [Verbose] > │         let v20 : float = 0.0                                                │

00:00:22 #2158 [Verbose] > │         let v21 : float = 0.1                                                │

00:00:22 #2159 [Verbose] > │         let v22 : float = 0.0                                                │

00:00:22 #2160 [Verbose] > │         let v23 : float = 1.0                                                │

00:00:22 #2161 [Verbose] > │         let struct (v24 : float, v25 : float, v26 : float) = method3(v20,    │

00:00:22 #2162 [Verbose] > │ v21, v22, v23)                                                               │

00:00:22 #2163 [Verbose] > │         let v27 : float = v24 - v17                                          │

00:00:22 #2164 [Verbose] > │         let v28 : float = v12 / v27                                          │

00:00:22 #2165 [Verbose] > │         let v29 : float = round v28                                          │

00:00:22 #2166 [Verbose] > │         let v30 : float =  -v29                                              │

00:00:22 #2167 [Verbose] > │         let v31 : bool = v29 >= v30                                          │

00:00:22 #2168 [Verbose] > │         let v32 : float =                                                    │

00:00:22 #2169 [Verbose] > │             if v31 then                                                      │

00:00:22 #2170 [Verbose] > │                 v29                                                          │

00:00:22 #2171 [Verbose] > │             else                                                             │

00:00:22 #2172 [Verbose] > │                 v30                                                          │

00:00:22 #2173 [Verbose] > │         let v33 : float = 0.0                                                │

00:00:22 #2174 [Verbose] > │         let v34 : float = 0.1                                                │

00:00:22 #2175 [Verbose] > │         let v35 : float = 0.0                                                │

00:00:22 #2176 [Verbose] > │         let struct (v36 : float, v37 : float, v38 : float) = method3(v33,    │

00:00:22 #2177 [Verbose] > │ v34, v35, v32)                                                               │

00:00:22 #2178 [Verbose] > │         v8.[int v11] <- v37                                                  │

00:00:22 #2179 [Verbose] > │         let v39 : int32 = v11 + 1                                            │

00:00:22 #2180 [Verbose] > │         v9.l0 <- v39                                                         │

00:00:22 #2181 [Verbose] > │         ()                                                                   │

00:00:22 #2182 [Verbose] > │     let v40 : string = "position (m)"                                        │

00:00:22 #2183 [Verbose] > │     let v41 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:22 #2184 [Verbose] > │ (v40, v0, v8)|]                                                              │

00:00:22 #2185 [Verbose] > │     let v42 : string = "ping pong ball on a slinky"                          │

00:00:22 #2186 [Verbose] > │     let v43 : string = "time (s)"                                            │

00:00:22 #2187 [Verbose] > │     let v44 : string = ""                                                    │

00:00:22 #2188 [Verbose] > │     struct (v42, v43, v44, v41)                                              │

00:00:22 #2189 [Verbose] > │ method0()                                                                    │

00:00:22 #2190 [Verbose] > │                                                                              │

00:00:22 #2191 [Verbose] > │                                                                              │

00:00:22 #2192 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #2193 [Verbose] >

00:00:22 #2194 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:22 #2195 [Verbose] > // // test

00:00:22 #2196 [Verbose] >

00:00:22 #2197 [Verbose] > inl pingpong_velocity t =

00:00:22 #2198 [Verbose] >     velocity_ftxv 0.001 0.0027 (state_1d (0, 0.1, 0)) (damped_ho_forces ()) t

00:00:22 #2199 [Verbose] >

00:00:22 #2200 [Verbose] > inl x = am'.init_series 0 3 0.01

00:00:22 #2201 [Verbose] > inl y = x |> am.map pingpong_velocity

00:00:22 #2202 [Verbose] > "ping pong ball on a slinky", "time (s)", "", ;[[ "velocity (m/s)", x, y ]]

00:00:22 #2203 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5495-9544-94cc0040eb13\main.spi

00:00:22 #2204 [Verbose] >

00:00:22 #2205 [Verbose] > ╭─[ 217.73ms - return value ]──────────────────────────────────────────────────╮

00:00:22 #2206 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:22 #2207 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:22 #2208 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:22 #2209 [Verbose] > │ stroke="none"/>                                                              │

00:00:22 #2210 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:22 #2211 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:22 #2212 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:22 #2213 [Verbose] > │ ping pong ball on a slinky                                                   │

00:00:22 #2214 [Verbose] > │ </text>                                                                      │

00:00:22 #2215 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="61" y1="424" x2="61" │

00:00:22 #2216 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2217 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:22 #2218 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2219 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="78" y1="424" x2="78" │

00:00:22 #2220 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2221 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="86" y1="424" x2="86" │

00:00:22 #2222 [Verbose] > │ y2="75"/>                                                                    │

00:00:22 #2223 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="9...                 │

00:00:22 #2224 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:22 #2225 [Verbose] >

00:00:22 #2226 [Verbose] > ╭─[ 226.79ms - stdout ]────────────────────────────────────────────────────────╮

00:00:22 #2227 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:22 #2228 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:22 #2229 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:22 #2230 [Verbose] > │     let v2 : bool = v1 < 301                                                 │

00:00:22 #2231 [Verbose] > │     v2                                                                       │

00:00:22 #2232 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:22 #2233 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:22 #2234 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:22 #2235 [Verbose] > │     v3                                                                       │

00:00:22 #2236 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : float, v3 : float) : struct (float │

00:00:22 #2237 [Verbose] > │ * float * float) =                                                           │

00:00:22 #2238 [Verbose] > │     let v4 : bool = v3 <= 0.0                                                │

00:00:22 #2239 [Verbose] > │     if v4 then                                                               │

00:00:22 #2240 [Verbose] > │         struct (v0, v1, v2)                                                  │

00:00:22 #2241 [Verbose] > │     else                                                                     │

00:00:22 #2242 [Verbose] > │         let v5 : float =  -v2                                                │

00:00:22 #2243 [Verbose] > │         let v6 : bool = v2 >= v5                                             │

00:00:22 #2244 [Verbose] > │         let v7 : float =                                                     │

00:00:22 #2245 [Verbose] > │             if v6 then                                                       │

00:00:22 #2246 [Verbose] > │                 v2                                                           │

00:00:22 #2247 [Verbose] > │             else                                                             │

00:00:22 #2248 [Verbose] > │                 v5                                                           │

00:00:22 #2249 [Verbose] > │         let v8 : float = -0.0030787608005179976 * v7                         │

00:00:22 #2250 [Verbose] > │         let v9 : float = v8 * v2                                             │

00:00:22 #2251 [Verbose] > │         let v10 : float = v9 / 2.0                                           │

00:00:22 #2252 [Verbose] > │         let v11 : float = -0.8 * v1                                          │

00:00:22 #2253 [Verbose] > │         let v12 : float = v11 + v10                                          │

00:00:22 #2254 [Verbose] > │         let v13 : float = v12 + -0.026477955                                 │

00:00:22 #2255 [Verbose] > │         let v14 : float = v13 / 0.0027                                       │

00:00:22 #2256 [Verbose] > │         let v15 : float = v0 + 0.001                                         │

00:00:22 #2257 [Verbose] > │         let v16 : float = v2 * 0.001                                         │

00:00:22 #2258 [Verbose] > │         let v17 : float = v1 + v16                                           │

00:00:22 #2259 [Verbose] > │         let v18 : float = v14 * 0.001                                        │

00:00:22 #2260 [Verbose] > │         let v19 : float = v2 + v18                                           │

00:00:22 #2261 [Verbose] > │         let v20 : float = v3 - 1.0                                           │

00:00:22 #2262 [Verbose] > │         method3(v15, v17, v19, v20)                                          │

00:00:22 #2263 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:22 #2264 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:22 #2265 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (301)                      │

00:00:22 #2266 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:22 #2267 [Verbose] > │     while method1(v1) do                                                     │

00:00:22 #2268 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:22 #2269 [Verbose] > │         let v4 : float = float v3                                            │

00:00:22 #2270 [Verbose] > │         let v5 : float = 0.01 * v4                                           │

00:00:22 #2271 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:22 #2272 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:23 #2273 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:23 #2274 [Verbose] > │         ()                                                                   │

00:00:23 #2275 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:23 #2276 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:23 #2277 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:23 #2278 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:23 #2279 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:23 #2280 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:23 #2281 [Verbose] > │         let v13 : float = 0.0                                                │

00:00:23 #2282 [Verbose] > │         let v14 : float = 0.1                                                │

00:00:23 #2283 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:23 #2284 [Verbose] > │         let v16 : float = 0.0                                                │

00:00:23 #2285 [Verbose] > │         let struct (v17 : float, v18 : float, v19 : float) = method3(v13,    │

00:00:23 #2286 [Verbose] > │ v14, v15, v16)                                                               │

00:00:23 #2287 [Verbose] > │         let v20 : float = 0.0                                                │

00:00:23 #2288 [Verbose] > │         let v21 : float = 0.1                                                │

00:00:23 #2289 [Verbose] > │         let v22 : float = 0.0                                                │

00:00:23 #2290 [Verbose] > │         let v23 : float = 1.0                                                │

00:00:23 #2291 [Verbose] > │         let struct (v24 : float, v25 : float, v26 : float) = method3(v20,    │

00:00:23 #2292 [Verbose] > │ v21, v22, v23)                                                               │

00:00:23 #2293 [Verbose] > │         let v27 : float = v24 - v17                                          │

00:00:23 #2294 [Verbose] > │         let v28 : float = v12 / v27                                          │

00:00:23 #2295 [Verbose] > │         let v29 : float = round v28                                          │

00:00:23 #2296 [Verbose] > │         let v30 : float =  -v29                                              │

00:00:23 #2297 [Verbose] > │         let v31 : bool = v29 >= v30                                          │

00:00:23 #2298 [Verbose] > │         let v32 : float =                                                    │

00:00:23 #2299 [Verbose] > │             if v31 then                                                      │

00:00:23 #2300 [Verbose] > │                 v29                                                          │

00:00:23 #2301 [Verbose] > │             else                                                             │

00:00:23 #2302 [Verbose] > │                 v30                                                          │

00:00:23 #2303 [Verbose] > │         let v33 : float = 0.0                                                │

00:00:23 #2304 [Verbose] > │         let v34 : float = 0.1                                                │

00:00:23 #2305 [Verbose] > │         let v35 : float = 0.0                                                │

00:00:23 #2306 [Verbose] > │         let struct (v36 : float, v37 : float, v38 : float) = method3(v33,    │

00:00:23 #2307 [Verbose] > │ v34, v35, v32)                                                               │

00:00:23 #2308 [Verbose] > │         v8.[int v11] <- v38                                                  │

00:00:23 #2309 [Verbose] > │         let v39 : int32 = v11 + 1                                            │

00:00:23 #2310 [Verbose] > │         v9.l0 <- v39                                                         │

00:00:23 #2311 [Verbose] > │         ()                                                                   │

00:00:23 #2312 [Verbose] > │     let v40 : string = "velocity (m/s)"                                      │

00:00:23 #2313 [Verbose] > │     let v41 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:23 #2314 [Verbose] > │ (v40, v0, v8)|]                                                              │

00:00:23 #2315 [Verbose] > │     let v42 : string = "ping pong ball on a slinky"                          │

00:00:23 #2316 [Verbose] > │     let v43 : string = "time (s)"                                            │

00:00:23 #2317 [Verbose] > │     let v44 : string = ""                                                    │

00:00:23 #2318 [Verbose] > │     struct (v42, v43, v44, v41)                                              │

00:00:23 #2319 [Verbose] > │ method0()                                                                    │

00:00:23 #2320 [Verbose] > │                                                                              │

00:00:23 #2321 [Verbose] > │                                                                              │

00:00:23 #2322 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2323 [Verbose] >

00:00:23 #2324 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:23 #2325 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:23 #2326 [Verbose] > │ ## shift                                                                     │

00:00:23 #2327 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2328 [Verbose] >

00:00:23 #2329 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2330 [Verbose] > type update_function s = s -> s

00:00:23 #2331 [Verbose] >

00:00:23 #2332 [Verbose] > type differential_equation s ds = s -> ds

00:00:23 #2333 [Verbose] >

00:00:23 #2334 [Verbose] > type numerical_method s ds = differential_equation s ds -> update_function s

00:00:23 #2335 [Verbose] >

00:00:23 #2336 [Verbose] >

00:00:23 #2337 [Verbose] > inl solver method =

00:00:23 #2338 [Verbose] >     method >> seq.iterate

00:00:23 #2339 [Verbose] > inl solver' method =

00:00:23 #2340 [Verbose] >     method >> seq.iterate'

00:00:23 #2341 [Verbose] > inl solver_ method =

00:00:23 #2342 [Verbose] >     method >> seq.iterate_

00:00:23 #2343 [Verbose] >

00:00:23 #2344 [Verbose] >

00:00:23 #2345 [Verbose] > inl euler_cromer_1d dt deriv (state_1d (t0, x0, v0) as t) =

00:00:23 #2346 [Verbose] >     inl (rrr (_, _, dvdt)) = deriv t

00:00:23 #2347 [Verbose] >     inl t1 = t0 + dt

00:00:23 #2348 [Verbose] >     inl v1 = v0 + dvdt * dt

00:00:23 #2349 [Verbose] >     inl x1 = x0 + v1 * dt

00:00:23 #2350 [Verbose] >     state_1d (t1, x1, v1)

00:00:23 #2351 [Verbose] >

00:00:23 #2352 [Verbose] > inl update_txv_ec dt m fs =

00:00:23 #2353 [Verbose] >     euler_cromer_1d dt (newton_second_1d m fs)

00:00:23 #2354 [Verbose] >

00:00:23 #2355 [Verbose] > prototype (+++) ds : ds -> ds -> ds

00:00:23 #2356 [Verbose] > prototype scale ds : f64 -> ds -> ds

00:00:23 #2357 [Verbose] >

00:00:23 #2358 [Verbose] > instance (+++) rrr = fun (rrr (dtdt0, dxdt0, dvdt0)) (rrr (dtdt1, dxdt1, dvdt1))

00:00:23 #2359 [Verbose] > =>

00:00:23 #2360 [Verbose] >     rrr (dtdt0 + dtdt1, dxdt0 + dxdt1, dvdt0 + dvdt1)

00:00:23 #2361 [Verbose] >

00:00:23 #2362 [Verbose] > instance scale rrr = fun w (rrr (dtdt0, dxdt0, dvdt0)) =>

00:00:23 #2363 [Verbose] >     rrr (w * dtdt0, w * dxdt0, w * dvdt0)

00:00:23 #2364 [Verbose] >

00:00:23 #2365 [Verbose] > prototype shift s : forall ds. f64 -> ds -> s -> s

00:00:23 #2366 [Verbose] >

00:00:23 #2367 [Verbose] > instance shift state_1d = fun dt ds (state_1d (t, x, v)) =>

00:00:23 #2368 [Verbose] >     inl dtdt, dxdt, dvdt =

00:00:23 #2369 [Verbose] >         real

00:00:23 #2370 [Verbose] >             match ds with

00:00:23 #2371 [Verbose] >             | rrr x => x

00:00:23 #2372 [Verbose] >             | state_1d x => x

00:00:23 #2373 [Verbose] >     state_1d (t + dtdt * dt, x + dxdt * dt, v + dvdt * dt)

00:00:23 #2374 [Verbose] >

00:00:23 #2375 [Verbose] > inl euler dt deriv st0 =

00:00:23 #2376 [Verbose] >     shift dt (deriv st0) st0

00:00:23 #2377 [Verbose] >

00:00:23 #2378 [Verbose] > inl runge_kutta_4 dt deriv st0 =

00:00:23 #2379 [Verbose] >     inl m0 = deriv st0

00:00:23 #2380 [Verbose] >     inl m1 = deriv (shift (dt / 2) m0 st0)

00:00:23 #2381 [Verbose] >     inl m2 = deriv (shift (dt / 2) m1 st0)

00:00:23 #2382 [Verbose] >     inl m3 = deriv (shift dt m2 st0)

00:00:23 #2383 [Verbose] >     shift (dt / 6) (m0 +++ m1 +++ m1 +++ m2 +++ m2 +++ m3) st0

00:00:23 #2384 [Verbose] >

00:00:23 #2385 [Verbose] > inl exponential (_, x0, v0) =

00:00:23 #2386 [Verbose] >     1f64, v0, x0

00:00:23 #2387 [Verbose] >

00:00:23 #2388 [Verbose] > inl of_state_1d (state_1d (t, x, v)) =

00:00:23 #2389 [Verbose] >     t, x, v

00:00:23 #2390 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5522-2212-2dd8284eabdf\main.spi

00:00:23 #2391 [Verbose] >

00:00:23 #2392 [Verbose] > ╭─[ 157.65ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #2393 [Verbose] > │ ()                                                                           │

00:00:23 #2394 [Verbose] > │                                                                              │

00:00:23 #2395 [Verbose] > │                                                                              │

00:00:23 #2396 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2397 [Verbose] >

00:00:23 #2398 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2399 [Verbose] > // // test

00:00:23 #2400 [Verbose] >

00:00:23 #2401 [Verbose] > solver (euler 0.01) (of_state_1d >> exponential >> state_1d) (state_1d (0, 1,

00:00:23 #2402 [Verbose] > 1)) 800i32

00:00:23 #2403 [Verbose] > |> _equal (state_1d (7.999999999999874, 2864.8311229272326, 2864.8311229272326))

00:00:23 #2404 [Verbose] >

00:00:23 #2405 [Verbose] > solver (euler_cromer_1d 0.1) (of_state_1d >> exponential >> rrr) (state_1d (0,

00:00:23 #2406 [Verbose] > 1, 1)) 80i32

00:00:23 #2407 [Verbose] > |> _equal (state_1d (7.999999999999988, 3043.379244966009, 2895.0121485099035))

00:00:23 #2408 [Verbose] >

00:00:23 #2409 [Verbose] > solver (runge_kutta_4 1) (of_state_1d >> exponential >> rrr) (state_1d (0, 1,

00:00:23 #2410 [Verbose] > 1)) 8i32

00:00:23 #2411 [Verbose] > |> _equal (state_1d (8.0, 2894.789038540849, 2894.789038540849))

00:00:23 #2412 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5537-3794-31ceeec47e6e\main.spi

00:00:23 #2413 [Verbose] >

00:00:23 #2414 [Verbose] > ╭─[ 272.27ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #2415 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:23 #2416 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (7.999999999999874,       │

00:00:23 #2417 [Verbose] > │ 2864.8311229272326, 2864.8311229272326)} / expected: %A{struct               │

00:00:23 #2418 [Verbose] > │ (7.999999999999874, 2864.8311229272326, 2864.8311229272326)}"                │

00:00:23 #2419 [Verbose] > │     let v1 : string = $"_equal / actual: %A{struct (7.999999999999988,       │

00:00:23 #2420 [Verbose] > │ 3043.379244966009, 2895.0121485099035)} / expected: %A{struct                │

00:00:23 #2421 [Verbose] > │ (7.999999999999988, 3043.379244966009, 2895.0121485099035)}"                 │

00:00:23 #2422 [Verbose] > │     let v2 : string = $"_equal / actual: %A{struct (8.0, 2894.789038540849,  │

00:00:23 #2423 [Verbose] > │ 2894.789038540849)} / expected: %A{struct (8.0, 2894.789038540849,           │

00:00:23 #2424 [Verbose] > │ 2894.789038540849)}"                                                         │

00:00:23 #2425 [Verbose] > │     ()                                                                       │

00:00:23 #2426 [Verbose] > │ method0()                                                                    │

00:00:23 #2427 [Verbose] > │                                                                              │

00:00:23 #2428 [Verbose] > │                                                                              │

00:00:23 #2429 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2430 [Verbose] >

00:00:23 #2431 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:23 #2432 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:23 #2433 [Verbose] > │ ## vec                                                                       │

00:00:23 #2434 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2435 [Verbose] >

00:00:23 #2436 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2437 [Verbose] > type vec =

00:00:23 #2438 [Verbose] >     {

00:00:23 #2439 [Verbose] >         x : f64

00:00:23 #2440 [Verbose] >         y : f64

00:00:23 #2441 [Verbose] >         z : f64

00:00:23 #2442 [Verbose] >     }

00:00:23 #2443 [Verbose] >

00:00:23 #2444 [Verbose] > inl vec x y z : vec =

00:00:23 #2445 [Verbose] >     { x y z }

00:00:23 #2446 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5565-6598-66cc2ab1bf99\main.spi

00:00:23 #2447 [Verbose] >

00:00:23 #2448 [Verbose] > ╭─[ 205.88ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #2449 [Verbose] > │ ()                                                                           │

00:00:23 #2450 [Verbose] > │                                                                              │

00:00:23 #2451 [Verbose] > │                                                                              │

00:00:23 #2452 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2453 [Verbose] >

00:00:23 #2454 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2455 [Verbose] > // // test

00:00:23 #2456 [Verbose] >

00:00:23 #2457 [Verbose] > vec 1 2 3 .z

00:00:23 #2458 [Verbose] > |> _equal 3

00:00:23 #2459 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5586-8682-8436fe0d6e55\main.spi

00:00:23 #2460 [Verbose] >

00:00:23 #2461 [Verbose] > ╭─[ 172.75ms - stdout ]────────────────────────────────────────────────────────╮

00:00:23 #2462 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:23 #2463 [Verbose] > │     let v0 : string = $"_equal / actual: %A{3.0} / expected: %A{3.0}"        │

00:00:23 #2464 [Verbose] > │     ()                                                                       │

00:00:23 #2465 [Verbose] > │ method0()                                                                    │

00:00:23 #2466 [Verbose] > │                                                                              │

00:00:23 #2467 [Verbose] > │                                                                              │

00:00:23 #2468 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2469 [Verbose] >

00:00:23 #2470 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:23 #2471 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:23 #2472 [Verbose] > │ ### consts                                                                   │

00:00:23 #2473 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:23 #2474 [Verbose] >

00:00:23 #2475 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:23 #2476 [Verbose] > inl i_hat () = vec 1 0 0

00:00:23 #2477 [Verbose] > inl j_hat () = vec 0 1 0

00:00:23 #2478 [Verbose] > inl k_hat () = vec 0 0 1

00:00:23 #2479 [Verbose] > inl zero_vec () = vec 0 0 0

00:00:23 #2480 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5604-0458-03b68841b06d\main.spi

00:00:24 #2481 [Verbose] >

00:00:24 #2482 [Verbose] > ╭─[ 321.52ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2483 [Verbose] > │ ()                                                                           │

00:00:24 #2484 [Verbose] > │                                                                              │

00:00:24 #2485 [Verbose] > │                                                                              │

00:00:24 #2486 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2487 [Verbose] >

00:00:24 #2488 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:24 #2489 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:24 #2490 [Verbose] > │ ### ^+^                                                                      │

00:00:24 #2491 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2492 [Verbose] >

00:00:24 #2493 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2494 [Verbose] > inl (^+^) (a : vec) (b : vec) =

00:00:24 #2495 [Verbose] >     vec (a.x + b.x) (a.y + b.y) (a.z + b.z)

00:00:24 #2496 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5637-3721-314d99740f87\main.spi

00:00:24 #2497 [Verbose] >

00:00:24 #2498 [Verbose] > ╭─[ 151.82ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2499 [Verbose] > │ ()                                                                           │

00:00:24 #2500 [Verbose] > │                                                                              │

00:00:24 #2501 [Verbose] > │                                                                              │

00:00:24 #2502 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2503 [Verbose] >

00:00:24 #2504 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2505 [Verbose] > // // test

00:00:24 #2506 [Verbose] >

00:00:24 #2507 [Verbose] > vec 1 2 3 ^+^ vec 4 5 6

00:00:24 #2508 [Verbose] > |> _equal (vec 5 7 9)

00:00:24 #2509 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5652-5264-56b71db179b9\main.spi

00:00:24 #2510 [Verbose] >

00:00:24 #2511 [Verbose] > ╭─[ 172.08ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2512 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:24 #2513 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 7.0, 9.0)} /        │

00:00:24 #2514 [Verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}"                                        │

00:00:24 #2515 [Verbose] > │     ()                                                                       │

00:00:24 #2516 [Verbose] > │ method0()                                                                    │

00:00:24 #2517 [Verbose] > │                                                                              │

00:00:24 #2518 [Verbose] > │                                                                              │

00:00:24 #2519 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2520 [Verbose] >

00:00:24 #2521 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:24 #2522 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:24 #2523 [Verbose] > │ ### sum_vec                                                                  │

00:00:24 #2524 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2525 [Verbose] >

00:00:24 #2526 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2527 [Verbose] > inl sum_vec vs =

00:00:24 #2528 [Verbose] >     vs |> listm.fold (^+^) (zero_vec ())

00:00:24 #2529 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5670-7048-7b05d86137bf\main.spi

00:00:24 #2530 [Verbose] >

00:00:24 #2531 [Verbose] > ╭─[ 177.90ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2532 [Verbose] > │ ()                                                                           │

00:00:24 #2533 [Verbose] > │                                                                              │

00:00:24 #2534 [Verbose] > │                                                                              │

00:00:24 #2535 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2536 [Verbose] >

00:00:24 #2537 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2538 [Verbose] > // // test

00:00:24 #2539 [Verbose] >

00:00:24 #2540 [Verbose] > [[ vec 1 2 3; vec 4 5 6 ]]

00:00:24 #2541 [Verbose] > |> sum_vec

00:00:24 #2542 [Verbose] > |> _equal (vec 5 7 9)

00:00:24 #2543 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5688-8848-82233415f35e\main.spi

00:00:24 #2544 [Verbose] >

00:00:24 #2545 [Verbose] > ╭─[ 141.91ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2546 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:24 #2547 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 7.0, 9.0)} /        │

00:00:24 #2548 [Verbose] > │ expected: %A{struct (5.0, 7.0, 9.0)}"                                        │

00:00:24 #2549 [Verbose] > │     ()                                                                       │

00:00:24 #2550 [Verbose] > │ method0()                                                                    │

00:00:24 #2551 [Verbose] > │                                                                              │

00:00:24 #2552 [Verbose] > │                                                                              │

00:00:24 #2553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2554 [Verbose] >

00:00:24 #2555 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:24 #2556 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:24 #2557 [Verbose] > │ ### *^                                                                       │

00:00:24 #2558 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2559 [Verbose] >

00:00:24 #2560 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2561 [Verbose] > inl (*^) c { x y z } =

00:00:24 #2562 [Verbose] >     vec (c * x) (c * y) (c * z)

00:00:24 #2563 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5703-0325-0d4538f4e69f\main.spi

00:00:24 #2564 [Verbose] >

00:00:24 #2565 [Verbose] > ╭─[ 149.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:24 #2566 [Verbose] > │ ()                                                                           │

00:00:24 #2567 [Verbose] > │                                                                              │

00:00:24 #2568 [Verbose] > │                                                                              │

00:00:24 #2569 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:24 #2570 [Verbose] >

00:00:24 #2571 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:24 #2572 [Verbose] > // // test

00:00:24 #2573 [Verbose] >

00:00:24 #2574 [Verbose] > 5 *^ vec 1 2 3

00:00:24 #2575 [Verbose] > |> _equal (vec 5 10 15)

00:00:25 #2576 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5718-1857-16ad0b63f278\main.spi

00:00:25 #2577 [Verbose] >

00:00:25 #2578 [Verbose] > ╭─[ 165.66ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2579 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:25 #2580 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 10.0, 15.0)} /      │

00:00:25 #2581 [Verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}"                                      │

00:00:25 #2582 [Verbose] > │     ()                                                                       │

00:00:25 #2583 [Verbose] > │ method0()                                                                    │

00:00:25 #2584 [Verbose] > │                                                                              │

00:00:25 #2585 [Verbose] > │                                                                              │

00:00:25 #2586 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2587 [Verbose] >

00:00:25 #2588 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2589 [Verbose] > // // test

00:00:25 #2590 [Verbose] >

00:00:25 #2591 [Verbose] > 3 *^ i_hat () ^+^ 4 *^ k_hat ()

00:00:25 #2592 [Verbose] > |> _equal (vec 3 0 4)

00:00:25 #2593 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5735-3538-3ca127c6d60c\main.spi

00:00:25 #2594 [Verbose] >

00:00:25 #2595 [Verbose] > ╭─[ 167.37ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2596 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:25 #2597 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (3.0, 0.0, 4.0)} /        │

00:00:25 #2598 [Verbose] > │ expected: %A{struct (3.0, 0.0, 4.0)}"                                        │

00:00:25 #2599 [Verbose] > │     ()                                                                       │

00:00:25 #2600 [Verbose] > │ method0()                                                                    │

00:00:25 #2601 [Verbose] > │                                                                              │

00:00:25 #2602 [Verbose] > │                                                                              │

00:00:25 #2603 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2604 [Verbose] >

00:00:25 #2605 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:25 #2606 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:25 #2607 [Verbose] > │ ### ^*                                                                       │

00:00:25 #2608 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2609 [Verbose] >

00:00:25 #2610 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2611 [Verbose] > inl (^*) v c =

00:00:25 #2612 [Verbose] >     (*^) c v

00:00:25 #2613 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5752-5267-594bd233b315\main.spi

00:00:25 #2614 [Verbose] >

00:00:25 #2615 [Verbose] > ╭─[ 150.06ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2616 [Verbose] > │ ()                                                                           │

00:00:25 #2617 [Verbose] > │                                                                              │

00:00:25 #2618 [Verbose] > │                                                                              │

00:00:25 #2619 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2620 [Verbose] >

00:00:25 #2621 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2622 [Verbose] > // // test

00:00:25 #2623 [Verbose] >

00:00:25 #2624 [Verbose] > vec 1 2 3 ^* 5

00:00:25 #2625 [Verbose] > |> _equal (vec 5 10 15)

00:00:25 #2626 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5768-6802-62941088a3ec\main.spi

00:00:25 #2627 [Verbose] >

00:00:25 #2628 [Verbose] > ╭─[ 193.59ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2629 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:25 #2630 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (5.0, 10.0, 15.0)} /      │

00:00:25 #2631 [Verbose] > │ expected: %A{struct (5.0, 10.0, 15.0)}"                                      │

00:00:25 #2632 [Verbose] > │     ()                                                                       │

00:00:25 #2633 [Verbose] > │ method0()                                                                    │

00:00:25 #2634 [Verbose] > │                                                                              │

00:00:25 #2635 [Verbose] > │                                                                              │

00:00:25 #2636 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2637 [Verbose] >

00:00:25 #2638 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:25 #2639 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:25 #2640 [Verbose] > │ ### ^/                                                                       │

00:00:25 #2641 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2642 [Verbose] >

00:00:25 #2643 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2644 [Verbose] > inl (^/) { x y z } c =

00:00:25 #2645 [Verbose] >     vec (x / c) (y / c) (z / c)

00:00:25 #2646 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5788-8882-84f22535ce5a\main.spi

00:00:25 #2647 [Verbose] >

00:00:25 #2648 [Verbose] > ╭─[ 150.21ms - stdout ]────────────────────────────────────────────────────────╮

00:00:25 #2649 [Verbose] > │ ()                                                                           │

00:00:25 #2650 [Verbose] > │                                                                              │

00:00:25 #2651 [Verbose] > │                                                                              │

00:00:25 #2652 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:25 #2653 [Verbose] >

00:00:25 #2654 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:25 #2655 [Verbose] > // // test

00:00:25 #2656 [Verbose] >

00:00:25 #2657 [Verbose] > vec 1 2 3 ^/ 5

00:00:25 #2658 [Verbose] > |> _equal (vec 0.2 0.4 0.6)

00:00:25 #2659 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5803-0393-0d2bb8c3d3ca\main.spi

00:00:26 #2660 [Verbose] >

00:00:26 #2661 [Verbose] > ╭─[ 176.61ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2662 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:26 #2663 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (0.2, 0.4, 0.6)} /        │

00:00:26 #2664 [Verbose] > │ expected: %A{struct (0.2, 0.4, 0.6)}"                                        │

00:00:26 #2665 [Verbose] > │     ()                                                                       │

00:00:26 #2666 [Verbose] > │ method0()                                                                    │

00:00:26 #2667 [Verbose] > │                                                                              │

00:00:26 #2668 [Verbose] > │                                                                              │

00:00:26 #2669 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2670 [Verbose] >

00:00:26 #2671 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #2672 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #2673 [Verbose] > │ ### negate_vec                                                               │

00:00:26 #2674 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2675 [Verbose] >

00:00:26 #2676 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2677 [Verbose] > inl negate_vec v =

00:00:26 #2678 [Verbose] >     v ^* -1

00:00:26 #2679 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5822-2219-24ac74162bd7\main.spi

00:00:26 #2680 [Verbose] >

00:00:26 #2681 [Verbose] > ╭─[ 161.08ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2682 [Verbose] > │ ()                                                                           │

00:00:26 #2683 [Verbose] > │                                                                              │

00:00:26 #2684 [Verbose] > │                                                                              │

00:00:26 #2685 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2686 [Verbose] >

00:00:26 #2687 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2688 [Verbose] > // // test

00:00:26 #2689 [Verbose] >

00:00:26 #2690 [Verbose] > vec 1 2 3

00:00:26 #2691 [Verbose] > |> negate_vec

00:00:26 #2692 [Verbose] > |> _equal (vec -1 -2 -3)

00:00:26 #2693 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5838-3849-3fdacf844f28\main.spi

00:00:26 #2694 [Verbose] >

00:00:26 #2695 [Verbose] > ╭─[ 173.34ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2696 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:26 #2697 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-1.0, -2.0, -3.0)} /     │

00:00:26 #2698 [Verbose] > │ expected: %A{struct (-1.0, -2.0, -3.0)}"                                     │

00:00:26 #2699 [Verbose] > │     ()                                                                       │

00:00:26 #2700 [Verbose] > │ method0()                                                                    │

00:00:26 #2701 [Verbose] > │                                                                              │

00:00:26 #2702 [Verbose] > │                                                                              │

00:00:26 #2703 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2704 [Verbose] >

00:00:26 #2705 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #2706 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #2707 [Verbose] > │ ### ^-^                                                                      │

00:00:26 #2708 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2709 [Verbose] >

00:00:26 #2710 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2711 [Verbose] > inl (^-^) a b =

00:00:26 #2712 [Verbose] >     a ^+^ (negate_vec b)

00:00:26 #2713 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5856-5641-514c0135c83b\main.spi

00:00:26 #2714 [Verbose] >

00:00:26 #2715 [Verbose] > ╭─[ 165.59ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2716 [Verbose] > │ ()                                                                           │

00:00:26 #2717 [Verbose] > │                                                                              │

00:00:26 #2718 [Verbose] > │                                                                              │

00:00:26 #2719 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2720 [Verbose] >

00:00:26 #2721 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2722 [Verbose] > // // test

00:00:26 #2723 [Verbose] >

00:00:26 #2724 [Verbose] > vec 1 2 3 ^-^ vec 4 5 6

00:00:26 #2725 [Verbose] > |> _equal (vec -3 -3 -3)

00:00:26 #2726 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5873-7325-7a2417df2b6a\main.spi

00:00:26 #2727 [Verbose] >

00:00:26 #2728 [Verbose] > ╭─[ 170.09ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2729 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:26 #2730 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-3.0, -3.0, -3.0)} /     │

00:00:26 #2731 [Verbose] > │ expected: %A{struct (-3.0, -3.0, -3.0)}"                                     │

00:00:26 #2732 [Verbose] > │     ()                                                                       │

00:00:26 #2733 [Verbose] > │ method0()                                                                    │

00:00:26 #2734 [Verbose] > │                                                                              │

00:00:26 #2735 [Verbose] > │                                                                              │

00:00:26 #2736 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2737 [Verbose] >

00:00:26 #2738 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #2739 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #2740 [Verbose] > │ ### <.>                                                                      │

00:00:26 #2741 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2742 [Verbose] >

00:00:26 #2743 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2744 [Verbose] > inl (<.>) { x = ax y = ay z = az } { x = bx y = by z = bz } =

00:00:26 #2745 [Verbose] >     ax * bx + ay * by + az * bz

00:00:26 #2746 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5890-9079-9ab2a8f37c9e\main.spi

00:00:26 #2747 [Verbose] >

00:00:26 #2748 [Verbose] > ╭─[ 165.51ms - stdout ]────────────────────────────────────────────────────────╮

00:00:26 #2749 [Verbose] > │ ()                                                                           │

00:00:26 #2750 [Verbose] > │                                                                              │

00:00:26 #2751 [Verbose] > │                                                                              │

00:00:26 #2752 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #2753 [Verbose] >

00:00:26 #2754 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #2755 [Verbose] > // // test

00:00:26 #2756 [Verbose] >

00:00:26 #2757 [Verbose] > vec 1 2 3 <.> vec 4 5 6

00:00:26 #2758 [Verbose] > |> _equal 32

00:00:26 #2759 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5907-0757-04a16a3e0742\main.spi

00:00:27 #2760 [Verbose] >

00:00:27 #2761 [Verbose] > ╭─[ 158.96ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2762 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2763 [Verbose] > │     let v0 : string = $"_equal / actual: %A{32.0} / expected: %A{32.0}"      │

00:00:27 #2764 [Verbose] > │     ()                                                                       │

00:00:27 #2765 [Verbose] > │ method0()                                                                    │

00:00:27 #2766 [Verbose] > │                                                                              │

00:00:27 #2767 [Verbose] > │                                                                              │

00:00:27 #2768 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2769 [Verbose] >

00:00:27 #2770 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2771 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2772 [Verbose] > │ ### \>\<                                                                     │

00:00:27 #2773 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2774 [Verbose] >

00:00:27 #2775 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2776 [Verbose] > inl (><) (a : vec) (b : vec) =

00:00:27 #2777 [Verbose] >     vec

00:00:27 #2778 [Verbose] >         (a.y * b.z - a.z * b.y)

00:00:27 #2779 [Verbose] >         (a.z * b.x - a.x * b.z)

00:00:27 #2780 [Verbose] >         (a.x * b.y - a.y * b.x)

00:00:27 #2781 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5924-2408-28d4c747c93b\main.spi

00:00:27 #2782 [Verbose] >

00:00:27 #2783 [Verbose] > ╭─[ 224.03ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2784 [Verbose] > │ ()                                                                           │

00:00:27 #2785 [Verbose] > │                                                                              │

00:00:27 #2786 [Verbose] > │                                                                              │

00:00:27 #2787 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2788 [Verbose] >

00:00:27 #2789 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2790 [Verbose] > // // test

00:00:27 #2791 [Verbose] >

00:00:27 #2792 [Verbose] > vec 1 2 3 >< vec 4 5 6

00:00:27 #2793 [Verbose] > |> _equal (vec -3 6 -3)

00:00:27 #2794 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5946-4666-4c61c3505fdb\main.spi

00:00:27 #2795 [Verbose] >

00:00:27 #2796 [Verbose] > ╭─[ 330.81ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2797 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2798 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (-3.0, 6.0, -3.0)} /      │

00:00:27 #2799 [Verbose] > │ expected: %A{struct (-3.0, 6.0, -3.0)}"                                      │

00:00:27 #2800 [Verbose] > │     ()                                                                       │

00:00:27 #2801 [Verbose] > │ method0()                                                                    │

00:00:27 #2802 [Verbose] > │                                                                              │

00:00:27 #2803 [Verbose] > │                                                                              │

00:00:27 #2804 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2805 [Verbose] >

00:00:27 #2806 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2807 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2808 [Verbose] > │ ### magnitude                                                                │

00:00:27 #2809 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2810 [Verbose] >

00:00:27 #2811 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2812 [Verbose] > inl magnitude v =

00:00:27 #2813 [Verbose] >     v <.> v |> sqrt

00:00:27 #2814 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5980-8021-84bfec702af5\main.spi

00:00:27 #2815 [Verbose] >

00:00:27 #2816 [Verbose] > ╭─[ 149.25ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2817 [Verbose] > │ ()                                                                           │

00:00:27 #2818 [Verbose] > │                                                                              │

00:00:27 #2819 [Verbose] > │                                                                              │

00:00:27 #2820 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2821 [Verbose] >

00:00:27 #2822 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2823 [Verbose] > // // test

00:00:27 #2824 [Verbose] >

00:00:27 #2825 [Verbose] > vec 1 2 3

00:00:27 #2826 [Verbose] > |> magnitude

00:00:27 #2827 [Verbose] > |> _almost_equal 3.7416573867739413

00:00:27 #2828 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1304-5995-9535-968943696aa3\main.spi

00:00:27 #2829 [Verbose] >

00:00:27 #2830 [Verbose] > ╭─[ 157.40ms - stdout ]────────────────────────────────────────────────────────╮

00:00:27 #2831 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:27 #2832 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{3.7416573867739413} /     │

00:00:27 #2833 [Verbose] > │ expected: %A{3.7416573867739413}"                                            │

00:00:27 #2834 [Verbose] > │     ()                                                                       │

00:00:27 #2835 [Verbose] > │ method0()                                                                    │

00:00:27 #2836 [Verbose] > │                                                                              │

00:00:27 #2837 [Verbose] > │                                                                              │

00:00:27 #2838 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2839 [Verbose] >

00:00:27 #2840 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:27 #2841 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:27 #2842 [Verbose] > │ ### v1                                                                       │

00:00:27 #2843 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:27 #2844 [Verbose] >

00:00:27 #2845 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:27 #2846 [Verbose] > inl v1 t =

00:00:27 #2847 [Verbose] >     2 *^ (t ** 2 *^ i_hat () ^+^ 3 *^ (t ** 3 *^ j_hat () ^+^ t ** 4 *^ k_hat

00:00:27 #2848 [Verbose] > ()))

00:00:28 #2849 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0011-1191-17b25f428b4b\main.spi

00:00:28 #2850 [Verbose] >

00:00:28 #2851 [Verbose] > ╭─[ 178.51ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2852 [Verbose] > │ ()                                                                           │

00:00:28 #2853 [Verbose] > │                                                                              │

00:00:28 #2854 [Verbose] > │                                                                              │

00:00:28 #2855 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2856 [Verbose] >

00:00:28 #2857 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2858 [Verbose] > // // test

00:00:28 #2859 [Verbose] >

00:00:28 #2860 [Verbose] > v1 1

00:00:28 #2861 [Verbose] > |> _equal (vec 2 6 6)

00:00:28 #2862 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0029-2985-241f5dc8581c\main.spi

00:00:28 #2863 [Verbose] >

00:00:28 #2864 [Verbose] > ╭─[ 173.70ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2865 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:28 #2866 [Verbose] > │     let v0 : string = $"_equal / actual: %A{struct (2.0, 6.0, 6.0)} /        │

00:00:28 #2867 [Verbose] > │ expected: %A{struct (2.0, 6.0, 6.0)}"                                        │

00:00:28 #2868 [Verbose] > │     ()                                                                       │

00:00:28 #2869 [Verbose] > │ method0()                                                                    │

00:00:28 #2870 [Verbose] > │                                                                              │

00:00:28 #2871 [Verbose] > │                                                                              │

00:00:28 #2872 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2873 [Verbose] >

00:00:28 #2874 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:28 #2875 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:28 #2876 [Verbose] > │ ### vec_derivative                                                           │

00:00:28 #2877 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2878 [Verbose] >

00:00:28 #2879 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2880 [Verbose] > type vec_derivative = (f64 -> vec) -> f64 -> vec

00:00:28 #2881 [Verbose] >

00:00:28 #2882 [Verbose] > inl vec_derivative dt : vec_derivative =

00:00:28 #2883 [Verbose] >     fun v t =>

00:00:28 #2884 [Verbose] >         (v (t + dt / 2) ^-^ v (t - dt / 2)) ^/ dt

00:00:28 #2885 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0047-4774-46bd681659e1\main.spi

00:00:28 #2886 [Verbose] >

00:00:28 #2887 [Verbose] > ╭─[ 196.27ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2888 [Verbose] > │ ()                                                                           │

00:00:28 #2889 [Verbose] > │                                                                              │

00:00:28 #2890 [Verbose] > │                                                                              │

00:00:28 #2891 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2892 [Verbose] >

00:00:28 #2893 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2894 [Verbose] > // // test

00:00:28 #2895 [Verbose] >

00:00:28 #2896 [Verbose] > vec_derivative 0.01 v1 3 .x

00:00:28 #2897 [Verbose] > |> _almost_equal (derivative 0.01 (v1 >> fun v => v.x) 3)

00:00:28 #2898 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0067-6765-6a2728642efc\main.spi

00:00:28 #2899 [Verbose] >

00:00:28 #2900 [Verbose] > ╭─[ 141.19ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #2901 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:28 #2902 [Verbose] > │     let v0 : string = $"_almost_equal / actual: %A{11.999999999999744} /     │

00:00:28 #2903 [Verbose] > │ expected: %A{11.999999999999744}"                                            │

00:00:28 #2904 [Verbose] > │     ()                                                                       │

00:00:28 #2905 [Verbose] > │ method0()                                                                    │

00:00:28 #2906 [Verbose] > │                                                                              │

00:00:28 #2907 [Verbose] > │                                                                              │

00:00:28 #2908 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2909 [Verbose] >

00:00:28 #2910 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:28 #2911 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:28 #2912 [Verbose] > │ ## states_ps                                                                 │

00:00:28 #2913 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #2914 [Verbose] >

00:00:28 #2915 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #2916 [Verbose] > nominal particle_state =

00:00:28 #2917 [Verbose] >     {

00:00:28 #2918 [Verbose] >         mass : f64

00:00:28 #2919 [Verbose] >         charge : f64

00:00:28 #2920 [Verbose] >         time : f64

00:00:28 #2921 [Verbose] >         pos_vec : vec

00:00:28 #2922 [Verbose] >         velocity : vec

00:00:28 #2923 [Verbose] >     }

00:00:28 #2924 [Verbose] >

00:00:28 #2925 [Verbose] > inl default_particle_state () : particle_state =

00:00:28 #2926 [Verbose] >     particle_state {

00:00:28 #2927 [Verbose] >         mass = 1

00:00:28 #2928 [Verbose] >         charge = 0

00:00:28 #2929 [Verbose] >         time = 0

00:00:28 #2930 [Verbose] >         pos_vec = zero_vec ()

00:00:28 #2931 [Verbose] >         velocity = zero_vec ()

00:00:28 #2932 [Verbose] >     }

00:00:28 #2933 [Verbose] >

00:00:28 #2934 [Verbose] > type one_body_force = particle_state -> vec

00:00:28 #2935 [Verbose] >

00:00:28 #2936 [Verbose] > nominal d_particle_state =

00:00:28 #2937 [Verbose] >     {

00:00:28 #2938 [Verbose] >         dmdt : f64

00:00:28 #2939 [Verbose] >         dqdt : f64

00:00:28 #2940 [Verbose] >         dtdt : f64

00:00:28 #2941 [Verbose] >         drdt : vec

00:00:28 #2942 [Verbose] >         dvdt : vec

00:00:28 #2943 [Verbose] >     }

00:00:28 #2944 [Verbose] >

00:00:28 #2945 [Verbose] > inl newton_second_ps (fs : list one_body_force) (st : particle_state) :

00:00:28 #2946 [Verbose] > d_particle_state =

00:00:28 #2947 [Verbose] >     inl f_net = fs |> listm.map (fun f => f st) |> sum_vec

00:00:28 #2948 [Verbose] >     d_particle_state {

00:00:28 #2949 [Verbose] >         dmdt = 0

00:00:28 #2950 [Verbose] >         dqdt = 0

00:00:28 #2951 [Verbose] >         dtdt = 1

00:00:28 #2952 [Verbose] >         drdt = st.velocity

00:00:28 #2953 [Verbose] >         dvdt = f_net ^/ st.mass

00:00:28 #2954 [Verbose] >     }

00:00:28 #2955 [Verbose] >

00:00:28 #2956 [Verbose] > inl earth_surface_gravity (st : particle_state) =

00:00:28 #2957 [Verbose] >     inl g = 9.80665

00:00:28 #2958 [Verbose] >     -st.mass * g *^ k_hat ()

00:00:28 #2959 [Verbose] >

00:00:28 #2960 [Verbose] > inl air_resistance drag rho area (st : particle_state) =

00:00:28 #2961 [Verbose] >     -0.5 * drag * rho * area * magnitude st.velocity *^ st.velocity

00:00:28 #2962 [Verbose] >

00:00:28 #2963 [Verbose] > inl euler_cromer_ps dt (deriv : particle_state -> d_particle_state)

00:00:28 #2964 [Verbose] > (particle_state st) =

00:00:28 #2965 [Verbose] >     inl dst : d_particle_state = deriv (particle_state st)

00:00:28 #2966 [Verbose] >     inl v' = st.velocity ^+^ dst.dvdt ^* dt

00:00:28 #2967 [Verbose] >     particle_state { st with

00:00:28 #2968 [Verbose] >         time = st.time + dt

00:00:28 #2969 [Verbose] >         pos_vec = st.pos_vec ^+^ v' ^* dt

00:00:28 #2970 [Verbose] >         velocity = st.velocity ^+^ dst.dvdt ^* dt

00:00:28 #2971 [Verbose] >     }

00:00:28 #2972 [Verbose] >

00:00:28 #2973 [Verbose] > instance (+++) d_particle_state = fun (dps : d_particle_state) (dps' :

00:00:28 #2974 [Verbose] > d_particle_state) =>

00:00:28 #2975 [Verbose] >     d_particle_state {

00:00:28 #2976 [Verbose] >         dmdt = dps.dmdt + dps'.dmdt

00:00:28 #2977 [Verbose] >         dqdt = dps.dqdt + dps'.dqdt

00:00:28 #2978 [Verbose] >         dtdt = dps.dtdt + dps'.dtdt

00:00:28 #2979 [Verbose] >         drdt = dps.drdt ^+^ dps'.drdt

00:00:28 #2980 [Verbose] >         dvdt = dps.dvdt ^+^ dps'.dvdt

00:00:28 #2981 [Verbose] >     }

00:00:28 #2982 [Verbose] >

00:00:28 #2983 [Verbose] > instance scale d_particle_state = fun w (dps : d_particle_state) =>

00:00:28 #2984 [Verbose] >     d_particle_state {

00:00:28 #2985 [Verbose] >         dmdt = w * dps.dmdt

00:00:28 #2986 [Verbose] >         dqdt = w * dps.dqdt

00:00:28 #2987 [Verbose] >         dtdt = w * dps.dtdt

00:00:28 #2988 [Verbose] >         drdt = w *^ dps.drdt

00:00:28 #2989 [Verbose] >         dvdt = w *^ dps.dvdt

00:00:28 #2990 [Verbose] >     }

00:00:28 #2991 [Verbose] >

00:00:28 #2992 [Verbose] > instance shift particle_state = fun dt dps (particle_state st) =>

00:00:28 #2993 [Verbose] >     inl (d_particle_state dps) =

00:00:28 #2994 [Verbose] >         real

00:00:28 #2995 [Verbose] >             match dps with

00:00:28 #2996 [Verbose] >             | d_particle_state _ => dps

00:00:28 #2997 [Verbose] >     particle_state { st with

00:00:28 #2998 [Verbose] >         time = st.time + dps.dtdt * dt

00:00:28 #2999 [Verbose] >         pos_vec = st.pos_vec ^+^ dps.drdt ^* dt

00:00:28 #3000 [Verbose] >         velocity = st.velocity ^+^ dps.dvdt ^* dt

00:00:28 #3001 [Verbose] >     }

00:00:28 #3002 [Verbose] >

00:00:28 #3003 [Verbose] > inl states_ps (method : numerical_method particle_state d_particle_state) : _ ->

00:00:28 #3004 [Verbose] > _ -> i32 -> particle_state =

00:00:28 #3005 [Verbose] >     newton_second_ps >> method >> seq.iterate_

00:00:28 #3006 [Verbose] >

00:00:28 #3007 [Verbose] > inl z_ge0 sts =

00:00:28 #3008 [Verbose] >     sts

00:00:28 #3009 [Verbose] >     |> seq.take_while_ (fun (particle_state st) _ => st.pos_vec.z >= 0)

00:00:28 #3010 [Verbose] >

00:00:28 #3011 [Verbose] > inl trajectory sts =

00:00:28 #3012 [Verbose] >     sts |> listm.map (fun (particle_state st) => st.pos_vec.y, st.pos_vec.z)

00:00:28 #3013 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0082-8232-80c1d3e23dea\main.spi

00:00:28 #3014 [Verbose] >

00:00:28 #3015 [Verbose] > ╭─[ 163.87ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #3016 [Verbose] > │ ()                                                                           │

00:00:28 #3017 [Verbose] > │                                                                              │

00:00:28 #3018 [Verbose] > │                                                                              │

00:00:28 #3019 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #3020 [Verbose] >

00:00:28 #3021 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #3022 [Verbose] > // // test

00:00:28 #3023 [Verbose] >

00:00:28 #3024 [Verbose] > inl update_ps (method : numerical_method particle_state d_particle_state) =

00:00:28 #3025 [Verbose] >     newton_second_ps >> method

00:00:28 #3026 [Verbose] >

00:00:28 #3027 [Verbose] > inl position_ps (method : numerical_method particle_state d_particle_state) fs

00:00:28 #3028 [Verbose] > st t =

00:00:28 #3029 [Verbose] >     inl states : i32 -> particle_state = states_ps method fs st

00:00:28 #3030 [Verbose] >     inl dt = (states 1).time - (states 0).time

00:00:28 #3031 [Verbose] >     inl num_steps = t / dt |> math.round |> abs

00:00:28 #3032 [Verbose] >     inl st1 = solver' method (newton_second_ps fs) st num_steps

00:00:28 #3033 [Verbose] >     st1.pos_vec

00:00:28 #3034 [Verbose] >

00:00:28 #3035 [Verbose] > inl sun_gravity (st : particle_state) : vec =

00:00:28 #3036 [Verbose] >     inl big_g = 0.0000000000667408

00:00:28 #3037 [Verbose] >     inl sun_mass = 1988480000000000000000000000000

00:00:28 #3038 [Verbose] >     -big_g * sun_mass * st.mass *^ st.pos_vec ^/ magnitude st.pos_vec ** 3

00:00:28 #3039 [Verbose] >

00:00:28 #3040 [Verbose] > inl wind_force v_wind drag rho area (st : particle_state) =

00:00:28 #3041 [Verbose] >     inl v_rel = st.velocity ^-^ v_wind

00:00:28 #3042 [Verbose] >     -0.5 * drag * rho * area * magnitude v_rel *^ v_rel

00:00:28 #3043 [Verbose] >

00:00:28 #3044 [Verbose] > inl rock_state () =

00:00:28 #3045 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:28 #3046 [Verbose] >     particle_state { default_particle_state' with

00:00:28 #3047 [Verbose] >         mass = 2

00:00:28 #3048 [Verbose] >         velocity = vec 3 0 4

00:00:28 #3049 [Verbose] >     }

00:00:28 #3050 [Verbose] >

00:00:28 #3051 [Verbose] > inl halley_update dt =

00:00:28 #3052 [Verbose] >     update_ps (euler_cromer_ps dt) [[ sun_gravity ]]

00:00:28 #3053 [Verbose] >

00:00:28 #3054 [Verbose] > inl halley_initial () =

00:00:28 #3055 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:28 #3056 [Verbose] >     particle_state { default_particle_state' with

00:00:28 #3057 [Verbose] >         mass = 220000000000000

00:00:28 #3058 [Verbose] >         pos_vec = 87660000000 *^ i_hat ()

00:00:28 #3059 [Verbose] >         velocity = 54569 *^ j_hat ()

00:00:28 #3060 [Verbose] >     }

00:00:28 #3061 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0098-9896-95906e308152\main.spi

00:00:28 #3062 [Verbose] >

00:00:28 #3063 [Verbose] > ╭─[ 139.98ms - stdout ]────────────────────────────────────────────────────────╮

00:00:28 #3064 [Verbose] > │ ()                                                                           │

00:00:28 #3065 [Verbose] > │                                                                              │

00:00:28 #3066 [Verbose] > │                                                                              │

00:00:28 #3067 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:28 #3068 [Verbose] >

00:00:28 #3069 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:28 #3070 [Verbose] > // // test

00:00:28 #3071 [Verbose] >

00:00:28 #3072 [Verbose] > inl baseball_forces () =

00:00:28 #3073 [Verbose] >     inl area = pi * (0.074 / 2) ** 2

00:00:28 #3074 [Verbose] >     [[

00:00:28 #3075 [Verbose] >         earth_surface_gravity

00:00:28 #3076 [Verbose] >         air_resistance 0.3 1.225 area

00:00:28 #3077 [Verbose] >     ]]

00:00:28 #3078 [Verbose] >

00:00:28 #3079 [Verbose] > inl baseball_trajectory dt v0 theta_deg =

00:00:28 #3080 [Verbose] >     inl theta_rad = theta_deg * pi / 180

00:00:28 #3081 [Verbose] >     inl vy0 = v0 * cos theta_rad

00:00:28 #3082 [Verbose] >     inl vz0 = v0 * sin theta_rad

00:00:28 #3083 [Verbose] >     inl initial_state =

00:00:28 #3084 [Verbose] >         particle_state {

00:00:28 #3085 [Verbose] >             mass = 0.145

00:00:28 #3086 [Verbose] >             charge = 0

00:00:28 #3087 [Verbose] >             time = 0

00:00:28 #3088 [Verbose] >             pos_vec = zero_vec ()

00:00:28 #3089 [Verbose] >             velocity = vec 0 vy0 vz0

00:00:28 #3090 [Verbose] >         }

00:00:28 #3091 [Verbose] >     states_ps (euler_cromer_ps dt) (baseball_forces ()) initial_state

00:00:28 #3092 [Verbose] >     >> Some

00:00:28 #3093 [Verbose] >     |> z_ge0

00:00:28 #3094 [Verbose] >     |> trajectory

00:00:28 #3095 [Verbose] >

00:00:28 #3096 [Verbose] > inl baseball_range dt v0 theta_deg =

00:00:28 #3097 [Verbose] >     baseball_trajectory dt v0 theta_deg

00:00:28 #3098 [Verbose] >     |> listm.fold (fun _ (y, _) => y) 0

00:00:28 #3099 [Verbose] >

00:00:28 #3100 [Verbose] > inl x : a _ f64 = am'.init_series 10 80 1

00:00:28 #3101 [Verbose] > inl y = x |> am.map (baseball_range 0.01 45)

00:00:28 #3102 [Verbose] > "range for a baseball hit at 45 m/s",

00:00:28 #3103 [Verbose] > "angle above horizontal (degrees)",

00:00:28 #3104 [Verbose] > "",

00:00:28 #3105 [Verbose] > ;[[ "horizontal range (m)", x, y ]]

00:00:29 #3106 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0113-1319-1ad5ef796859\main.spi

00:00:29 #3107 [Verbose] >

00:00:29 #3108 [Verbose] > ╭─[ 880.33ms - return value ]──────────────────────────────────────────────────╮

00:00:29 #3109 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:29 #3110 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:29 #3111 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:29 #3112 [Verbose] > │ stroke="none"/>                                                              │

00:00:29 #3113 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:29 #3114 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:29 #3115 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:29 #3116 [Verbose] > │ range for a baseball hit at 45 m/s                                           │

00:00:29 #3117 [Verbose] > │ </text>                                                                      │

00:00:29 #3118 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="55" y1="424" x2="55" │

00:00:29 #3119 [Verbose] > │ y2="75"/>                                                                    │

00:00:29 #3120 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │

00:00:29 #3121 [Verbose] > │ y2="75"/>                                                                    │

00:00:29 #3122 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:29 #3123 [Verbose] > │ y2="75"/>                                                                    │

00:00:29 #3124 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │

00:00:29 #3125 [Verbose] > │ y2="75"/>                                                                    │

00:00:29 #3126 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="...                         │

00:00:29 #3127 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #3128 [Verbose] >

00:00:29 #3129 [Verbose] > ╭─[ 890.28ms - stdout ]────────────────────────────────────────────────────────╮

00:00:29 #3130 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:00:29 #3131 [Verbose] > │ and UH0 =                                                                    │

00:00:29 #3132 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:29 #3133 [Verbose] > │ * float * UH0                                                                │

00:00:29 #3134 [Verbose] > │     | UH0_1                                                                  │

00:00:29 #3135 [Verbose] > │ and UH1 =                                                                    │

00:00:29 #3136 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:29 #3137 [Verbose] > │     | UH1_1                                                                  │

00:00:29 #3138 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:00:29 #3139 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:29 #3140 [Verbose] > │     let v2 : bool = v1 < 71                                                  │

00:00:29 #3141 [Verbose] > │     v2                                                                       │

00:00:29 #3142 [Verbose] > │ and method2 (v0 : int32, v1 : Mut0) : bool =                                 │

00:00:29 #3143 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:29 #3144 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:29 #3145 [Verbose] > │     v3                                                                       │

00:00:29 #3146 [Verbose] > │ and method4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5  │

00:00:29 #3147 [Verbose] > │ : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float *   │

00:00:29 #3148 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:29 #3149 [Verbose] > │     let v10 : bool = v9 <= 0                                                 │

00:00:29 #3150 [Verbose] > │     if v10 then                                                              │

00:00:29 #3151 [Verbose] > │         struct (v0, v1, v2, v3, v4, v5, v6, v7, v8)                          │

00:00:29 #3152 [Verbose] > │     else                                                                     │

00:00:29 #3153 [Verbose] > │         let v11 : float = v6 * v6                                            │

00:00:29 #3154 [Verbose] > │         let v12 : float = v7 * v7                                            │

00:00:29 #3155 [Verbose] > │         let v13 : float = v11 + v12                                          │

00:00:29 #3156 [Verbose] > │         let v14 : float = v8 * v8                                            │

00:00:29 #3157 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:29 #3158 [Verbose] > │         let v16 : float = sqrt v15                                           │

00:00:29 #3159 [Verbose] > │         let v17 : float = -0.0007902794129829633 * v16                       │

00:00:29 #3160 [Verbose] > │         let v18 : float = v17 * v6                                           │

00:00:29 #3161 [Verbose] > │         let v19 : float = v17 * v7                                           │

00:00:29 #3162 [Verbose] > │         let v20 : float = v17 * v8                                           │

00:00:29 #3163 [Verbose] > │         let v21 : float =  -v1                                               │

00:00:29 #3164 [Verbose] > │         let v22 : float = v21 * 9.80665                                      │

00:00:29 #3165 [Verbose] > │         let v23 : float = v22 * 0.0                                          │

00:00:29 #3166 [Verbose] > │         let v24 : float = v23 + v18                                          │

00:00:29 #3167 [Verbose] > │         let v25 : float = v23 + v19                                          │

00:00:29 #3168 [Verbose] > │         let v26 : float = v22 + v20                                          │

00:00:29 #3169 [Verbose] > │         let v27 : float = v24 / v1                                           │

00:00:29 #3170 [Verbose] > │         let v28 : float = v25 / v1                                           │

00:00:29 #3171 [Verbose] > │         let v29 : float = v26 / v1                                           │

00:00:29 #3172 [Verbose] > │         let v30 : float = 0.01 * v27                                         │

00:00:29 #3173 [Verbose] > │         let v31 : float = 0.01 * v28                                         │

00:00:29 #3174 [Verbose] > │         let v32 : float = 0.01 * v29                                         │

00:00:29 #3175 [Verbose] > │         let v33 : float = v6 + v30                                           │

00:00:29 #3176 [Verbose] > │         let v34 : float = v7 + v31                                           │

00:00:29 #3177 [Verbose] > │         let v35 : float = v8 + v32                                           │

00:00:29 #3178 [Verbose] > │         let v36 : float = v5 + 0.01                                          │

00:00:29 #3179 [Verbose] > │         let v37 : float = 0.01 * v33                                         │

00:00:29 #3180 [Verbose] > │         let v38 : float = 0.01 * v34                                         │

00:00:29 #3181 [Verbose] > │         let v39 : float = 0.01 * v35                                         │

00:00:29 #3182 [Verbose] > │         let v40 : float = v2 + v37                                           │

00:00:29 #3183 [Verbose] > │         let v41 : float = v3 + v38                                           │

00:00:29 #3184 [Verbose] > │         let v42 : float = v4 + v39                                           │

00:00:29 #3185 [Verbose] > │         let v43 : int32 = v9 - 1                                             │

00:00:29 #3186 [Verbose] > │         method4(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43)              │

00:00:29 #3187 [Verbose] > │ and method5 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:29 #3188 [Verbose] > │     match v0 with                                                            │

00:00:29 #3189 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:29 #3190 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:29 #3191 [Verbose] > │         method5(v11, v12)                                                    │

00:00:29 #3192 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:29 #3193 [Verbose] > │         v1                                                                   │

00:00:29 #3194 [Verbose] > │ and method3 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 =           │

00:00:29 #3195 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:29 #3196 [Verbose] > │     let v5 : float = 0.145                                                   │

00:00:29 #3197 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:29 #3198 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:29 #3199 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:29 #3200 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:29 #3201 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:29 #3202 [Verbose] > │     let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 :    │

00:00:29 #3203 [Verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method4(v4, v5, │

00:00:29 #3204 [Verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3)                                             │

00:00:29 #3205 [Verbose] > │     let v20 : bool = v15 >= 0.0                                              │

00:00:29 #3206 [Verbose] > │     if v20 then                                                              │

00:00:29 #3207 [Verbose] > │         let v21 : UH0 = UH0_0(v11, v12, v13, v14, v15, v16, v17, v18, v19,   │

00:00:29 #3208 [Verbose] > │ v2)                                                                          │

00:00:29 #3209 [Verbose] > │         let v22 : int32 = v3 + 1                                             │

00:00:29 #3210 [Verbose] > │         method3(v0, v1, v21, v22)                                            │

00:00:29 #3211 [Verbose] > │     else                                                                     │

00:00:29 #3212 [Verbose] > │         let v24 : UH0 = UH0_1                                                │

00:00:29 #3213 [Verbose] > │         method5(v2, v24)                                                     │

00:00:29 #3214 [Verbose] > │ and method6 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:29 #3215 [Verbose] > │     match v0 with                                                            │

00:00:29 #3216 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:29 #3217 [Verbose] > │         let v12 : UH1 = method6(v11, v1)                                     │

00:00:29 #3218 [Verbose] > │         UH1_0(v5, v6, v12)                                                   │

00:00:29 #3219 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:29 #3220 [Verbose] > │         v1                                                                   │

00:00:29 #3221 [Verbose] > │ and method7 (v0 : UH1, v1 : float) : float =                                 │

00:00:29 #3222 [Verbose] > │     match v0 with                                                            │

00:00:29 #3223 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:29 #3224 [Verbose] > │         method7(v4, v2)                                                      │

00:00:29 #3225 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:29 #3226 [Verbose] > │         v1                                                                   │

00:00:29 #3227 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:29 #3228 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:29 #3229 [Verbose] > │     let v0 : (float []) = Array.zeroCreate<float> (71)                       │

00:00:29 #3230 [Verbose] > │     let v1 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:29 #3231 [Verbose] > │     while method1(v1) do                                                     │

00:00:29 #3232 [Verbose] > │         let v3 : int32 = v1.l0                                               │

00:00:29 #3233 [Verbose] > │         let v4 : float = float v3                                            │

00:00:29 #3234 [Verbose] > │         let v5 : float = 10.0 + v4                                           │

00:00:29 #3235 [Verbose] > │         v0.[int v3] <- v5                                                    │

00:00:29 #3236 [Verbose] > │         let v6 : int32 = v3 + 1                                              │

00:00:29 #3237 [Verbose] > │         v1.l0 <- v6                                                          │

00:00:29 #3238 [Verbose] > │         ()                                                                   │

00:00:29 #3239 [Verbose] > │     let v7 : int32 = v0.Length                                               │

00:00:29 #3240 [Verbose] > │     let v8 : (float []) = Array.zeroCreate<float> (v7)                       │

00:00:29 #3241 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:00:29 #3242 [Verbose] > │     while method2(v7, v9) do                                                 │

00:00:29 #3243 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:00:29 #3244 [Verbose] > │         let v12 : float = v0.[int v11]                                       │

00:00:29 #3245 [Verbose] > │         let v13 : float = v12 * 3.141592653589793                            │

00:00:29 #3246 [Verbose] > │         let v14 : float = v13 / 180.0                                        │

00:00:29 #3247 [Verbose] > │         let v15 : float = cos v14                                            │

00:00:29 #3248 [Verbose] > │         let v16 : float = 45.0 * v15                                         │

00:00:29 #3249 [Verbose] > │         let v17 : float = sin v14                                            │

00:00:29 #3250 [Verbose] > │         let v18 : float = 45.0 * v17                                         │

00:00:29 #3251 [Verbose] > │         let v19 : UH0 = UH0_1                                                │

00:00:29 #3252 [Verbose] > │         let v20 : int32 = 0                                                  │

00:00:29 #3253 [Verbose] > │         let v21 : UH0 = method3(v16, v18, v19, v20)                          │

00:00:29 #3254 [Verbose] > │         let v22 : UH1 = UH1_1                                                │

00:00:29 #3255 [Verbose] > │         let v23 : UH1 = method6(v21, v22)                                    │

00:00:29 #3256 [Verbose] > │         let v24 : float = 0.0                                                │

00:00:29 #3257 [Verbose] > │         let v25 : float = method7(v23, v24)                                  │

00:00:29 #3258 [Verbose] > │         v8.[int v11] <- v25                                                  │

00:00:29 #3259 [Verbose] > │         let v26 : int32 = v11 + 1                                            │

00:00:29 #3260 [Verbose] > │         v9.l0 <- v26                                                         │

00:00:29 #3261 [Verbose] > │         ()                                                                   │

00:00:29 #3262 [Verbose] > │     let v27 : string = "horizontal range (m)"                                │

00:00:29 #3263 [Verbose] > │     let v28 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:29 #3264 [Verbose] > │ (v27, v0, v8)|]                                                              │

00:00:29 #3265 [Verbose] > │     let v29 : string = "range for a baseball hit at 45 m/s"                  │

00:00:29 #3266 [Verbose] > │     let v30 : string = "angle above horizontal (degrees)"                    │

00:00:29 #3267 [Verbose] > │     let v31 : string = ""                                                    │

00:00:29 #3268 [Verbose] > │     struct (v29, v30, v31, v28)                                              │

00:00:29 #3269 [Verbose] > │ method0()                                                                    │

00:00:29 #3270 [Verbose] > │                                                                              │

00:00:29 #3271 [Verbose] > │                                                                              │

00:00:29 #3272 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:29 #3273 [Verbose] >

00:00:29 #3274 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:29 #3275 [Verbose] > // // test

00:00:29 #3276 [Verbose] >

00:00:29 #3277 [Verbose] > inl best_angle (min, max) =

00:00:29 #3278 [Verbose] >     let rec loop theta_deg (best_range, best_theta_deg) =

00:00:29 #3279 [Verbose] >         if theta_deg > max

00:00:29 #3280 [Verbose] >         then best_range, best_theta_deg

00:00:29 #3281 [Verbose] >         else

00:00:29 #3282 [Verbose] >             inl range = baseball_range 0.01 45 theta_deg

00:00:29 #3283 [Verbose] >             loop

00:00:29 #3284 [Verbose] >                 (theta_deg + 1)

00:00:29 #3285 [Verbose] >                 (if range > best_range

00:00:29 #3286 [Verbose] >                     then range, theta_deg

00:00:29 #3287 [Verbose] >                     else best_range, best_theta_deg)

00:00:29 #3288 [Verbose] >     loop min (0f64, min)

00:00:29 #3289 [Verbose] >

00:00:29 #3290 [Verbose] > best_angle (30f64, 60f64)

00:00:29 #3291 [Verbose] > |> _equal (116.77499158246208, 41)

00:00:30 #3292 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0207-0757-0b6668cf75fd\main.spi

00:00:30 #3293 [Verbose] >

00:00:30 #3294 [Verbose] > ╭─[ 598.26ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #3295 [Verbose] > │ type UH0 =                                                                   │

00:00:30 #3296 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:30 #3297 [Verbose] > │ * float * UH0                                                                │

00:00:30 #3298 [Verbose] > │     | UH0_1                                                                  │

00:00:30 #3299 [Verbose] > │ and UH1 =                                                                    │

00:00:30 #3300 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:30 #3301 [Verbose] > │     | UH1_1                                                                  │

00:00:30 #3302 [Verbose] > │ let rec method3 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, │

00:00:30 #3303 [Verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float, v9 : int32) : struct (float  │

00:00:30 #3304 [Verbose] > │ * float * float * float * float * float * float * float * float) =           │

00:00:30 #3305 [Verbose] > │     let v10 : bool = v9 <= 0                                                 │

00:00:30 #3306 [Verbose] > │     if v10 then                                                              │

00:00:30 #3307 [Verbose] > │         struct (v0, v1, v2, v3, v4, v5, v6, v7, v8)                          │

00:00:30 #3308 [Verbose] > │     else                                                                     │

00:00:30 #3309 [Verbose] > │         let v11 : float = v6 * v6                                            │

00:00:30 #3310 [Verbose] > │         let v12 : float = v7 * v7                                            │

00:00:30 #3311 [Verbose] > │         let v13 : float = v11 + v12                                          │

00:00:30 #3312 [Verbose] > │         let v14 : float = v8 * v8                                            │

00:00:30 #3313 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:30 #3314 [Verbose] > │         let v16 : float = sqrt v15                                           │

00:00:30 #3315 [Verbose] > │         let v17 : float = -0.0007902794129829633 * v16                       │

00:00:30 #3316 [Verbose] > │         let v18 : float = v17 * v6                                           │

00:00:30 #3317 [Verbose] > │         let v19 : float = v17 * v7                                           │

00:00:30 #3318 [Verbose] > │         let v20 : float = v17 * v8                                           │

00:00:30 #3319 [Verbose] > │         let v21 : float =  -v1                                               │

00:00:30 #3320 [Verbose] > │         let v22 : float = v21 * 9.80665                                      │

00:00:30 #3321 [Verbose] > │         let v23 : float = v22 * 0.0                                          │

00:00:30 #3322 [Verbose] > │         let v24 : float = v23 + v18                                          │

00:00:30 #3323 [Verbose] > │         let v25 : float = v23 + v19                                          │

00:00:30 #3324 [Verbose] > │         let v26 : float = v22 + v20                                          │

00:00:30 #3325 [Verbose] > │         let v27 : float = v24 / v1                                           │

00:00:30 #3326 [Verbose] > │         let v28 : float = v25 / v1                                           │

00:00:30 #3327 [Verbose] > │         let v29 : float = v26 / v1                                           │

00:00:30 #3328 [Verbose] > │         let v30 : float = 0.01 * v27                                         │

00:00:30 #3329 [Verbose] > │         let v31 : float = 0.01 * v28                                         │

00:00:30 #3330 [Verbose] > │         let v32 : float = 0.01 * v29                                         │

00:00:30 #3331 [Verbose] > │         let v33 : float = v6 + v30                                           │

00:00:30 #3332 [Verbose] > │         let v34 : float = v7 + v31                                           │

00:00:30 #3333 [Verbose] > │         let v35 : float = v8 + v32                                           │

00:00:30 #3334 [Verbose] > │         let v36 : float = v5 + 0.01                                          │

00:00:30 #3335 [Verbose] > │         let v37 : float = 0.01 * v33                                         │

00:00:30 #3336 [Verbose] > │         let v38 : float = 0.01 * v34                                         │

00:00:30 #3337 [Verbose] > │         let v39 : float = 0.01 * v35                                         │

00:00:30 #3338 [Verbose] > │         let v40 : float = v2 + v37                                           │

00:00:30 #3339 [Verbose] > │         let v41 : float = v3 + v38                                           │

00:00:30 #3340 [Verbose] > │         let v42 : float = v4 + v39                                           │

00:00:30 #3341 [Verbose] > │         let v43 : int32 = v9 - 1                                             │

00:00:30 #3342 [Verbose] > │         method3(v0, v1, v40, v41, v42, v36, v33, v34, v35, v43)              │

00:00:30 #3343 [Verbose] > │ and method4 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:30 #3344 [Verbose] > │     match v0 with                                                            │

00:00:30 #3345 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:30 #3346 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:30 #3347 [Verbose] > │         method4(v11, v12)                                                    │

00:00:30 #3348 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:30 #3349 [Verbose] > │         v1                                                                   │

00:00:30 #3350 [Verbose] > │ and method2 (v0 : float, v1 : float, v2 : UH0, v3 : int32) : UH0 =           │

00:00:30 #3351 [Verbose] > │     let v4 : float = 0.0                                                     │

00:00:30 #3352 [Verbose] > │     let v5 : float = 0.145                                                   │

00:00:30 #3353 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:30 #3354 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:30 #3355 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:30 #3356 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:30 #3357 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:30 #3358 [Verbose] > │     let struct (v11 : float, v12 : float, v13 : float, v14 : float, v15 :    │

00:00:30 #3359 [Verbose] > │ float, v16 : float, v17 : float, v18 : float, v19 : float) = method3(v4, v5, │

00:00:30 #3360 [Verbose] > │ v6, v7, v8, v9, v10, v0, v1, v3)                                             │

00:00:30 #3361 [Verbose] > │     let v20 : bool = v15 >= 0.0                                              │

00:00:30 #3362 [Verbose] > │     if v20 then                                                              │

00:00:30 #3363 [Verbose] > │         let v21 : UH0 = UH0_0(v11, v12, v13, v14, v15, v16, v17, v18, v19,   │

00:00:30 #3364 [Verbose] > │ v2)                                                                          │

00:00:30 #3365 [Verbose] > │         let v22 : int32 = v3 + 1                                             │

00:00:30 #3366 [Verbose] > │         method2(v0, v1, v21, v22)                                            │

00:00:30 #3367 [Verbose] > │     else                                                                     │

00:00:30 #3368 [Verbose] > │         let v24 : UH0 = UH0_1                                                │

00:00:30 #3369 [Verbose] > │         method4(v2, v24)                                                     │

00:00:30 #3370 [Verbose] > │ and method5 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:30 #3371 [Verbose] > │     match v0 with                                                            │

00:00:30 #3372 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:30 #3373 [Verbose] > │         let v12 : UH1 = method5(v11, v1)                                     │

00:00:30 #3374 [Verbose] > │         UH1_0(v5, v6, v12)                                                   │

00:00:30 #3375 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:30 #3376 [Verbose] > │         v1                                                                   │

00:00:30 #3377 [Verbose] > │ and method6 (v0 : UH1, v1 : float) : float =                                 │

00:00:30 #3378 [Verbose] > │     match v0 with                                                            │

00:00:30 #3379 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:30 #3380 [Verbose] > │         method6(v4, v2)                                                      │

00:00:30 #3381 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:30 #3382 [Verbose] > │         v1                                                                   │

00:00:30 #3383 [Verbose] > │ and method1 (v0 : float, v1 : float, v2 : float) : struct (float * float) =  │

00:00:30 #3384 [Verbose] > │     let v3 : bool = v0 > 60.0                                                │

00:00:30 #3385 [Verbose] > │     if v3 then                                                               │

00:00:30 #3386 [Verbose] > │         struct (v2, v1)                                                      │

00:00:30 #3387 [Verbose] > │     else                                                                     │

00:00:30 #3388 [Verbose] > │         let v4 : float = v0 * 3.141592653589793                              │

00:00:30 #3389 [Verbose] > │         let v5 : float = v4 / 180.0                                          │

00:00:30 #3390 [Verbose] > │         let v6 : float = cos v5                                              │

00:00:30 #3391 [Verbose] > │         let v7 : float = 45.0 * v6                                           │

00:00:30 #3392 [Verbose] > │         let v8 : float = sin v5                                              │

00:00:30 #3393 [Verbose] > │         let v9 : float = 45.0 * v8                                           │

00:00:30 #3394 [Verbose] > │         let v10 : UH0 = UH0_1                                                │

00:00:30 #3395 [Verbose] > │         let v11 : int32 = 0                                                  │

00:00:30 #3396 [Verbose] > │         let v12 : UH0 = method2(v7, v9, v10, v11)                            │

00:00:30 #3397 [Verbose] > │         let v13 : UH1 = UH1_1                                                │

00:00:30 #3398 [Verbose] > │         let v14 : UH1 = method5(v12, v13)                                    │

00:00:30 #3399 [Verbose] > │         let v15 : float = 0.0                                                │

00:00:30 #3400 [Verbose] > │         let v16 : float = method6(v14, v15)                                  │

00:00:30 #3401 [Verbose] > │         let v17 : float = v0 + 1.0                                           │

00:00:30 #3402 [Verbose] > │         let v18 : bool = v16 > v2                                            │

00:00:30 #3403 [Verbose] > │         let struct (v19 : float, v20 : float) =                              │

00:00:30 #3404 [Verbose] > │             if v18 then                                                      │

00:00:30 #3405 [Verbose] > │                 struct (v16, v0)                                             │

00:00:30 #3406 [Verbose] > │             else                                                             │

00:00:30 #3407 [Verbose] > │                 struct (v2, v1)                                              │

00:00:30 #3408 [Verbose] > │         method1(v17, v20, v19)                                               │

00:00:30 #3409 [Verbose] > │ and method0 () : unit =                                                      │

00:00:30 #3410 [Verbose] > │     let v0 : float = 30.0                                                    │

00:00:30 #3411 [Verbose] > │     let v1 : float = 0.0                                                     │

00:00:30 #3412 [Verbose] > │     let v2 : float = 30.0                                                    │

00:00:30 #3413 [Verbose] > │     let struct (v3 : float, v4 : float) = method1(v0, v2, v1)                │

00:00:30 #3414 [Verbose] > │     let v5 : bool = v3 = 116.77499158246208                                  │

00:00:30 #3415 [Verbose] > │     let v7 : bool =                                                          │

00:00:30 #3416 [Verbose] > │         if v5 then                                                           │

00:00:30 #3417 [Verbose] > │             let v6 : bool = v4 = 41.0                                        │

00:00:30 #3418 [Verbose] > │             v6                                                               │

00:00:30 #3419 [Verbose] > │         else                                                                 │

00:00:30 #3420 [Verbose] > │             false                                                            │

00:00:30 #3421 [Verbose] > │     let v8 : string = $"_equal / actual: %A{struct (v3, v4)} / expected:     │

00:00:30 #3422 [Verbose] > │ %A{struct (116.77499158246208, 41.0)}"                                       │

00:00:30 #3423 [Verbose] > │     let v9 : bool = v7 = false                                               │

00:00:30 #3424 [Verbose] > │     if v9 then                                                               │

00:00:30 #3425 [Verbose] > │         failwith<unit> v8                                                    │

00:00:30 #3426 [Verbose] > │ method0()                                                                    │

00:00:30 #3427 [Verbose] > │                                                                              │

00:00:30 #3428 [Verbose] > │                                                                              │

00:00:30 #3429 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #3430 [Verbose] >

00:00:30 #3431 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:30 #3432 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:30 #3433 [Verbose] > │ ## relativity_ps                                                             │

00:00:30 #3434 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #3435 [Verbose] >

00:00:30 #3436 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #3437 [Verbose] > inl relativity_ps fs (st : particle_state) =

00:00:30 #3438 [Verbose] >     inl f_net = fs |> listm.map (fun f => f st) |> sum_vec

00:00:30 #3439 [Verbose] >     inl c = 299792458

00:00:30 #3440 [Verbose] >     inl u = st.velocity ^/ c

00:00:30 #3441 [Verbose] >     inl acc = sqrt (1 - (u <.> u)) *^ (f_net ^-^ (f_net <.> u) *^ u) ^/ st.mass

00:00:30 #3442 [Verbose] >     d_particle_state {

00:00:30 #3443 [Verbose] >         dmdt = 0

00:00:30 #3444 [Verbose] >         dqdt = 0

00:00:30 #3445 [Verbose] >         dtdt = 1

00:00:30 #3446 [Verbose] >         drdt = st.velocity

00:00:30 #3447 [Verbose] >         dvdt = acc

00:00:30 #3448 [Verbose] >     }

00:00:30 #3449 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0272-7215-7ddc6ef676ab\main.spi

00:00:30 #3450 [Verbose] >

00:00:30 #3451 [Verbose] > ╭─[ 199.39ms - stdout ]────────────────────────────────────────────────────────╮

00:00:30 #3452 [Verbose] > │ ()                                                                           │

00:00:30 #3453 [Verbose] > │                                                                              │

00:00:30 #3454 [Verbose] > │                                                                              │

00:00:30 #3455 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:30 #3456 [Verbose] >

00:00:30 #3457 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:30 #3458 [Verbose] > // // test

00:00:30 #3459 [Verbose] >

00:00:30 #3460 [Verbose] > inl year = 365.25 * 24 * 60 * 60

00:00:30 #3461 [Verbose] > inl c = 299792458

00:00:30 #3462 [Verbose] > inl ~method = runge_kutta_4 100000

00:00:30 #3463 [Verbose] > inl forces = [[ fun _ => 10 *^ i_hat () ]]

00:00:30 #3464 [Verbose] > inl (particle_state default_particle_state') = default_particle_state ()

00:00:30 #3465 [Verbose] > inl initial_state =

00:00:30 #3466 [Verbose] >     particle_state { default_particle_state' with

00:00:30 #3467 [Verbose] >         mass = 1

00:00:30 #3468 [Verbose] >     }

00:00:30 #3469 [Verbose] >

00:00:30 #3470 [Verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state

00:00:30 #3471 [Verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state

00:00:30 #3472 [Verbose] >

00:00:30 #3473 [Verbose] > inl newton_x, newton_y =

00:00:30 #3474 [Verbose] >     newton_states

00:00:30 #3475 [Verbose] >     >> Some

00:00:30 #3476 [Verbose] >     |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)

00:00:30 #3477 [Verbose] >     |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)

00:00:30 #3478 [Verbose] >     |> listm'.unzip

00:00:30 #3479 [Verbose] >

00:00:30 #3480 [Verbose] > inl _, relativity_y =

00:00:30 #3481 [Verbose] >     relativity_states

00:00:30 #3482 [Verbose] >     >> Some

00:00:30 #3483 [Verbose] >     |> seq.take_while_ (fun (particle_state st) (_ : i32) => st.time <= year)

00:00:30 #3484 [Verbose] >     |> listm.map (fun (particle_state st) => st.time / year, st.velocity.x / c)

00:00:30 #3485 [Verbose] >     |> listm'.unzip

00:00:30 #3486 [Verbose] >

00:00:30 #3487 [Verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray

00:00:30 #3488 [Verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray

00:00:30 #3489 [Verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray

00:00:30 #3490 [Verbose] >

00:00:30 #3491 [Verbose] > "response to a constant force",

00:00:30 #3492 [Verbose] > "time (years)",

00:00:30 #3493 [Verbose] > "velocity (multiples of c)",

00:00:30 #3494 [Verbose] > ;[[

00:00:30 #3495 [Verbose] >     "newtonian", newton_x, newton_y

00:00:30 #3496 [Verbose] >     "relativistic", newton_x, relativity_y

00:00:30 #3497 [Verbose] > ]]

00:00:30 #3498 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0292-9229-9f7e670e62a1\main.spi

00:00:31 #3499 [Verbose] >

00:00:31 #3500 [Verbose] > ╭─[ 572.73ms - return value ]──────────────────────────────────────────────────╮

00:00:31 #3501 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:31 #3502 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:31 #3503 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:31 #3504 [Verbose] > │ stroke="none"/>                                                              │

00:00:31 #3505 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:31 #3506 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:31 #3507 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:31 #3508 [Verbose] > │ response to a constant force                                                 │

00:00:31 #3509 [Verbose] > │ </text>                                                                      │

00:00:31 #3510 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:31 #3511 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3512 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:31 #3513 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3514 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:31 #3515 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3516 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:31 #3517 [Verbose] > │ y2="75"/>                                                                    │

00:00:31 #3518 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1=...                   │

00:00:31 #3519 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #3520 [Verbose] >

00:00:31 #3521 [Verbose] > ╭─[ 585.51ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #3522 [Verbose] > │ type UH0 =                                                                   │

00:00:31 #3523 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:31 #3524 [Verbose] > │ * float * UH0                                                                │

00:00:31 #3525 [Verbose] > │     | UH0_1                                                                  │

00:00:31 #3526 [Verbose] > │ and UH1 =                                                                    │

00:00:31 #3527 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:31 #3528 [Verbose] > │     | UH1_1                                                                  │

00:00:31 #3529 [Verbose] > │ and UH2 =                                                                    │

00:00:31 #3530 [Verbose] > │     | UH2_0 of float * UH2                                                   │

00:00:31 #3531 [Verbose] > │     | UH2_1                                                                  │

00:00:31 #3532 [Verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float *      │

00:00:31 #3533 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:31 #3534 [Verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3  │

00:00:31 #3535 [Verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 :    │

00:00:31 #3536 [Verbose] > │ float) : struct (float * float * float * float * float * float * float *     │

00:00:31 #3537 [Verbose] > │ float * float) =                                                             │

00:00:31 #3538 [Verbose] > │     let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 :    │

00:00:31 #3539 [Verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1,  │

00:00:31 #3540 [Verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9)                                              │

00:00:31 #3541 [Verbose] > │     let v19 : float = v15 * 50000.0                                          │

00:00:31 #3542 [Verbose] > │     let v20 : float = v6 + v19                                               │

00:00:31 #3543 [Verbose] > │     let v21 : float = 50000.0 * v12                                          │

00:00:31 #3544 [Verbose] > │     let v22 : float = 50000.0 * v13                                          │

00:00:31 #3545 [Verbose] > │     let v23 : float = 50000.0 * v14                                          │

00:00:31 #3546 [Verbose] > │     let v24 : float = v3 + v21                                               │

00:00:31 #3547 [Verbose] > │     let v25 : float = v4 + v22                                               │

00:00:31 #3548 [Verbose] > │     let v26 : float = v5 + v23                                               │

00:00:31 #3549 [Verbose] > │     let v27 : float = 50000.0 * v16                                          │

00:00:31 #3550 [Verbose] > │     let v28 : float = 50000.0 * v17                                          │

00:00:31 #3551 [Verbose] > │     let v29 : float = 50000.0 * v18                                          │

00:00:31 #3552 [Verbose] > │     let v30 : float = v7 + v27                                               │

00:00:31 #3553 [Verbose] > │     let v31 : float = v8 + v28                                               │

00:00:31 #3554 [Verbose] > │     let v32 : float = v9 + v29                                               │

00:00:31 #3555 [Verbose] > │     let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 :    │

00:00:31 #3556 [Verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1,  │

00:00:31 #3557 [Verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32)                                       │

00:00:31 #3558 [Verbose] > │     let v42 : float = v38 * 50000.0                                          │

00:00:31 #3559 [Verbose] > │     let v43 : float = v6 + v42                                               │

00:00:31 #3560 [Verbose] > │     let v44 : float = 50000.0 * v35                                          │

00:00:31 #3561 [Verbose] > │     let v45 : float = 50000.0 * v36                                          │

00:00:31 #3562 [Verbose] > │     let v46 : float = 50000.0 * v37                                          │

00:00:31 #3563 [Verbose] > │     let v47 : float = v3 + v44                                               │

00:00:31 #3564 [Verbose] > │     let v48 : float = v4 + v45                                               │

00:00:31 #3565 [Verbose] > │     let v49 : float = v5 + v46                                               │

00:00:31 #3566 [Verbose] > │     let v50 : float = 50000.0 * v39                                          │

00:00:31 #3567 [Verbose] > │     let v51 : float = 50000.0 * v40                                          │

00:00:31 #3568 [Verbose] > │     let v52 : float = 50000.0 * v41                                          │

00:00:31 #3569 [Verbose] > │     let v53 : float = v7 + v50                                               │

00:00:31 #3570 [Verbose] > │     let v54 : float = v8 + v51                                               │

00:00:31 #3571 [Verbose] > │     let v55 : float = v9 + v52                                               │

00:00:31 #3572 [Verbose] > │     let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 :    │

00:00:31 #3573 [Verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1,  │

00:00:31 #3574 [Verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55)                                       │

00:00:31 #3575 [Verbose] > │     let v65 : float = v61 * 100000.0                                         │

00:00:31 #3576 [Verbose] > │     let v66 : float = v6 + v65                                               │

00:00:31 #3577 [Verbose] > │     let v67 : float = 100000.0 * v58                                         │

00:00:31 #3578 [Verbose] > │     let v68 : float = 100000.0 * v59                                         │

00:00:31 #3579 [Verbose] > │     let v69 : float = 100000.0 * v60                                         │

00:00:31 #3580 [Verbose] > │     let v70 : float = v3 + v67                                               │

00:00:31 #3581 [Verbose] > │     let v71 : float = v4 + v68                                               │

00:00:31 #3582 [Verbose] > │     let v72 : float = v5 + v69                                               │

00:00:31 #3583 [Verbose] > │     let v73 : float = 100000.0 * v62                                         │

00:00:31 #3584 [Verbose] > │     let v74 : float = 100000.0 * v63                                         │

00:00:31 #3585 [Verbose] > │     let v75 : float = 100000.0 * v64                                         │

00:00:31 #3586 [Verbose] > │     let v76 : float = v7 + v73                                               │

00:00:31 #3587 [Verbose] > │     let v77 : float = v8 + v74                                               │

00:00:31 #3588 [Verbose] > │     let v78 : float = v9 + v75                                               │

00:00:31 #3589 [Verbose] > │     let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 :    │

00:00:31 #3590 [Verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1,  │

00:00:31 #3591 [Verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78)                                       │

00:00:31 #3592 [Verbose] > │     let v88 : float = v10 + v33                                              │

00:00:31 #3593 [Verbose] > │     let v89 : float = v11 + v34                                              │

00:00:31 #3594 [Verbose] > │     let v90 : float = v15 + v38                                              │

00:00:31 #3595 [Verbose] > │     let v91 : float = v12 + v35                                              │

00:00:31 #3596 [Verbose] > │     let v92 : float = v13 + v36                                              │

00:00:31 #3597 [Verbose] > │     let v93 : float = v14 + v37                                              │

00:00:31 #3598 [Verbose] > │     let v94 : float = v16 + v39                                              │

00:00:31 #3599 [Verbose] > │     let v95 : float = v17 + v40                                              │

00:00:31 #3600 [Verbose] > │     let v96 : float = v18 + v41                                              │

00:00:31 #3601 [Verbose] > │     let v97 : float = v88 + v33                                              │

00:00:31 #3602 [Verbose] > │     let v98 : float = v89 + v34                                              │

00:00:31 #3603 [Verbose] > │     let v99 : float = v90 + v38                                              │

00:00:31 #3604 [Verbose] > │     let v100 : float = v91 + v35                                             │

00:00:31 #3605 [Verbose] > │     let v101 : float = v92 + v36                                             │

00:00:31 #3606 [Verbose] > │     let v102 : float = v93 + v37                                             │

00:00:31 #3607 [Verbose] > │     let v103 : float = v94 + v39                                             │

00:00:31 #3608 [Verbose] > │     let v104 : float = v95 + v40                                             │

00:00:31 #3609 [Verbose] > │     let v105 : float = v96 + v41                                             │

00:00:31 #3610 [Verbose] > │     let v106 : float = v97 + v56                                             │

00:00:31 #3611 [Verbose] > │     let v107 : float = v98 + v57                                             │

00:00:31 #3612 [Verbose] > │     let v108 : float = v99 + v61                                             │

00:00:31 #3613 [Verbose] > │     let v109 : float = v100 + v58                                            │

00:00:31 #3614 [Verbose] > │     let v110 : float = v101 + v59                                            │

00:00:31 #3615 [Verbose] > │     let v111 : float = v102 + v60                                            │

00:00:31 #3616 [Verbose] > │     let v112 : float = v103 + v62                                            │

00:00:31 #3617 [Verbose] > │     let v113 : float = v104 + v63                                            │

00:00:31 #3618 [Verbose] > │     let v114 : float = v105 + v64                                            │

00:00:31 #3619 [Verbose] > │     let v115 : float = v106 + v56                                            │

00:00:31 #3620 [Verbose] > │     let v116 : float = v107 + v57                                            │

00:00:31 #3621 [Verbose] > │     let v117 : float = v108 + v61                                            │

00:00:31 #3622 [Verbose] > │     let v118 : float = v109 + v58                                            │

00:00:31 #3623 [Verbose] > │     let v119 : float = v110 + v59                                            │

00:00:31 #3624 [Verbose] > │     let v120 : float = v111 + v60                                            │

00:00:31 #3625 [Verbose] > │     let v121 : float = v112 + v62                                            │

00:00:31 #3626 [Verbose] > │     let v122 : float = v113 + v63                                            │

00:00:31 #3627 [Verbose] > │     let v123 : float = v114 + v64                                            │

00:00:31 #3628 [Verbose] > │     let v124 : float = v115 + v79                                            │

00:00:31 #3629 [Verbose] > │     let v125 : float = v116 + v80                                            │

00:00:31 #3630 [Verbose] > │     let v126 : float = v117 + v84                                            │

00:00:31 #3631 [Verbose] > │     let v127 : float = v118 + v81                                            │

00:00:31 #3632 [Verbose] > │     let v128 : float = v119 + v82                                            │

00:00:31 #3633 [Verbose] > │     let v129 : float = v120 + v83                                            │

00:00:31 #3634 [Verbose] > │     let v130 : float = v121 + v85                                            │

00:00:31 #3635 [Verbose] > │     let v131 : float = v122 + v86                                            │

00:00:31 #3636 [Verbose] > │     let v132 : float = v123 + v87                                            │

00:00:31 #3637 [Verbose] > │     let v133 : float = v126 * 16666.666666666668                             │

00:00:31 #3638 [Verbose] > │     let v134 : float = v6 + v133                                             │

00:00:31 #3639 [Verbose] > │     let v135 : float = 16666.666666666668 * v127                             │

00:00:31 #3640 [Verbose] > │     let v136 : float = 16666.666666666668 * v128                             │

00:00:31 #3641 [Verbose] > │     let v137 : float = 16666.666666666668 * v129                             │

00:00:31 #3642 [Verbose] > │     let v138 : float = v3 + v135                                             │

00:00:31 #3643 [Verbose] > │     let v139 : float = v4 + v136                                             │

00:00:31 #3644 [Verbose] > │     let v140 : float = v5 + v137                                             │

00:00:31 #3645 [Verbose] > │     let v141 : float = 16666.666666666668 * v130                             │

00:00:31 #3646 [Verbose] > │     let v142 : float = 16666.666666666668 * v131                             │

00:00:31 #3647 [Verbose] > │     let v143 : float = 16666.666666666668 * v132                             │

00:00:31 #3648 [Verbose] > │     let v144 : float = v7 + v141                                             │

00:00:31 #3649 [Verbose] > │     let v145 : float = v8 + v142                                             │

00:00:31 #3650 [Verbose] > │     let v146 : float = v9 + v143                                             │

00:00:31 #3651 [Verbose] > │     struct (v1, v2, v138, v139, v140, v134, v144, v145, v146)                │

00:00:31 #3652 [Verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │

00:00:31 #3653 [Verbose] > │ * float * float * float) -> struct (float * float * float * float * float *  │

00:00:31 #3654 [Verbose] > │ float * float * float * float))) : (struct (float * float * float * float *  │

00:00:31 #3655 [Verbose] > │ float * float * float * float * float) -> struct (float * float * float *    │

00:00:31 #3656 [Verbose] > │ float * float * float * float * float * float)) =                            │

00:00:31 #3657 [Verbose] > │     closure1(v0)                                                             │

00:00:31 #3658 [Verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:31 #3659 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:31 #3660 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:31 #3661 [Verbose] > │     let v9 : float = 10.0 / v1                                               │

00:00:31 #3662 [Verbose] > │     let v10 : float = 0.0 / v1                                               │

00:00:31 #3663 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v9, v10, v10)                         │

00:00:31 #3664 [Verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:31 #3665 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:31 #3666 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:31 #3667 [Verbose] > │     let v9 : float = v6 / 299792458.0                                        │

00:00:31 #3668 [Verbose] > │     let v10 : float = v7 / 299792458.0                                       │

00:00:31 #3669 [Verbose] > │     let v11 : float = v8 / 299792458.0                                       │

00:00:31 #3670 [Verbose] > │     let v12 : float = v9 * v9                                                │

00:00:31 #3671 [Verbose] > │     let v13 : float = v10 * v10                                              │

00:00:31 #3672 [Verbose] > │     let v14 : float = v12 + v13                                              │

00:00:31 #3673 [Verbose] > │     let v15 : float = v11 * v11                                              │

00:00:31 #3674 [Verbose] > │     let v16 : float = v14 + v15                                              │

00:00:31 #3675 [Verbose] > │     let v17 : float = 1.0 - v16                                              │

00:00:31 #3676 [Verbose] > │     let v18 : float = sqrt v17                                               │

00:00:31 #3677 [Verbose] > │     let v19 : float = 10.0 * v9                                              │

00:00:31 #3678 [Verbose] > │     let v20 : float = 0.0 * v10                                              │

00:00:31 #3679 [Verbose] > │     let v21 : float = v19 + v20                                              │

00:00:31 #3680 [Verbose] > │     let v22 : float = 0.0 * v11                                              │

00:00:31 #3681 [Verbose] > │     let v23 : float = v21 + v22                                              │

00:00:31 #3682 [Verbose] > │     let v24 : float = v23 * v9                                               │

00:00:31 #3683 [Verbose] > │     let v25 : float = v23 * v10                                              │

00:00:31 #3684 [Verbose] > │     let v26 : float = v23 * v11                                              │

00:00:31 #3685 [Verbose] > │     let v27 : float = -1.0 * v24                                             │

00:00:31 #3686 [Verbose] > │     let v28 : float = -1.0 * v25                                             │

00:00:31 #3687 [Verbose] > │     let v29 : float = -1.0 * v26                                             │

00:00:31 #3688 [Verbose] > │     let v30 : float = 10.0 + v27                                             │

00:00:31 #3689 [Verbose] > │     let v31 : float = v18 * v30                                              │

00:00:31 #3690 [Verbose] > │     let v32 : float = v18 * v28                                              │

00:00:31 #3691 [Verbose] > │     let v33 : float = v18 * v29                                              │

00:00:31 #3692 [Verbose] > │     let v34 : float = v31 / v1                                               │

00:00:31 #3693 [Verbose] > │     let v35 : float = v32 / v1                                               │

00:00:31 #3694 [Verbose] > │     let v36 : float = v33 / v1                                               │

00:00:31 #3695 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v34, v35, v36)                        │

00:00:31 #3696 [Verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float *   │

00:00:31 #3697 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:31 #3698 [Verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 :    │

00:00:31 #3699 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 :     │

00:00:31 #3700 [Verbose] > │ int32) : struct (float * float * float * float * float * float * float *     │

00:00:31 #3701 [Verbose] > │ float * float) =                                                             │

00:00:31 #3702 [Verbose] > │     let v11 : bool = v10 <= 0                                                │

00:00:31 #3703 [Verbose] > │     if v11 then                                                              │

00:00:31 #3704 [Verbose] > │         struct (v1, v2, v3, v4, v5, v6, v7, v8, v9)                          │

00:00:31 #3705 [Verbose] > │     else                                                                     │

00:00:31 #3706 [Verbose] > │         let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:31 #3707 [Verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct     │

00:00:31 #3708 [Verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9)                                         │

00:00:31 #3709 [Verbose] > │         let v21 : int32 = v10 - 1                                            │

00:00:31 #3710 [Verbose] > │         method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21)        │

00:00:31 #3711 [Verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:31 #3712 [Verbose] > │     match v0 with                                                            │

00:00:31 #3713 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:31 #3714 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:31 #3715 [Verbose] > │         method3(v11, v12)                                                    │

00:00:31 #3716 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:31 #3717 [Verbose] > │         v1                                                                   │

00:00:31 #3718 [Verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float *   │

00:00:31 #3719 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:31 #3720 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:31 #3721 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:31 #3722 [Verbose] > │     let v4 : float = 1.0                                                     │

00:00:31 #3723 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:31 #3724 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:31 #3725 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:31 #3726 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:31 #3727 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:31 #3728 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:31 #3729 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:31 #3730 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:31 #3731 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:31 #3732 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:31 #3733 [Verbose] > │     let v21 : bool = v17 <= 31557600.0                                       │

00:00:31 #3734 [Verbose] > │     if v21 then                                                              │

00:00:31 #3735 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:31 #3736 [Verbose] > │ v1)                                                                          │

00:00:31 #3737 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:31 #3738 [Verbose] > │         method1(v0, v22, v23)                                                │

00:00:31 #3739 [Verbose] > │     else                                                                     │

00:00:31 #3740 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:31 #3741 [Verbose] > │         method3(v1, v25)                                                     │

00:00:31 #3742 [Verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:31 #3743 [Verbose] > │     match v0 with                                                            │

00:00:31 #3744 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:31 #3745 [Verbose] > │         let v12 : UH1 = method4(v11, v1)                                     │

00:00:31 #3746 [Verbose] > │         let v13 : float = v7 / 31557600.0                                    │

00:00:31 #3747 [Verbose] > │         let v14 : float = v8 / 299792458.0                                   │

00:00:31 #3748 [Verbose] > │         UH1_0(v13, v14, v12)                                                 │

00:00:31 #3749 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:31 #3750 [Verbose] > │         v1                                                                   │

00:00:31 #3751 [Verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) =            │

00:00:31 #3752 [Verbose] > │     match v0 with                                                            │

00:00:31 #3753 [Verbose] > │     | UH1_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:31 #3754 [Verbose] > │         let v6 : UH2 = UH2_0(v3, v1)                                         │

00:00:31 #3755 [Verbose] > │         let v7 : UH2 = UH2_0(v4, v2)                                         │

00:00:31 #3756 [Verbose] > │         method5(v5, v6, v7)                                                  │

00:00:31 #3757 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:31 #3758 [Verbose] > │         struct (v1, v2)                                                      │

00:00:31 #3759 [Verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:31 #3760 [Verbose] > │     match v0 with                                                            │

00:00:31 #3761 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:31 #3762 [Verbose] > │         let v4 : UH2 = UH2_0(v2, v1)                                         │

00:00:31 #3763 [Verbose] > │         method6(v3, v4)                                                      │

00:00:31 #3764 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:31 #3765 [Verbose] > │         v1                                                                   │

00:00:31 #3766 [Verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float *   │

00:00:31 #3767 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:31 #3768 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:31 #3769 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:31 #3770 [Verbose] > │     let v4 : float = 1.0                                                     │

00:00:31 #3771 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:31 #3772 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:31 #3773 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:31 #3774 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:31 #3775 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:31 #3776 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:31 #3777 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:31 #3778 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:31 #3779 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:31 #3780 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:31 #3781 [Verbose] > │     let v21 : bool = v17 <= 31557600.0                                       │

00:00:31 #3782 [Verbose] > │     if v21 then                                                              │

00:00:31 #3783 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:31 #3784 [Verbose] > │ v1)                                                                          │

00:00:31 #3785 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:31 #3786 [Verbose] > │         method7(v0, v22, v23)                                                │

00:00:31 #3787 [Verbose] > │     else                                                                     │

00:00:31 #3788 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:31 #3789 [Verbose] > │         method3(v1, v25)                                                     │

00:00:31 #3790 [Verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:31 #3791 [Verbose] > │     match v0 with                                                            │

00:00:31 #3792 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:31 #3793 [Verbose] > │         let v12 : UH1 = method8(v11, v1)                                     │

00:00:31 #3794 [Verbose] > │         let v13 : float = v7 / 31557600.0                                    │

00:00:31 #3795 [Verbose] > │         let v14 : float = v8 / 299792458.0                                   │

00:00:31 #3796 [Verbose] > │         UH1_0(v13, v14, v12)                                                 │

00:00:31 #3797 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:31 #3798 [Verbose] > │         v1                                                                   │

00:00:31 #3799 [Verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:31 #3800 [Verbose] > │     match v0 with                                                            │

00:00:31 #3801 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:31 #3802 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:31 #3803 [Verbose] > │         method10(v3, v4)                                                     │

00:00:31 #3804 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:31 #3805 [Verbose] > │         v1                                                                   │

00:00:31 #3806 [Verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 =               │

00:00:31 #3807 [Verbose] > │     match v1 with                                                            │

00:00:31 #3808 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:31 #3809 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:31 #3810 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:31 #3811 [Verbose] > │         method11(v0, v4, v5)                                                 │

00:00:31 #3812 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:31 #3813 [Verbose] > │         v2                                                                   │

00:00:31 #3814 [Verbose] > │ and method9 (v0 : UH2) : (float []) =                                        │

00:00:31 #3815 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:31 #3816 [Verbose] > │     let v2 : int32 = method10(v0, v1)                                        │

00:00:31 #3817 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:31 #3818 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:31 #3819 [Verbose] > │     let v5 : int32 = method11(v3, v0, v4)                                    │

00:00:31 #3820 [Verbose] > │     v3                                                                       │

00:00:31 #3821 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:31 #3822 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:31 #3823 [Verbose] > │     let v0 : ((struct (float * float * float * float * float * float * float │

00:00:31 #3824 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:31 #3825 [Verbose] > │ float * float * float)) -> (struct (float * float * float * float * float *  │

00:00:31 #3826 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:31 #3827 [Verbose] > │ float * float * float * float * float))) = closure0()                        │

00:00:31 #3828 [Verbose] > │     let v1 : (struct (float * float * float * float * float * float * float  │

00:00:31 #3829 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:31 #3830 [Verbose] > │ float * float * float)) = closure2()                                         │

00:00:31 #3831 [Verbose] > │     let v2 : (struct (float * float * float * float * float * float * float  │

00:00:31 #3832 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:31 #3833 [Verbose] > │ float * float * float)) = v0 v1                                              │

00:00:31 #3834 [Verbose] > │     let v3 : (struct (float * float * float * float * float * float * float  │

00:00:31 #3835 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:31 #3836 [Verbose] > │ float * float * float)) = closure3()                                         │

00:00:31 #3837 [Verbose] > │     let v4 : (struct (float * float * float * float * float * float * float  │

00:00:31 #3838 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:31 #3839 [Verbose] > │ float * float * float)) = v0 v3                                              │

00:00:31 #3840 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:31 #3841 [Verbose] > │     let v6 : int32 = 0                                                       │

00:00:31 #3842 [Verbose] > │     let v7 : UH0 = method1(v2, v5, v6)                                       │

00:00:31 #3843 [Verbose] > │     let v8 : UH1 = UH1_1                                                     │

00:00:31 #3844 [Verbose] > │     let v9 : UH1 = method4(v7, v8)                                           │

00:00:31 #3845 [Verbose] > │     let v10 : UH2 = UH2_1                                                    │

00:00:31 #3846 [Verbose] > │     let v11 : UH2 = UH2_1                                                    │

00:00:31 #3847 [Verbose] > │     let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11)                │

00:00:31 #3848 [Verbose] > │     let v14 : UH2 = UH2_1                                                    │

00:00:31 #3849 [Verbose] > │     let v15 : UH2 = method6(v12, v14)                                        │

00:00:31 #3850 [Verbose] > │     let v16 : UH2 = UH2_1                                                    │

00:00:31 #3851 [Verbose] > │     let v17 : UH2 = method6(v13, v16)                                        │

00:00:31 #3852 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:31 #3853 [Verbose] > │     let v19 : int32 = 0                                                      │

00:00:31 #3854 [Verbose] > │     let v20 : UH0 = method7(v4, v18, v19)                                    │

00:00:31 #3855 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:31 #3856 [Verbose] > │     let v22 : UH1 = method8(v20, v21)                                        │

00:00:31 #3857 [Verbose] > │     let v23 : UH2 = UH2_1                                                    │

00:00:31 #3858 [Verbose] > │     let v24 : UH2 = UH2_1                                                    │

00:00:31 #3859 [Verbose] > │     let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24)               │

00:00:31 #3860 [Verbose] > │     let v27 : UH2 = UH2_1                                                    │

00:00:31 #3861 [Verbose] > │     let v28 : UH2 = method6(v25, v27)                                        │

00:00:31 #3862 [Verbose] > │     let v29 : UH2 = UH2_1                                                    │

00:00:31 #3863 [Verbose] > │     let v30 : UH2 = method6(v26, v29)                                        │

00:00:31 #3864 [Verbose] > │     let v31 : (float []) = method9(v15)                                      │

00:00:31 #3865 [Verbose] > │     let v32 : (float []) = method9(v17)                                      │

00:00:31 #3866 [Verbose] > │     let v33 : (float []) = method9(v30)                                      │

00:00:31 #3867 [Verbose] > │     let v34 : string = "newtonian"                                           │

00:00:31 #3868 [Verbose] > │     let v35 : string = "relativistic"                                        │

00:00:31 #3869 [Verbose] > │     let v36 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:31 #3870 [Verbose] > │ (v34, v31, v32); struct (v35, v31, v33)|]                                    │

00:00:31 #3871 [Verbose] > │     let v37 : string = "response to a constant force"                        │

00:00:31 #3872 [Verbose] > │     let v38 : string = "time (years)"                                        │

00:00:31 #3873 [Verbose] > │     let v39 : string = "velocity (multiples of c)"                           │

00:00:31 #3874 [Verbose] > │     struct (v37, v38, v39, v36)                                              │

00:00:31 #3875 [Verbose] > │ method0()                                                                    │

00:00:31 #3876 [Verbose] > │                                                                              │

00:00:31 #3877 [Verbose] > │                                                                              │

00:00:31 #3878 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #3879 [Verbose] >

00:00:31 #3880 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:31 #3881 [Verbose] > inl uniform_lorentz_force v_e v_b (st : particle_state) =

00:00:31 #3882 [Verbose] >     st.charge *^ (v_e ^+^ st.velocity >< v_b)

00:00:31 #3883 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0363-6300-620c2f23a352\main.spi

00:00:31 #3884 [Verbose] >

00:00:31 #3885 [Verbose] > ╭─[ 153.73ms - stdout ]────────────────────────────────────────────────────────╮

00:00:31 #3886 [Verbose] > │ ()                                                                           │

00:00:31 #3887 [Verbose] > │                                                                              │

00:00:31 #3888 [Verbose] > │                                                                              │

00:00:31 #3889 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:31 #3890 [Verbose] >

00:00:31 #3891 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:31 #3892 [Verbose] > // // test

00:00:31 #3893 [Verbose] >

00:00:31 #3894 [Verbose] > inl c : f64 = 299792458

00:00:31 #3895 [Verbose] > inl ~method = runge_kutta_4 0.000000001

00:00:31 #3896 [Verbose] > inl forces = [[ uniform_lorentz_force (zero_vec ()) (k_hat ()) ]]

00:00:31 #3897 [Verbose] > inl (particle_state default_particle_state') = default_particle_state ()

00:00:31 #3898 [Verbose] > inl initial_state =

00:00:31 #3899 [Verbose] >     particle_state { default_particle_state' with

00:00:31 #3900 [Verbose] >         mass = 0.000000000000000000000000001672621898

00:00:31 #3901 [Verbose] >         charge = 0.0000000000000000001602176621

00:00:31 #3902 [Verbose] >         velocity = 0.8 *^ (c *^ j_hat ())

00:00:31 #3903 [Verbose] >     }

00:00:31 #3904 [Verbose] >

00:00:31 #3905 [Verbose] > inl newton_states = solver_ method (newton_second_ps forces) initial_state

00:00:31 #3906 [Verbose] > inl relativity_states = solver_ method (relativity_ps forces) initial_state

00:00:31 #3907 [Verbose] >

00:00:31 #3908 [Verbose] > inl newton_x, newton_y =

00:00:31 #3909 [Verbose] >     newton_states

00:00:31 #3910 [Verbose] >     >> Some

00:00:31 #3911 [Verbose] >     |> seq.take_while_ (fun (particle_state st) i => i < 100i32)

00:00:31 #3912 [Verbose] >     |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)

00:00:31 #3913 [Verbose] >     |> listm'.unzip

00:00:31 #3914 [Verbose] >

00:00:31 #3915 [Verbose] > inl relativity_x, relativity_y =

00:00:31 #3916 [Verbose] >     relativity_states

00:00:31 #3917 [Verbose] >     >> Some

00:00:31 #3918 [Verbose] >     |> seq.take_while_ (fun (particle_state st) i => i < 165i32)

00:00:31 #3919 [Verbose] >     |> listm.map (fun (particle_state st) => st.pos_vec.x, st.pos_vec.y)

00:00:31 #3920 [Verbose] >     |> listm'.unzip

00:00:31 #3921 [Verbose] >

00:00:31 #3922 [Verbose] > inl newton_x : a i32 _ = newton_x |> listm.toArray

00:00:31 #3923 [Verbose] > inl newton_y : a i32 _ = newton_y |> listm.toArray

00:00:31 #3924 [Verbose] >

00:00:31 #3925 [Verbose] > inl relativity_x : a i32 _ = relativity_x |> listm.toArray

00:00:31 #3926 [Verbose] > inl relativity_y : a i32 _ = relativity_y |> listm.toArray

00:00:31 #3927 [Verbose] >

00:00:31 #3928 [Verbose] > "proton in a 1-t magnetic field",

00:00:31 #3929 [Verbose] > "x (m)",

00:00:31 #3930 [Verbose] > "y (m)",

00:00:31 #3931 [Verbose] > ;[[

00:00:31 #3932 [Verbose] >     "newtonian", newton_x, newton_y

00:00:31 #3933 [Verbose] >     "relativistic", relativity_x, relativity_y

00:00:31 #3934 [Verbose] > ]]

00:00:31 #3935 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0378-7849-7e746c2d4d9b\main.spi

00:00:32 #3936 [Verbose] >

00:00:32 #3937 [Verbose] > ╭─[ 515.23ms - return value ]──────────────────────────────────────────────────╮

00:00:32 #3938 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:32 #3939 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:32 #3940 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:32 #3941 [Verbose] > │ stroke="none"/>                                                              │

00:00:32 #3942 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:32 #3943 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:32 #3944 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:32 #3945 [Verbose] > │ proton in a 1-t magnetic field                                               │

00:00:32 #3946 [Verbose] > │ </text>                                                                      │

00:00:32 #3947 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="58" y1="424" x2="58" │

00:00:32 #3948 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3949 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:32 #3950 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3951 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="81" y1="424" x2="81" │

00:00:32 #3952 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3953 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="93" y1="424" x2="93" │

00:00:32 #3954 [Verbose] > │ y2="75"/>                                                                    │

00:00:32 #3955 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x...                     │

00:00:32 #3956 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #3957 [Verbose] >

00:00:32 #3958 [Verbose] > ╭─[ 531.24ms - stdout ]────────────────────────────────────────────────────────╮

00:00:32 #3959 [Verbose] > │ type UH0 =                                                                   │

00:00:32 #3960 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:32 #3961 [Verbose] > │ * float * UH0                                                                │

00:00:32 #3962 [Verbose] > │     | UH0_1                                                                  │

00:00:32 #3963 [Verbose] > │ and UH1 =                                                                    │

00:00:32 #3964 [Verbose] > │     | UH1_0 of float * float * UH1                                           │

00:00:32 #3965 [Verbose] > │     | UH1_1                                                                  │

00:00:32 #3966 [Verbose] > │ and UH2 =                                                                    │

00:00:32 #3967 [Verbose] > │     | UH2_0 of float * UH2                                                   │

00:00:32 #3968 [Verbose] > │     | UH2_1                                                                  │

00:00:32 #3969 [Verbose] > │ let rec closure1 (v0 : (struct (float * float * float * float * float *      │

00:00:32 #3970 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:32 #3971 [Verbose] > │ float * float * float * float * float))) struct (v1 : float, v2 : float, v3  │

00:00:32 #3972 [Verbose] > │ : float, v4 : float, v5 : float, v6 : float, v7 : float, v8 : float, v9 :    │

00:00:32 #3973 [Verbose] > │ float) : struct (float * float * float * float * float * float * float *     │

00:00:32 #3974 [Verbose] > │ float * float) =                                                             │

00:00:32 #3975 [Verbose] > │     let struct (v10 : float, v11 : float, v12 : float, v13 : float, v14 :    │

00:00:32 #3976 [Verbose] > │ float, v15 : float, v16 : float, v17 : float, v18 : float) = v0 struct (v1,  │

00:00:32 #3977 [Verbose] > │ v2, v3, v4, v5, v6, v7, v8, v9)                                              │

00:00:32 #3978 [Verbose] > │     let v19 : float = v15 * 5E-10                                            │

00:00:32 #3979 [Verbose] > │     let v20 : float = v6 + v19                                               │

00:00:32 #3980 [Verbose] > │     let v21 : float = 5E-10 * v12                                            │

00:00:32 #3981 [Verbose] > │     let v22 : float = 5E-10 * v13                                            │

00:00:32 #3982 [Verbose] > │     let v23 : float = 5E-10 * v14                                            │

00:00:32 #3983 [Verbose] > │     let v24 : float = v3 + v21                                               │

00:00:32 #3984 [Verbose] > │     let v25 : float = v4 + v22                                               │

00:00:32 #3985 [Verbose] > │     let v26 : float = v5 + v23                                               │

00:00:32 #3986 [Verbose] > │     let v27 : float = 5E-10 * v16                                            │

00:00:32 #3987 [Verbose] > │     let v28 : float = 5E-10 * v17                                            │

00:00:32 #3988 [Verbose] > │     let v29 : float = 5E-10 * v18                                            │

00:00:32 #3989 [Verbose] > │     let v30 : float = v7 + v27                                               │

00:00:32 #3990 [Verbose] > │     let v31 : float = v8 + v28                                               │

00:00:32 #3991 [Verbose] > │     let v32 : float = v9 + v29                                               │

00:00:32 #3992 [Verbose] > │     let struct (v33 : float, v34 : float, v35 : float, v36 : float, v37 :    │

00:00:32 #3993 [Verbose] > │ float, v38 : float, v39 : float, v40 : float, v41 : float) = v0 struct (v1,  │

00:00:32 #3994 [Verbose] > │ v2, v24, v25, v26, v20, v30, v31, v32)                                       │

00:00:32 #3995 [Verbose] > │     let v42 : float = v38 * 5E-10                                            │

00:00:32 #3996 [Verbose] > │     let v43 : float = v6 + v42                                               │

00:00:32 #3997 [Verbose] > │     let v44 : float = 5E-10 * v35                                            │

00:00:32 #3998 [Verbose] > │     let v45 : float = 5E-10 * v36                                            │

00:00:32 #3999 [Verbose] > │     let v46 : float = 5E-10 * v37                                            │

00:00:32 #4000 [Verbose] > │     let v47 : float = v3 + v44                                               │

00:00:32 #4001 [Verbose] > │     let v48 : float = v4 + v45                                               │

00:00:32 #4002 [Verbose] > │     let v49 : float = v5 + v46                                               │

00:00:32 #4003 [Verbose] > │     let v50 : float = 5E-10 * v39                                            │

00:00:32 #4004 [Verbose] > │     let v51 : float = 5E-10 * v40                                            │

00:00:32 #4005 [Verbose] > │     let v52 : float = 5E-10 * v41                                            │

00:00:32 #4006 [Verbose] > │     let v53 : float = v7 + v50                                               │

00:00:32 #4007 [Verbose] > │     let v54 : float = v8 + v51                                               │

00:00:32 #4008 [Verbose] > │     let v55 : float = v9 + v52                                               │

00:00:32 #4009 [Verbose] > │     let struct (v56 : float, v57 : float, v58 : float, v59 : float, v60 :    │

00:00:32 #4010 [Verbose] > │ float, v61 : float, v62 : float, v63 : float, v64 : float) = v0 struct (v1,  │

00:00:32 #4011 [Verbose] > │ v2, v47, v48, v49, v43, v53, v54, v55)                                       │

00:00:32 #4012 [Verbose] > │     let v65 : float = v61 * 1E-09                                            │

00:00:32 #4013 [Verbose] > │     let v66 : float = v6 + v65                                               │

00:00:32 #4014 [Verbose] > │     let v67 : float = 1E-09 * v58                                            │

00:00:32 #4015 [Verbose] > │     let v68 : float = 1E-09 * v59                                            │

00:00:32 #4016 [Verbose] > │     let v69 : float = 1E-09 * v60                                            │

00:00:32 #4017 [Verbose] > │     let v70 : float = v3 + v67                                               │

00:00:32 #4018 [Verbose] > │     let v71 : float = v4 + v68                                               │

00:00:32 #4019 [Verbose] > │     let v72 : float = v5 + v69                                               │

00:00:32 #4020 [Verbose] > │     let v73 : float = 1E-09 * v62                                            │

00:00:32 #4021 [Verbose] > │     let v74 : float = 1E-09 * v63                                            │

00:00:32 #4022 [Verbose] > │     let v75 : float = 1E-09 * v64                                            │

00:00:32 #4023 [Verbose] > │     let v76 : float = v7 + v73                                               │

00:00:32 #4024 [Verbose] > │     let v77 : float = v8 + v74                                               │

00:00:32 #4025 [Verbose] > │     let v78 : float = v9 + v75                                               │

00:00:32 #4026 [Verbose] > │     let struct (v79 : float, v80 : float, v81 : float, v82 : float, v83 :    │

00:00:32 #4027 [Verbose] > │ float, v84 : float, v85 : float, v86 : float, v87 : float) = v0 struct (v1,  │

00:00:32 #4028 [Verbose] > │ v2, v70, v71, v72, v66, v76, v77, v78)                                       │

00:00:32 #4029 [Verbose] > │     let v88 : float = v10 + v33                                              │

00:00:32 #4030 [Verbose] > │     let v89 : float = v11 + v34                                              │

00:00:32 #4031 [Verbose] > │     let v90 : float = v15 + v38                                              │

00:00:32 #4032 [Verbose] > │     let v91 : float = v12 + v35                                              │

00:00:32 #4033 [Verbose] > │     let v92 : float = v13 + v36                                              │

00:00:32 #4034 [Verbose] > │     let v93 : float = v14 + v37                                              │

00:00:32 #4035 [Verbose] > │     let v94 : float = v16 + v39                                              │

00:00:32 #4036 [Verbose] > │     let v95 : float = v17 + v40                                              │

00:00:32 #4037 [Verbose] > │     let v96 : float = v18 + v41                                              │

00:00:32 #4038 [Verbose] > │     let v97 : float = v88 + v33                                              │

00:00:32 #4039 [Verbose] > │     let v98 : float = v89 + v34                                              │

00:00:32 #4040 [Verbose] > │     let v99 : float = v90 + v38                                              │

00:00:32 #4041 [Verbose] > │     let v100 : float = v91 + v35                                             │

00:00:32 #4042 [Verbose] > │     let v101 : float = v92 + v36                                             │

00:00:32 #4043 [Verbose] > │     let v102 : float = v93 + v37                                             │

00:00:32 #4044 [Verbose] > │     let v103 : float = v94 + v39                                             │

00:00:32 #4045 [Verbose] > │     let v104 : float = v95 + v40                                             │

00:00:32 #4046 [Verbose] > │     let v105 : float = v96 + v41                                             │

00:00:32 #4047 [Verbose] > │     let v106 : float = v97 + v56                                             │

00:00:32 #4048 [Verbose] > │     let v107 : float = v98 + v57                                             │

00:00:32 #4049 [Verbose] > │     let v108 : float = v99 + v61                                             │

00:00:32 #4050 [Verbose] > │     let v109 : float = v100 + v58                                            │

00:00:32 #4051 [Verbose] > │     let v110 : float = v101 + v59                                            │

00:00:32 #4052 [Verbose] > │     let v111 : float = v102 + v60                                            │

00:00:32 #4053 [Verbose] > │     let v112 : float = v103 + v62                                            │

00:00:32 #4054 [Verbose] > │     let v113 : float = v104 + v63                                            │

00:00:32 #4055 [Verbose] > │     let v114 : float = v105 + v64                                            │

00:00:32 #4056 [Verbose] > │     let v115 : float = v106 + v56                                            │

00:00:32 #4057 [Verbose] > │     let v116 : float = v107 + v57                                            │

00:00:32 #4058 [Verbose] > │     let v117 : float = v108 + v61                                            │

00:00:32 #4059 [Verbose] > │     let v118 : float = v109 + v58                                            │

00:00:32 #4060 [Verbose] > │     let v119 : float = v110 + v59                                            │

00:00:32 #4061 [Verbose] > │     let v120 : float = v111 + v60                                            │

00:00:32 #4062 [Verbose] > │     let v121 : float = v112 + v62                                            │

00:00:32 #4063 [Verbose] > │     let v122 : float = v113 + v63                                            │

00:00:32 #4064 [Verbose] > │     let v123 : float = v114 + v64                                            │

00:00:32 #4065 [Verbose] > │     let v124 : float = v115 + v79                                            │

00:00:32 #4066 [Verbose] > │     let v125 : float = v116 + v80                                            │

00:00:32 #4067 [Verbose] > │     let v126 : float = v117 + v84                                            │

00:00:32 #4068 [Verbose] > │     let v127 : float = v118 + v81                                            │

00:00:32 #4069 [Verbose] > │     let v128 : float = v119 + v82                                            │

00:00:32 #4070 [Verbose] > │     let v129 : float = v120 + v83                                            │

00:00:32 #4071 [Verbose] > │     let v130 : float = v121 + v85                                            │

00:00:32 #4072 [Verbose] > │     let v131 : float = v122 + v86                                            │

00:00:32 #4073 [Verbose] > │     let v132 : float = v123 + v87                                            │

00:00:32 #4074 [Verbose] > │     let v133 : float = v126 * 1.6666666666666669E-10                         │

00:00:32 #4075 [Verbose] > │     let v134 : float = v6 + v133                                             │

00:00:32 #4076 [Verbose] > │     let v135 : float = 1.6666666666666669E-10 * v127                         │

00:00:32 #4077 [Verbose] > │     let v136 : float = 1.6666666666666669E-10 * v128                         │

00:00:32 #4078 [Verbose] > │     let v137 : float = 1.6666666666666669E-10 * v129                         │

00:00:32 #4079 [Verbose] > │     let v138 : float = v3 + v135                                             │

00:00:32 #4080 [Verbose] > │     let v139 : float = v4 + v136                                             │

00:00:32 #4081 [Verbose] > │     let v140 : float = v5 + v137                                             │

00:00:32 #4082 [Verbose] > │     let v141 : float = 1.6666666666666669E-10 * v130                         │

00:00:32 #4083 [Verbose] > │     let v142 : float = 1.6666666666666669E-10 * v131                         │

00:00:32 #4084 [Verbose] > │     let v143 : float = 1.6666666666666669E-10 * v132                         │

00:00:32 #4085 [Verbose] > │     let v144 : float = v7 + v141                                             │

00:00:32 #4086 [Verbose] > │     let v145 : float = v8 + v142                                             │

00:00:32 #4087 [Verbose] > │     let v146 : float = v9 + v143                                             │

00:00:32 #4088 [Verbose] > │     struct (v1, v2, v138, v139, v140, v134, v144, v145, v146)                │

00:00:32 #4089 [Verbose] > │ and closure0 () (v0 : (struct (float * float * float * float * float * float │

00:00:32 #4090 [Verbose] > │ * float * float * float) -> struct (float * float * float * float * float *  │

00:00:32 #4091 [Verbose] > │ float * float * float * float))) : (struct (float * float * float * float *  │

00:00:32 #4092 [Verbose] > │ float * float * float * float * float) -> struct (float * float * float *    │

00:00:32 #4093 [Verbose] > │ float * float * float * float * float * float)) =                            │

00:00:32 #4094 [Verbose] > │     closure1(v0)                                                             │

00:00:32 #4095 [Verbose] > │ and closure2 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:32 #4096 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:32 #4097 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:32 #4098 [Verbose] > │     let v9 : float = v8 * 0.0                                                │

00:00:32 #4099 [Verbose] > │     let v10 : float = v7 - v9                                                │

00:00:32 #4100 [Verbose] > │     let v11 : float = v9 - v6                                                │

00:00:32 #4101 [Verbose] > │     let v12 : float = v6 * 0.0                                               │

00:00:32 #4102 [Verbose] > │     let v13 : float = v7 * 0.0                                               │

00:00:32 #4103 [Verbose] > │     let v14 : float = v12 - v13                                              │

00:00:32 #4104 [Verbose] > │     let v15 : float = v0 * v10                                               │

00:00:32 #4105 [Verbose] > │     let v16 : float = v0 * v11                                               │

00:00:32 #4106 [Verbose] > │     let v17 : float = v0 * v14                                               │

00:00:32 #4107 [Verbose] > │     let v18 : float = v15 / v1                                               │

00:00:32 #4108 [Verbose] > │     let v19 : float = v16 / v1                                               │

00:00:32 #4109 [Verbose] > │     let v20 : float = v17 / v1                                               │

00:00:32 #4110 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v18, v19, v20)                        │

00:00:32 #4111 [Verbose] > │ and closure3 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:32 #4112 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:32 #4113 [Verbose] > │ float * float * float * float * float * float * float * float) =             │

00:00:32 #4114 [Verbose] > │     let v9 : float = v8 * 0.0                                                │

00:00:32 #4115 [Verbose] > │     let v10 : float = v7 - v9                                                │

00:00:32 #4116 [Verbose] > │     let v11 : float = v9 - v6                                                │

00:00:32 #4117 [Verbose] > │     let v12 : float = v6 * 0.0                                               │

00:00:32 #4118 [Verbose] > │     let v13 : float = v7 * 0.0                                               │

00:00:32 #4119 [Verbose] > │     let v14 : float = v12 - v13                                              │

00:00:32 #4120 [Verbose] > │     let v15 : float = v0 * v10                                               │

00:00:32 #4121 [Verbose] > │     let v16 : float = v0 * v11                                               │

00:00:32 #4122 [Verbose] > │     let v17 : float = v0 * v14                                               │

00:00:32 #4123 [Verbose] > │     let v18 : float = v6 / 299792458.0                                       │

00:00:32 #4124 [Verbose] > │     let v19 : float = v7 / 299792458.0                                       │

00:00:32 #4125 [Verbose] > │     let v20 : float = v8 / 299792458.0                                       │

00:00:32 #4126 [Verbose] > │     let v21 : float = v18 * v18                                              │

00:00:32 #4127 [Verbose] > │     let v22 : float = v19 * v19                                              │

00:00:32 #4128 [Verbose] > │     let v23 : float = v21 + v22                                              │

00:00:32 #4129 [Verbose] > │     let v24 : float = v20 * v20                                              │

00:00:32 #4130 [Verbose] > │     let v25 : float = v23 + v24                                              │

00:00:32 #4131 [Verbose] > │     let v26 : float = 1.0 - v25                                              │

00:00:32 #4132 [Verbose] > │     let v27 : float = sqrt v26                                               │

00:00:32 #4133 [Verbose] > │     let v28 : float = v15 * v18                                              │

00:00:32 #4134 [Verbose] > │     let v29 : float = v16 * v19                                              │

00:00:32 #4135 [Verbose] > │     let v30 : float = v28 + v29                                              │

00:00:32 #4136 [Verbose] > │     let v31 : float = v17 * v20                                              │

00:00:32 #4137 [Verbose] > │     let v32 : float = v30 + v31                                              │

00:00:32 #4138 [Verbose] > │     let v33 : float = v32 * v18                                              │

00:00:32 #4139 [Verbose] > │     let v34 : float = v32 * v19                                              │

00:00:32 #4140 [Verbose] > │     let v35 : float = v32 * v20                                              │

00:00:32 #4141 [Verbose] > │     let v36 : float = -1.0 * v33                                             │

00:00:32 #4142 [Verbose] > │     let v37 : float = -1.0 * v34                                             │

00:00:32 #4143 [Verbose] > │     let v38 : float = -1.0 * v35                                             │

00:00:32 #4144 [Verbose] > │     let v39 : float = v15 + v36                                              │

00:00:32 #4145 [Verbose] > │     let v40 : float = v16 + v37                                              │

00:00:32 #4146 [Verbose] > │     let v41 : float = v17 + v38                                              │

00:00:32 #4147 [Verbose] > │     let v42 : float = v27 * v39                                              │

00:00:32 #4148 [Verbose] > │     let v43 : float = v27 * v40                                              │

00:00:32 #4149 [Verbose] > │     let v44 : float = v27 * v41                                              │

00:00:32 #4150 [Verbose] > │     let v45 : float = v42 / v1                                               │

00:00:32 #4151 [Verbose] > │     let v46 : float = v43 / v1                                               │

00:00:32 #4152 [Verbose] > │     let v47 : float = v44 / v1                                               │

00:00:32 #4153 [Verbose] > │     struct (0.0, 0.0, v6, v7, v8, 1.0, v45, v46, v47)                        │

00:00:32 #4154 [Verbose] > │ and method2 (v0 : (struct (float * float * float * float * float * float *   │

00:00:32 #4155 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:32 #4156 [Verbose] > │ float * float * float * float)), v1 : float, v2 : float, v3 : float, v4 :    │

00:00:32 #4157 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float, v9 : float, v10 :     │

00:00:32 #4158 [Verbose] > │ int32) : struct (float * float * float * float * float * float * float *     │

00:00:32 #4159 [Verbose] > │ float * float) =                                                             │

00:00:32 #4160 [Verbose] > │     let v11 : bool = v10 <= 0                                                │

00:00:32 #4161 [Verbose] > │     if v11 then                                                              │

00:00:32 #4162 [Verbose] > │         struct (v1, v2, v3, v4, v5, v6, v7, v8, v9)                          │

00:00:32 #4163 [Verbose] > │     else                                                                     │

00:00:32 #4164 [Verbose] > │         let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:32 #4165 [Verbose] > │ : float, v17 : float, v18 : float, v19 : float, v20 : float) = v0 struct     │

00:00:32 #4166 [Verbose] > │ (v1, v2, v3, v4, v5, v6, v7, v8, v9)                                         │

00:00:32 #4167 [Verbose] > │         let v21 : int32 = v10 - 1                                            │

00:00:32 #4168 [Verbose] > │         method2(v0, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21)        │

00:00:32 #4169 [Verbose] > │ and method3 (v0 : UH0, v1 : UH0) : UH0 =                                     │

00:00:32 #4170 [Verbose] > │     match v0 with                                                            │

00:00:32 #4171 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:32 #4172 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:32 #4173 [Verbose] > │         method3(v11, v12)                                                    │

00:00:32 #4174 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:32 #4175 [Verbose] > │         v1                                                                   │

00:00:32 #4176 [Verbose] > │ and method1 (v0 : (struct (float * float * float * float * float * float *   │

00:00:32 #4177 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:32 #4178 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:32 #4179 [Verbose] > │     let v3 : float = 1.602176621E-19                                         │

00:00:32 #4180 [Verbose] > │     let v4 : float = 1.672621898E-27                                         │

00:00:32 #4181 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:32 #4182 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:32 #4183 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:32 #4184 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:32 #4185 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:32 #4186 [Verbose] > │     let v10 : float = 239833966.4                                            │

00:00:32 #4187 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:32 #4188 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:32 #4189 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:32 #4190 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:32 #4191 [Verbose] > │     let v21 : bool = v2 < 100                                                │

00:00:32 #4192 [Verbose] > │     if v21 then                                                              │

00:00:32 #4193 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:32 #4194 [Verbose] > │ v1)                                                                          │

00:00:32 #4195 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:32 #4196 [Verbose] > │         method1(v0, v22, v23)                                                │

00:00:32 #4197 [Verbose] > │     else                                                                     │

00:00:32 #4198 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:32 #4199 [Verbose] > │         method3(v1, v25)                                                     │

00:00:32 #4200 [Verbose] > │ and method4 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:32 #4201 [Verbose] > │     match v0 with                                                            │

00:00:32 #4202 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:32 #4203 [Verbose] > │         let v12 : UH1 = method4(v11, v1)                                     │

00:00:32 #4204 [Verbose] > │         UH1_0(v4, v5, v12)                                                   │

00:00:32 #4205 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:32 #4206 [Verbose] > │         v1                                                                   │

00:00:32 #4207 [Verbose] > │ and method5 (v0 : UH1, v1 : UH2, v2 : UH2) : struct (UH2 * UH2) =            │

00:00:32 #4208 [Verbose] > │     match v0 with                                                            │

00:00:32 #4209 [Verbose] > │     | UH1_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:32 #4210 [Verbose] > │         let v6 : UH2 = UH2_0(v3, v1)                                         │

00:00:32 #4211 [Verbose] > │         let v7 : UH2 = UH2_0(v4, v2)                                         │

00:00:32 #4212 [Verbose] > │         method5(v5, v6, v7)                                                  │

00:00:32 #4213 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:32 #4214 [Verbose] > │         struct (v1, v2)                                                      │

00:00:32 #4215 [Verbose] > │ and method6 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:32 #4216 [Verbose] > │     match v0 with                                                            │

00:00:32 #4217 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:32 #4218 [Verbose] > │         let v4 : UH2 = UH2_0(v2, v1)                                         │

00:00:32 #4219 [Verbose] > │         method6(v3, v4)                                                      │

00:00:32 #4220 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:32 #4221 [Verbose] > │         v1                                                                   │

00:00:32 #4222 [Verbose] > │ and method7 (v0 : (struct (float * float * float * float * float * float *   │

00:00:32 #4223 [Verbose] > │ float * float * float) -> struct (float * float * float * float * float *    │

00:00:32 #4224 [Verbose] > │ float * float * float * float)), v1 : UH0, v2 : int32) : UH0 =               │

00:00:32 #4225 [Verbose] > │     let v3 : float = 1.602176621E-19                                         │

00:00:32 #4226 [Verbose] > │     let v4 : float = 1.672621898E-27                                         │

00:00:32 #4227 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:32 #4228 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:32 #4229 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:32 #4230 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:32 #4231 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:32 #4232 [Verbose] > │     let v10 : float = 239833966.4                                            │

00:00:32 #4233 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:32 #4234 [Verbose] > │     let struct (v12 : float, v13 : float, v14 : float, v15 : float, v16 :    │

00:00:32 #4235 [Verbose] > │ float, v17 : float, v18 : float, v19 : float, v20 : float) = method2(v0, v3, │

00:00:32 #4236 [Verbose] > │ v4, v5, v6, v7, v8, v9, v10, v11, v2)                                        │

00:00:32 #4237 [Verbose] > │     let v21 : bool = v2 < 165                                                │

00:00:32 #4238 [Verbose] > │     if v21 then                                                              │

00:00:32 #4239 [Verbose] > │         let v22 : UH0 = UH0_0(v12, v13, v14, v15, v16, v17, v18, v19, v20,   │

00:00:32 #4240 [Verbose] > │ v1)                                                                          │

00:00:32 #4241 [Verbose] > │         let v23 : int32 = v2 + 1                                             │

00:00:32 #4242 [Verbose] > │         method7(v0, v22, v23)                                                │

00:00:32 #4243 [Verbose] > │     else                                                                     │

00:00:32 #4244 [Verbose] > │         let v25 : UH0 = UH0_1                                                │

00:00:32 #4245 [Verbose] > │         method3(v1, v25)                                                     │

00:00:32 #4246 [Verbose] > │ and method8 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:32 #4247 [Verbose] > │     match v0 with                                                            │

00:00:32 #4248 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:32 #4249 [Verbose] > │         let v12 : UH1 = method8(v11, v1)                                     │

00:00:32 #4250 [Verbose] > │         UH1_0(v4, v5, v12)                                                   │

00:00:32 #4251 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:32 #4252 [Verbose] > │         v1                                                                   │

00:00:32 #4253 [Verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:32 #4254 [Verbose] > │     match v0 with                                                            │

00:00:32 #4255 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:32 #4256 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:32 #4257 [Verbose] > │         method10(v3, v4)                                                     │

00:00:32 #4258 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:32 #4259 [Verbose] > │         v1                                                                   │

00:00:32 #4260 [Verbose] > │ and method11 (v0 : (float []), v1 : UH2, v2 : int32) : int32 =               │

00:00:32 #4261 [Verbose] > │     match v1 with                                                            │

00:00:32 #4262 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:32 #4263 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:32 #4264 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:32 #4265 [Verbose] > │         method11(v0, v4, v5)                                                 │

00:00:32 #4266 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:32 #4267 [Verbose] > │         v2                                                                   │

00:00:32 #4268 [Verbose] > │ and method9 (v0 : UH2) : (float []) =                                        │

00:00:32 #4269 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:32 #4270 [Verbose] > │     let v2 : int32 = method10(v0, v1)                                        │

00:00:32 #4271 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:32 #4272 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:32 #4273 [Verbose] > │     let v5 : int32 = method11(v3, v0, v4)                                    │

00:00:32 #4274 [Verbose] > │     v3                                                                       │

00:00:32 #4275 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:32 #4276 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:32 #4277 [Verbose] > │     let v0 : ((struct (float * float * float * float * float * float * float │

00:00:32 #4278 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:32 #4279 [Verbose] > │ float * float * float)) -> (struct (float * float * float * float * float *  │

00:00:32 #4280 [Verbose] > │ float * float * float * float) -> struct (float * float * float * float *    │

00:00:32 #4281 [Verbose] > │ float * float * float * float * float))) = closure0()                        │

00:00:32 #4282 [Verbose] > │     let v1 : (struct (float * float * float * float * float * float * float  │

00:00:32 #4283 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:32 #4284 [Verbose] > │ float * float * float)) = closure2()                                         │

00:00:32 #4285 [Verbose] > │     let v2 : (struct (float * float * float * float * float * float * float  │

00:00:32 #4286 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:32 #4287 [Verbose] > │ float * float * float)) = v0 v1                                              │

00:00:32 #4288 [Verbose] > │     let v3 : (struct (float * float * float * float * float * float * float  │

00:00:32 #4289 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:32 #4290 [Verbose] > │ float * float * float)) = closure3()                                         │

00:00:32 #4291 [Verbose] > │     let v4 : (struct (float * float * float * float * float * float * float  │

00:00:32 #4292 [Verbose] > │ * float * float) -> struct (float * float * float * float * float * float *  │

00:00:32 #4293 [Verbose] > │ float * float * float)) = v0 v3                                              │

00:00:32 #4294 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:32 #4295 [Verbose] > │     let v6 : int32 = 0                                                       │

00:00:32 #4296 [Verbose] > │     let v7 : UH0 = method1(v2, v5, v6)                                       │

00:00:32 #4297 [Verbose] > │     let v8 : UH1 = UH1_1                                                     │

00:00:32 #4298 [Verbose] > │     let v9 : UH1 = method4(v7, v8)                                           │

00:00:32 #4299 [Verbose] > │     let v10 : UH2 = UH2_1                                                    │

00:00:32 #4300 [Verbose] > │     let v11 : UH2 = UH2_1                                                    │

00:00:32 #4301 [Verbose] > │     let struct (v12 : UH2, v13 : UH2) = method5(v9, v10, v11)                │

00:00:32 #4302 [Verbose] > │     let v14 : UH2 = UH2_1                                                    │

00:00:32 #4303 [Verbose] > │     let v15 : UH2 = method6(v12, v14)                                        │

00:00:32 #4304 [Verbose] > │     let v16 : UH2 = UH2_1                                                    │

00:00:32 #4305 [Verbose] > │     let v17 : UH2 = method6(v13, v16)                                        │

00:00:32 #4306 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:32 #4307 [Verbose] > │     let v19 : int32 = 0                                                      │

00:00:32 #4308 [Verbose] > │     let v20 : UH0 = method7(v4, v18, v19)                                    │

00:00:32 #4309 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:32 #4310 [Verbose] > │     let v22 : UH1 = method8(v20, v21)                                        │

00:00:32 #4311 [Verbose] > │     let v23 : UH2 = UH2_1                                                    │

00:00:32 #4312 [Verbose] > │     let v24 : UH2 = UH2_1                                                    │

00:00:32 #4313 [Verbose] > │     let struct (v25 : UH2, v26 : UH2) = method5(v22, v23, v24)               │

00:00:32 #4314 [Verbose] > │     let v27 : UH2 = UH2_1                                                    │

00:00:32 #4315 [Verbose] > │     let v28 : UH2 = method6(v25, v27)                                        │

00:00:32 #4316 [Verbose] > │     let v29 : UH2 = UH2_1                                                    │

00:00:32 #4317 [Verbose] > │     let v30 : UH2 = method6(v26, v29)                                        │

00:00:32 #4318 [Verbose] > │     let v31 : (float []) = method9(v15)                                      │

00:00:32 #4319 [Verbose] > │     let v32 : (float []) = method9(v17)                                      │

00:00:32 #4320 [Verbose] > │     let v33 : (float []) = method9(v28)                                      │

00:00:32 #4321 [Verbose] > │     let v34 : (float []) = method9(v30)                                      │

00:00:32 #4322 [Verbose] > │     let v35 : string = "newtonian"                                           │

00:00:32 #4323 [Verbose] > │     let v36 : string = "relativistic"                                        │

00:00:32 #4324 [Verbose] > │     let v37 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:32 #4325 [Verbose] > │ (v35, v31, v32); struct (v36, v33, v34)|]                                    │

00:00:32 #4326 [Verbose] > │     let v38 : string = "proton in a 1-t magnetic field"                      │

00:00:32 #4327 [Verbose] > │     let v39 : string = "x (m)"                                               │

00:00:32 #4328 [Verbose] > │     let v40 : string = "y (m)"                                               │

00:00:32 #4329 [Verbose] > │     struct (v38, v39, v40, v37)                                              │

00:00:32 #4330 [Verbose] > │ method0()                                                                    │

00:00:32 #4331 [Verbose] > │                                                                              │

00:00:32 #4332 [Verbose] > │                                                                              │

00:00:32 #4333 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #4334 [Verbose] >

00:00:32 #4335 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:32 #4336 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:32 #4337 [Verbose] > │ ### system kinetic energy versus time 1                                      │

00:00:32 #4338 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:32 #4339 [Verbose] >

00:00:32 #4340 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:32 #4341 [Verbose] > // // test

00:00:32 #4342 [Verbose] >

00:00:32 #4343 [Verbose] > inl central_force f (particle_state st1) (particle_state st2) =

00:00:32 #4344 [Verbose] >     inl r1 = st1.pos_vec

00:00:32 #4345 [Verbose] >     inl r2 = st2.pos_vec

00:00:32 #4346 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:32 #4347 [Verbose] >     inl r21mag = magnitude r21

00:00:32 #4348 [Verbose] >     f r21mag *^ r21 ^/ r21mag

00:00:32 #4349 [Verbose] >

00:00:32 #4350 [Verbose] > inl billiard_force k re =

00:00:32 #4351 [Verbose] >     inl f r =

00:00:32 #4352 [Verbose] >         if r >= re

00:00:32 #4353 [Verbose] >         then 0

00:00:32 #4354 [Verbose] >         else -k * (r - re)

00:00:32 #4355 [Verbose] >     central_force f

00:00:32 #4356 [Verbose] >

00:00:32 #4357 [Verbose] > type force_vector = vec

00:00:32 #4358 [Verbose] > type two_body_force = particle_state -> particle_state -> force_vector

00:00:32 #4359 [Verbose] >

00:00:32 #4360 [Verbose] > union force =

00:00:32 #4361 [Verbose] >     | ExternalForce : i32 * one_body_force

00:00:32 #4362 [Verbose] >     | InternalForce : i32 * i32 * two_body_force

00:00:32 #4363 [Verbose] >

00:00:32 #4364 [Verbose] > nominal multi_particle_state = list particle_state

00:00:32 #4365 [Verbose] >

00:00:32 #4366 [Verbose] > nominal d_multi_particle_state = list d_particle_state

00:00:32 #4367 [Verbose] >

00:00:32 #4368 [Verbose] > inl force_on n sts force =

00:00:32 #4369 [Verbose] >     match force with

00:00:32 #4370 [Verbose] >     | ExternalForce (n0, f_one_body) =>

00:00:32 #4371 [Verbose] >         if n = n0

00:00:32 #4372 [Verbose] >         then f_one_body

00:00:32 #4373 [Verbose] >         else fun _ => zero_vec ()

00:00:32 #4374 [Verbose] >     | InternalForce (n0, n1, f_two_body) =>

00:00:32 #4375 [Verbose] >         if n = n0

00:00:32 #4376 [Verbose] >         then f_two_body (sts |> listm'.item n1)

00:00:32 #4377 [Verbose] >         elif n = n1

00:00:32 #4378 [Verbose] >         then f_two_body (sts |> listm'.item n0)

00:00:32 #4379 [Verbose] >         else fun _ => zero_vec ()

00:00:32 #4380 [Verbose] >

00:00:32 #4381 [Verbose] > inl forces_on n (multi_particle_state sts) fs =

00:00:32 #4382 [Verbose] >     fs |> listm.map (force_on n sts)

00:00:32 #4383 [Verbose] >

00:00:32 #4384 [Verbose] > inl newton_second_mps fs (multi_particle_state sts) : d_multi_particle_state =

00:00:32 #4385 [Verbose] >     inl deriv (n, st) =

00:00:32 #4386 [Verbose] >         newton_second_ps (forces_on n (multi_particle_state sts) fs) st

00:00:32 #4387 [Verbose] >     sts |> listm'.indexed |> listm.map deriv |> d_multi_particle_state

00:00:32 #4388 [Verbose] >

00:00:32 #4389 [Verbose] > instance (+++) d_multi_particle_state = fun (d_multi_particle_state dsts1)

00:00:32 #4390 [Verbose] > (d_multi_particle_state dsts2) =>

00:00:32 #4391 [Verbose] >     d_multi_particle_state (listm'.zip_with_ (+++) dsts1 dsts2)

00:00:32 #4392 [Verbose] >

00:00:32 #4393 [Verbose] > instance scale d_multi_particle_state = fun w (d_multi_particle_state dsts) =>

00:00:32 #4394 [Verbose] >     d_multi_particle_state (dsts |> listm.map (scale w))

00:00:32 #4395 [Verbose] >

00:00:32 #4396 [Verbose] > instance shift multi_particle_state = fun dt dsts (multi_particle_state sts) =>

00:00:32 #4397 [Verbose] >     inl (d_multi_particle_state dsts) =

00:00:32 #4398 [Verbose] >         real

00:00:32 #4399 [Verbose] >             match dsts with

00:00:32 #4400 [Verbose] >             | d_multi_particle_state _ => dsts

00:00:32 #4401 [Verbose] >     listm'.zip_with_ (shift dt) dsts sts |> multi_particle_state

00:00:32 #4402 [Verbose] >

00:00:32 #4403 [Verbose] > inl euler_cromer_mps dt : numerical_method multi_particle_state

00:00:32 #4404 [Verbose] > d_multi_particle_state =

00:00:32 #4405 [Verbose] >     fun deriv mpst0 =>

00:00:32 #4406 [Verbose] >         inl mpst1 = euler dt deriv mpst0

00:00:32 #4407 [Verbose] >         inl (multi_particle_state sts0) = mpst0

00:00:32 #4408 [Verbose] >         inl (multi_particle_state sts1) = mpst1

00:00:32 #4409 [Verbose] >         sts1

00:00:32 #4410 [Verbose] >         |> listm'.zip_ sts0

00:00:32 #4411 [Verbose] >         |> listm.map (fun ((particle_state st0), (particle_state st1)) =>

00:00:32 #4412 [Verbose] >             particle_state {

00:00:32 #4413 [Verbose] >                 st1 with

00:00:32 #4414 [Verbose] >                     pos_vec = st0.pos_vec ^+^ st1.velocity ^* dt

00:00:32 #4415 [Verbose] >             }

00:00:32 #4416 [Verbose] >         )

00:00:32 #4417 [Verbose] >         |> multi_particle_state

00:00:32 #4418 [Verbose] >

00:00:32 #4419 [Verbose] > inl update_mps (method : numerical_method multi_particle_state

00:00:32 #4420 [Verbose] > d_multi_particle_state) =

00:00:32 #4421 [Verbose] >     newton_second_mps >> method

00:00:32 #4422 [Verbose] >

00:00:32 #4423 [Verbose] > inl states_mps (method : numerical_method multi_particle_state

00:00:32 #4424 [Verbose] > d_multi_particle_state) =

00:00:32 #4425 [Verbose] >     newton_second_mps >> method >> seq.iterate_

00:00:32 #4426 [Verbose] >

00:00:32 #4427 [Verbose] >

00:00:32 #4428 [Verbose] > inl kinetic_energy (particle_state st) =

00:00:32 #4429 [Verbose] >     inl m = st.mass

00:00:32 #4430 [Verbose] >     inl v = magnitude st.velocity

00:00:32 #4431 [Verbose] >     0.5 * m * v ** 2

00:00:32 #4432 [Verbose] >

00:00:32 #4433 [Verbose] > inl system_ke (multi_particle_state sts) =

00:00:32 #4434 [Verbose] >     sts |> listm.map kinetic_energy |> listm'.sum

00:00:32 #4435 [Verbose] >

00:00:32 #4436 [Verbose] > inl linear_spring_pe k re (particle_state st1) (particle_state st2) =

00:00:32 #4437 [Verbose] >     inl r1 = st1.pos_vec

00:00:32 #4438 [Verbose] >     inl r2 = st2.pos_vec

00:00:32 #4439 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:32 #4440 [Verbose] >     inl r21mag = magnitude r21

00:00:32 #4441 [Verbose] >     k * (r21mag - re) ** 2 / 2

00:00:32 #4442 [Verbose] >

00:00:32 #4443 [Verbose] > inl earth_surface_gravity_pe (particle_state st) =

00:00:32 #4444 [Verbose] >     inl g = 9.80665

00:00:32 #4445 [Verbose] >     inl m = st.mass

00:00:32 #4446 [Verbose] >     inl z = st.pos_vec.z

00:00:32 #4447 [Verbose] >     m * g * z

00:00:32 #4448 [Verbose] >

00:00:32 #4449 [Verbose] > inl two_springs_pe (multi_particle_state sts) =

00:00:32 #4450 [Verbose] >     inl st0 = sts |> listm'.item 0i32

00:00:32 #4451 [Verbose] >     inl st1 = sts |> listm'.item 1i32

00:00:32 #4452 [Verbose] >     linear_spring_pe 100 0.5 (default_particle_state ()) st0

00:00:32 #4453 [Verbose] >     + linear_spring_pe 100 0.5 st0 st1

00:00:32 #4454 [Verbose] >     + earth_surface_gravity_pe st0

00:00:32 #4455 [Verbose] >     + earth_surface_gravity_pe st1

00:00:32 #4456 [Verbose] >

00:00:32 #4457 [Verbose] > inl two_springs_me mpst =

00:00:32 #4458 [Verbose] >     system_ke mpst + two_springs_pe mpst

00:00:32 #4459 [Verbose] >

00:00:32 #4460 [Verbose] > inl ball_radius () = 0.03

00:00:32 #4461 [Verbose] >

00:00:32 #4462 [Verbose] > inl billiard_forces k =

00:00:32 #4463 [Verbose] >     [[ InternalForce (0, 1, billiard_force k (2 * ball_radius ())) ]]

00:00:32 #4464 [Verbose] >

00:00:32 #4465 [Verbose] > inl billiard_update n_method k dt =

00:00:32 #4466 [Verbose] >     update_mps (n_method dt) (billiard_forces k)

00:00:32 #4467 [Verbose] >

00:00:32 #4468 [Verbose] > inl billiard_initial () =

00:00:32 #4469 [Verbose] >     inl ball_mass = 0.160

00:00:32 #4470 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:32 #4471 [Verbose] >     multi_particle_state [[

00:00:32 #4472 [Verbose] >         particle_state {

00:00:32 #4473 [Verbose] >             default_particle_state' with

00:00:32 #4474 [Verbose] >                 mass = ball_mass

00:00:32 #4475 [Verbose] >                 pos_vec = zero_vec ()

00:00:32 #4476 [Verbose] >                 velocity = 0.2 *^ i_hat ()

00:00:32 #4477 [Verbose] >         }

00:00:32 #4478 [Verbose] >         particle_state {

00:00:32 #4479 [Verbose] >             default_particle_state' with

00:00:32 #4480 [Verbose] >                 mass = ball_mass

00:00:32 #4481 [Verbose] >                 pos_vec = i_hat () ^+^ 0.02 *^ j_hat ()

00:00:32 #4482 [Verbose] >                 velocity = zero_vec ()

00:00:32 #4483 [Verbose] >         }

00:00:32 #4484 [Verbose] >     ]]

00:00:32 #4485 [Verbose] >

00:00:32 #4486 [Verbose] > inl billiard_states ~n_method k dt =

00:00:32 #4487 [Verbose] >     states_mps (n_method dt) (billiard_forces k) (billiard_initial ())

00:00:32 #4488 [Verbose] >

00:00:32 #4489 [Verbose] > inl billiard_states_finite n_method k dt =

00:00:32 #4490 [Verbose] >     billiard_states n_method k dt

00:00:32 #4491 [Verbose] >     >> Some

00:00:32 #4492 [Verbose] >     |> seq.take_while_ (fun (multi_particle_state mpst) (_ : i32) =>

00:00:32 #4493 [Verbose] >         (mpst |> listm'.item 0i32).time <= 10

00:00:32 #4494 [Verbose] >     )

00:00:32 #4495 [Verbose] >

00:00:32 #4496 [Verbose] > inl momentum (particle_state st) =

00:00:32 #4497 [Verbose] >     inl m = st.mass

00:00:32 #4498 [Verbose] >     inl v = st.velocity

00:00:32 #4499 [Verbose] >     m *^ v

00:00:32 #4500 [Verbose] >

00:00:32 #4501 [Verbose] > inl system_p (multi_particle_state sts) =

00:00:32 #4502 [Verbose] >     sts |> listm.map momentum |> sum_vec

00:00:32 #4503 [Verbose] >

00:00:32 #4504 [Verbose] >

00:00:32 #4505 [Verbose] > inl time_ke_ec_x, time_ke_ec_y =

00:00:32 #4506 [Verbose] >     billiard_states_finite euler_cromer_mps 30 0.03

00:00:32 #4507 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:32 #4508 [Verbose] >         (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)

00:00:32 #4509 [Verbose] >     )

00:00:32 #4510 [Verbose] >     |> listm'.unzip

00:00:32 #4511 [Verbose] >

00:00:32 #4512 [Verbose] > inl time_ke_rk4_x, time_ke_rk4_y =

00:00:32 #4513 [Verbose] >     billiard_states_finite runge_kutta_4 30 0.03

00:00:32 #4514 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:32 #4515 [Verbose] >         (mpst |> listm'.item 0i32).time, system_ke (multi_particle_state mpst)

00:00:32 #4516 [Verbose] >     )

00:00:32 #4517 [Verbose] >     |> listm'.unzip

00:00:32 #4518 [Verbose] >

00:00:32 #4519 [Verbose] > inl time_ke_ec_x : a i32 _ = time_ke_ec_x |> listm.toArray

00:00:32 #4520 [Verbose] > inl time_ke_ec_y : a i32 _ = time_ke_ec_y |> listm.toArray

00:00:32 #4521 [Verbose] >

00:00:32 #4522 [Verbose] > inl time_ke_rk4_x : a i32 _ = time_ke_rk4_x |> listm.toArray

00:00:32 #4523 [Verbose] > inl time_ke_rk4_y : a i32 _ = time_ke_rk4_y |> listm.toArray

00:00:32 #4524 [Verbose] >

00:00:32 #4525 [Verbose] > "system kinetic energy versus time",

00:00:32 #4526 [Verbose] > "time (s)",

00:00:32 #4527 [Verbose] > "system kinetic energy (j)",

00:00:32 #4528 [Verbose] > ;[[

00:00:32 #4529 [Verbose] >     "euler-cromer", time_ke_ec_x, time_ke_ec_y

00:00:32 #4530 [Verbose] >     "runge-kutta 4", time_ke_rk4_x, time_ke_rk4_y

00:00:32 #4531 [Verbose] > ]]

00:00:32 #4532 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0445-4560-4baf7a3e5e4f\main.spi

00:00:33 #4533 [Verbose] >

00:00:33 #4534 [Verbose] > ╭─[ 1.46s - return value ]─────────────────────────────────────────────────────╮

00:00:33 #4535 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:33 #4536 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:33 #4537 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:33 #4538 [Verbose] > │ stroke="none"/>                                                              │

00:00:33 #4539 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:33 #4540 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:33 #4541 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:33 #4542 [Verbose] > │ system kinetic energy versus time                                            │

00:00:33 #4543 [Verbose] > │ </text>                                                                      │

00:00:33 #4544 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:33 #4545 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #4546 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:33 #4547 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #4548 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:33 #4549 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #4550 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:33 #4551 [Verbose] > │ y2="75"/>                                                                    │

00:00:33 #4552 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1...                        │

00:00:33 #4553 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #4554 [Verbose] >

00:00:33 #4555 [Verbose] > ╭─[ 1.47s - stdout ]───────────────────────────────────────────────────────────╮

00:00:33 #4556 [Verbose] > │ type UH0 =                                                                   │

00:00:33 #4557 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:33 #4558 [Verbose] > │ * float * UH0                                                                │

00:00:33 #4559 [Verbose] > │     | UH0_1                                                                  │

00:00:33 #4560 [Verbose] > │ and UH1 =                                                                    │

00:00:33 #4561 [Verbose] > │     | UH1_0 of float * float * float * float * float * float * float * float │

00:00:33 #4562 [Verbose] > │ * float * UH1                                                                │

00:00:33 #4563 [Verbose] > │     | UH1_1                                                                  │

00:00:33 #4564 [Verbose] > │ and UH2 =                                                                    │

00:00:33 #4565 [Verbose] > │     | UH2_0 of float * float * float * float * float * float * float * float │

00:00:33 #4566 [Verbose] > │ * float * float * float * float * float * float * float * float * float *    │

00:00:33 #4567 [Verbose] > │ float * UH2                                                                  │

00:00:33 #4568 [Verbose] > │     | UH2_1                                                                  │

00:00:33 #4569 [Verbose] > │ and UH3 =                                                                    │

00:00:33 #4570 [Verbose] > │     | UH3_0 of int32 * float * float * float * float * float * float * float │

00:00:33 #4571 [Verbose] > │ * float * float * UH3                                                        │

00:00:33 #4572 [Verbose] > │     | UH3_1                                                                  │

00:00:33 #4573 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:33 #4574 [Verbose] > │     | US0_0                                                                  │

00:00:33 #4575 [Verbose] > │     | US0_1 of f1_0 : float * f1_1 : float * f1_2 : float * f1_3 : float *   │

00:00:33 #4576 [Verbose] > │ f1_4 : float * f1_5 : float * f1_6 : float * f1_7 : float * f1_8 : float     │

00:00:33 #4577 [Verbose] > │ and UH4 =                                                                    │

00:00:33 #4578 [Verbose] > │     | UH4_0 of UH0 * UH4                                                     │

00:00:33 #4579 [Verbose] > │     | UH4_1                                                                  │

00:00:33 #4580 [Verbose] > │ and UH5 =                                                                    │

00:00:33 #4581 [Verbose] > │     | UH5_0 of float * float * UH5                                           │

00:00:33 #4582 [Verbose] > │     | UH5_1                                                                  │

00:00:33 #4583 [Verbose] > │ and UH6 =                                                                    │

00:00:33 #4584 [Verbose] > │     | UH6_0 of float * UH6                                                   │

00:00:33 #4585 [Verbose] > │     | UH6_1                                                                  │

00:00:33 #4586 [Verbose] > │ let rec method2 (v0 : UH0, v1 : UH0) : UH0 =                                 │

00:00:33 #4587 [Verbose] > │     match v0 with                                                            │

00:00:33 #4588 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:33 #4589 [Verbose] > │         let v12 : UH0 = UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:33 #4590 [Verbose] > │         method2(v11, v12)                                                    │

00:00:33 #4591 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:33 #4592 [Verbose] > │         v1                                                                   │

00:00:33 #4593 [Verbose] > │ and method1 (v0 : float, v1 : UH0, v2 : UH1, v3 : UH0) : UH0 =               │

00:00:33 #4594 [Verbose] > │     match v2 with                                                            │

00:00:33 #4595 [Verbose] > │     | UH1_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *)        │

00:00:33 #4596 [Verbose] > │         match v3 with                                                        │

00:00:33 #4597 [Verbose] > │         | UH0_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (* Cons │

00:00:33 #4598 [Verbose] > │ *)                                                                           │

00:00:33 #4599 [Verbose] > │             let v24 : float = v9 * v0                                        │

00:00:33 #4600 [Verbose] > │             let v25 : float = v19 + v24                                      │

00:00:33 #4601 [Verbose] > │             let v26 : float = v0 * v6                                        │

00:00:33 #4602 [Verbose] > │             let v27 : float = v0 * v7                                        │

00:00:33 #4603 [Verbose] > │             let v28 : float = v0 * v8                                        │

00:00:33 #4604 [Verbose] > │             let v29 : float = v16 + v26                                      │

00:00:33 #4605 [Verbose] > │             let v30 : float = v17 + v27                                      │

00:00:33 #4606 [Verbose] > │             let v31 : float = v18 + v28                                      │

00:00:33 #4607 [Verbose] > │             let v32 : float = v0 * v10                                       │

00:00:33 #4608 [Verbose] > │             let v33 : float = v0 * v11                                       │

00:00:33 #4609 [Verbose] > │             let v34 : float = v0 * v12                                       │

00:00:33 #4610 [Verbose] > │             let v35 : float = v20 + v32                                      │

00:00:33 #4611 [Verbose] > │             let v36 : float = v21 + v33                                      │

00:00:33 #4612 [Verbose] > │             let v37 : float = v22 + v34                                      │

00:00:33 #4613 [Verbose] > │             let v38 : UH0 = UH0_0(v14, v15, v29, v30, v31, v25, v35, v36,    │

00:00:33 #4614 [Verbose] > │ v37, v1)                                                                     │

00:00:33 #4615 [Verbose] > │             method1(v0, v38, v13, v23)                                       │

00:00:33 #4616 [Verbose] > │         | _ ->                                                               │

00:00:33 #4617 [Verbose] > │             let v40 : UH0 = UH0_1                                            │

00:00:33 #4618 [Verbose] > │             method2(v1, v40)                                                 │

00:00:33 #4619 [Verbose] > │     | _ ->                                                                   │

00:00:33 #4620 [Verbose] > │         let v43 : UH0 = UH0_1                                                │

00:00:33 #4621 [Verbose] > │         method2(v1, v43)                                                     │

00:00:33 #4622 [Verbose] > │ and method4 (v0 : UH2, v1 : UH2) : UH2 =                                     │

00:00:33 #4623 [Verbose] > │     match v0 with                                                            │

00:00:33 #4624 [Verbose] > │     | UH2_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15,    │

00:00:33 #4625 [Verbose] > │ v16, v17, v18, v19, v20) -> (* Cons *)                                       │

00:00:33 #4626 [Verbose] > │         let v21 : UH2 = UH2_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, │

00:00:33 #4627 [Verbose] > │ v13, v14, v15, v16, v17, v18, v19, v1)                                       │

00:00:33 #4628 [Verbose] > │         method4(v20, v21)                                                    │

00:00:33 #4629 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #4630 [Verbose] > │         v1                                                                   │

00:00:33 #4631 [Verbose] > │ and method3 (v0 : UH2, v1 : UH0, v2 : UH0) : UH2 =                           │

00:00:33 #4632 [Verbose] > │     match v1 with                                                            │

00:00:33 #4633 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:33 #4634 [Verbose] > │         match v2 with                                                        │

00:00:33 #4635 [Verbose] > │         | UH0_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │

00:00:33 #4636 [Verbose] > │ *)                                                                           │

00:00:33 #4637 [Verbose] > │             let v23 : UH2 = UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v13, │

00:00:33 #4638 [Verbose] > │ v14, v15, v16, v17, v18, v19, v20, v21, v0)                                  │

00:00:33 #4639 [Verbose] > │             method3(v23, v12, v22)                                           │

00:00:33 #4640 [Verbose] > │         | _ ->                                                               │

00:00:33 #4641 [Verbose] > │             let v25 : UH2 = UH2_1                                            │

00:00:33 #4642 [Verbose] > │             method4(v0, v25)                                                 │

00:00:33 #4643 [Verbose] > │     | _ ->                                                                   │

00:00:33 #4644 [Verbose] > │         let v28 : UH2 = UH2_1                                                │

00:00:33 #4645 [Verbose] > │         method4(v0, v28)                                                     │

00:00:33 #4646 [Verbose] > │ and method5 (v0 : float, v1 : UH2, v2 : UH0) : UH0 =                         │

00:00:33 #4647 [Verbose] > │     match v1 with                                                            │

00:00:33 #4648 [Verbose] > │     | UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16,   │

00:00:33 #4649 [Verbose] > │ v17, v18, v19, v20, v21) -> (* Cons *)                                       │

00:00:33 #4650 [Verbose] > │         let v22 : UH0 = method5(v0, v21, v2)                                 │

00:00:33 #4651 [Verbose] > │         let v23 : float = v0 * v18                                           │

00:00:33 #4652 [Verbose] > │         let v24 : float = v0 * v19                                           │

00:00:33 #4653 [Verbose] > │         let v25 : float = v0 * v20                                           │

00:00:33 #4654 [Verbose] > │         let v26 : float = v5 + v23                                           │

00:00:33 #4655 [Verbose] > │         let v27 : float = v6 + v24                                           │

00:00:33 #4656 [Verbose] > │         let v28 : float = v7 + v25                                           │

00:00:33 #4657 [Verbose] > │         UH0_0(v12, v13, v26, v27, v28, v17, v18, v19, v20, v22)              │

00:00:33 #4658 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:33 #4659 [Verbose] > │         v2                                                                   │

00:00:33 #4660 [Verbose] > │ and closure2 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =              │

00:00:33 #4661 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:33 #4662 [Verbose] > │     let v4 : UH0 = UH0_1                                                     │

00:00:33 #4663 [Verbose] > │     let v5 : UH0 = method1(v0, v4, v3, v2)                                   │

00:00:33 #4664 [Verbose] > │     let v6 : UH2 = UH2_1                                                     │

00:00:33 #4665 [Verbose] > │     let v7 : UH2 = method3(v6, v2, v5)                                       │

00:00:33 #4666 [Verbose] > │     let v8 : UH0 = UH0_1                                                     │

00:00:33 #4667 [Verbose] > │     let v9 : UH0 = method5(v0, v7, v8)                                       │

00:00:33 #4668 [Verbose] > │     v9                                                                       │

00:00:33 #4669 [Verbose] > │ and closure1 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =               │

00:00:33 #4670 [Verbose] > │     closure2(v0, v1)                                                         │

00:00:33 #4671 [Verbose] > │ and closure0 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =              │

00:00:33 #4672 [Verbose] > │     closure1(v0)                                                             │

00:00:33 #4673 [Verbose] > │ and method6 (v0 : UH0, v1 : UH3, v2 : int32) : struct (UH3 * int32) =        │

00:00:33 #4674 [Verbose] > │     match v0 with                                                            │

00:00:33 #4675 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:33 #4676 [Verbose] > │         let v13 : int32 = v2 + 1                                             │

00:00:33 #4677 [Verbose] > │         let v14 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1)  │

00:00:33 #4678 [Verbose] > │         method6(v12, v14, v13)                                               │

00:00:33 #4679 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:33 #4680 [Verbose] > │         struct (v1, v2)                                                      │

00:00:33 #4681 [Verbose] > │ and method7 (v0 : UH3, v1 : UH3) : UH3 =                                     │

00:00:33 #4682 [Verbose] > │     match v0 with                                                            │

00:00:33 #4683 [Verbose] > │     | UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)     │

00:00:33 #4684 [Verbose] > │         let v13 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v1)  │

00:00:33 #4685 [Verbose] > │         method7(v12, v13)                                                    │

00:00:33 #4686 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:33 #4687 [Verbose] > │         v1                                                                   │

00:00:33 #4688 [Verbose] > │ and closure4 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5 │

00:00:33 #4689 [Verbose] > │ : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 :       │

00:00:33 #4690 [Verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:33 #4691 [Verbose] > │ : float, v17 : float) : struct (float * float * float) =                     │

00:00:33 #4692 [Verbose] > │     let v18 : float = -1.0 * v2                                              │

00:00:33 #4693 [Verbose] > │     let v19 : float = -1.0 * v3                                              │

00:00:33 #4694 [Verbose] > │     let v20 : float = -1.0 * v4                                              │

00:00:33 #4695 [Verbose] > │     let v21 : float = v11 + v18                                              │

00:00:33 #4696 [Verbose] > │     let v22 : float = v12 + v19                                              │

00:00:33 #4697 [Verbose] > │     let v23 : float = v13 + v20                                              │

00:00:33 #4698 [Verbose] > │     let v24 : float = v21 * v21                                              │

00:00:33 #4699 [Verbose] > │     let v25 : float = v22 * v22                                              │

00:00:33 #4700 [Verbose] > │     let v26 : float = v24 + v25                                              │

00:00:33 #4701 [Verbose] > │     let v27 : float = v23 * v23                                              │

00:00:33 #4702 [Verbose] > │     let v28 : float = v26 + v27                                              │

00:00:33 #4703 [Verbose] > │     let v29 : float = sqrt v28                                               │

00:00:33 #4704 [Verbose] > │     let v30 : bool = v29 >= 0.06                                             │

00:00:33 #4705 [Verbose] > │     let v33 : float =                                                        │

00:00:33 #4706 [Verbose] > │         if v30 then                                                          │

00:00:33 #4707 [Verbose] > │             0.0                                                              │

00:00:33 #4708 [Verbose] > │         else                                                                 │

00:00:33 #4709 [Verbose] > │             let v31 : float = v29 - 0.06                                     │

00:00:33 #4710 [Verbose] > │             let v32 : float = -30.0 * v31                                    │

00:00:33 #4711 [Verbose] > │             v32                                                              │

00:00:33 #4712 [Verbose] > │     let v34 : float = v33 * v21                                              │

00:00:33 #4713 [Verbose] > │     let v35 : float = v33 * v22                                              │

00:00:33 #4714 [Verbose] > │     let v36 : float = v33 * v23                                              │

00:00:33 #4715 [Verbose] > │     let v37 : float = v34 / v29                                              │

00:00:33 #4716 [Verbose] > │     let v38 : float = v35 / v29                                              │

00:00:33 #4717 [Verbose] > │     let v39 : float = v36 / v29                                              │

00:00:33 #4718 [Verbose] > │     struct (v37, v38, v39)                                                   │

00:00:33 #4719 [Verbose] > │ and closure5 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 : │

00:00:33 #4720 [Verbose] > │ float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *     │

00:00:33 #4721 [Verbose] > │ float * float) =                                                             │

00:00:33 #4722 [Verbose] > │     struct (0.0, 0.0, 0.0)                                                   │

00:00:33 #4723 [Verbose] > │ and method8 (v0 : UH0, v1 : UH3, v2 : UH1) : UH1 =                           │

00:00:33 #4724 [Verbose] > │     match v1 with                                                            │

00:00:33 #4725 [Verbose] > │     | UH3_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* Cons *)    │

00:00:33 #4726 [Verbose] > │         let v14 : UH1 = method8(v0, v13, v2)                                 │

00:00:33 #4727 [Verbose] > │         let v15 : bool = v3 = 0                                              │

00:00:33 #4728 [Verbose] > │         let v134 : (struct (float * float * float * float * float * float *  │

00:00:33 #4729 [Verbose] > │ float * float * float) -> struct (float * float * float)) =                  │

00:00:33 #4730 [Verbose] > │             if v15 then                                                      │

00:00:33 #4731 [Verbose] > │                 let v42 : US0 =                                              │

00:00:33 #4732 [Verbose] > │                     match v0 with                                            │

00:00:33 #4733 [Verbose] > │                     | UH0_0(v16, v17, v18, v19, v20, v21, v22, v23, v24,     │

00:00:33 #4734 [Verbose] > │ v25) -> (* Cons *)                                                           │

00:00:33 #4735 [Verbose] > │                         match v25 with                                       │

00:00:33 #4736 [Verbose] > │                         | UH0_0(v26, v27, v28, v29, v30, v31, v32, v33, v34, │

00:00:33 #4737 [Verbose] > │ v35) -> (* Cons *)                                                           │

00:00:33 #4738 [Verbose] > │                             US0_1(v26, v27, v28, v29, v30, v31, v32, v33,    │

00:00:33 #4739 [Verbose] > │ v34)                                                                         │

00:00:33 #4740 [Verbose] > │                         | UH0_1 -> (* Nil *)                                 │

00:00:33 #4741 [Verbose] > │                             US0_0                                            │

00:00:33 #4742 [Verbose] > │                     | UH0_1 -> (* Nil *)                                     │

00:00:33 #4743 [Verbose] > │                         US0_0                                                │

00:00:33 #4744 [Verbose] > │                 let struct (v70 : float, v71 : float, v72 : float, v73 :     │

00:00:33 #4745 [Verbose] > │ float, v74 : float, v75 : float, v76 : float, v77 : float, v78 : float) =    │

00:00:33 #4746 [Verbose] > │                     match v42 with                                           │

00:00:33 #4747 [Verbose] > │                     | US0_0 -> (* None *)                                    │

00:00:33 #4748 [Verbose] > │                         failwith<struct (float * float * float * float *     │

00:00:33 #4749 [Verbose] > │ float * float * float * float * float)> "Option does not have a value."      │

00:00:33 #4750 [Verbose] > │                     | US0_1(v43, v44, v45, v46, v47, v48, v49, v50, v51) ->  │

00:00:33 #4751 [Verbose] > │ (* Some *)                                                                   │

00:00:33 #4752 [Verbose] > │                         struct (v43, v44, v45, v46, v47, v48, v49, v50, v51) │

00:00:33 #4753 [Verbose] > │                 closure4(v70, v71, v72, v73, v74, v75, v76, v77, v78)        │

00:00:33 #4754 [Verbose] > │             else                                                             │

00:00:33 #4755 [Verbose] > │                 let v80 : bool = v3 = 1                                      │

00:00:33 #4756 [Verbose] > │                 if v80 then                                                  │

00:00:33 #4757 [Verbose] > │                     let v94 : US0 =                                          │

00:00:33 #4758 [Verbose] > │                         match v0 with                                        │

00:00:33 #4759 [Verbose] > │                         | UH0_0(v81, v82, v83, v84, v85, v86, v87, v88, v89, │

00:00:33 #4760 [Verbose] > │ v90) -> (* Cons *)                                                           │

00:00:33 #4761 [Verbose] > │                             US0_1(v81, v82, v83, v84, v85, v86, v87, v88,    │

00:00:33 #4762 [Verbose] > │ v89)                                                                         │

00:00:33 #4763 [Verbose] > │                         | UH0_1 -> (* Nil *)                                 │

00:00:33 #4764 [Verbose] > │                             US0_0                                            │

00:00:33 #4765 [Verbose] > │                     let struct (v122 : float, v123 : float, v124 : float,    │

00:00:33 #4766 [Verbose] > │ v125 : float, v126 : float, v127 : float, v128 : float, v129 : float, v130 : │

00:00:33 #4767 [Verbose] > │ float) =                                                                     │

00:00:33 #4768 [Verbose] > │                         match v94 with                                       │

00:00:33 #4769 [Verbose] > │                         | US0_0 -> (* None *)                                │

00:00:33 #4770 [Verbose] > │                             failwith<struct (float * float * float * float * │

00:00:33 #4771 [Verbose] > │ float * float * float * float * float)> "Option does not have a value."      │

00:00:33 #4772 [Verbose] > │                         | US0_1(v95, v96, v97, v98, v99, v100, v101, v102,   │

00:00:33 #4773 [Verbose] > │ v103) -> (* Some *)                                                          │

00:00:33 #4774 [Verbose] > │                             struct (v95, v96, v97, v98, v99, v100, v101,     │

00:00:33 #4775 [Verbose] > │ v102, v103)                                                                  │

00:00:33 #4776 [Verbose] > │                     closure4(v122, v123, v124, v125, v126, v127, v128, v129, │

00:00:33 #4777 [Verbose] > │ v130)                                                                        │

00:00:33 #4778 [Verbose] > │                 else                                                         │

00:00:33 #4779 [Verbose] > │                     closure5()                                               │

00:00:33 #4780 [Verbose] > │         let struct (v135 : float, v136 : float, v137 : float) = v134 struct  │

00:00:33 #4781 [Verbose] > │ (v4, v5, v6, v7, v8, v9, v10, v11, v12)                                      │

00:00:33 #4782 [Verbose] > │         let v138 : float = v135 / v5                                         │

00:00:33 #4783 [Verbose] > │         let v139 : float = v136 / v5                                         │

00:00:33 #4784 [Verbose] > │         let v140 : float = v137 / v5                                         │

00:00:33 #4785 [Verbose] > │         UH1_0(0.0, 0.0, v10, v11, v12, 1.0, v138, v139, v140, v14)           │

00:00:33 #4786 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:33 #4787 [Verbose] > │         v2                                                                   │

00:00:33 #4788 [Verbose] > │ and closure3 () (v0 : UH0) : UH1 =                                           │

00:00:33 #4789 [Verbose] > │     let v1 : UH3 = UH3_1                                                     │

00:00:33 #4790 [Verbose] > │     let v2 : int32 = 0                                                       │

00:00:33 #4791 [Verbose] > │     let struct (v3 : UH3, v4 : int32) = method6(v0, v1, v2)                  │

00:00:33 #4792 [Verbose] > │     let v5 : UH3 = UH3_1                                                     │

00:00:33 #4793 [Verbose] > │     let v6 : UH3 = method7(v3, v5)                                           │

00:00:33 #4794 [Verbose] > │     let v7 : UH1 = UH1_1                                                     │

00:00:33 #4795 [Verbose] > │     let v8 : UH1 = method8(v0, v6, v7)                                       │

00:00:33 #4796 [Verbose] > │     v8                                                                       │

00:00:33 #4797 [Verbose] > │ and method10 (v0 : (UH0 -> UH0), v1 : UH0, v2 : int32) : UH0 =               │

00:00:33 #4798 [Verbose] > │     let v3 : bool = v2 <= 0                                                  │

00:00:33 #4799 [Verbose] > │     if v3 then                                                               │

00:00:33 #4800 [Verbose] > │         v1                                                                   │

00:00:33 #4801 [Verbose] > │     else                                                                     │

00:00:33 #4802 [Verbose] > │         let v4 : UH0 = v0 v1                                                 │

00:00:33 #4803 [Verbose] > │         let v5 : int32 = v2 - 1                                              │

00:00:33 #4804 [Verbose] > │         method10(v0, v4, v5)                                                 │

00:00:33 #4805 [Verbose] > │ and method11 (v0 : UH4, v1 : UH4) : UH4 =                                    │

00:00:33 #4806 [Verbose] > │     match v0 with                                                            │

00:00:33 #4807 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #4808 [Verbose] > │         let v4 : UH4 = UH4_0(v2, v1)                                         │

00:00:33 #4809 [Verbose] > │         method11(v3, v4)                                                     │

00:00:33 #4810 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:33 #4811 [Verbose] > │         v1                                                                   │

00:00:33 #4812 [Verbose] > │ and method9 (v0 : (UH0 -> UH0), v1 : UH4, v2 : int32) : UH4 =                │

00:00:33 #4813 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:33 #4814 [Verbose] > │     let v4 : float = 0.16                                                    │

00:00:33 #4815 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:33 #4816 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:33 #4817 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:33 #4818 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:33 #4819 [Verbose] > │     let v9 : float = 0.2                                                     │

00:00:33 #4820 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:33 #4821 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:33 #4822 [Verbose] > │     let v12 : float = 1.0                                                    │

00:00:33 #4823 [Verbose] > │     let v13 : float = 0.02                                                   │

00:00:33 #4824 [Verbose] > │     let v14 : float = 0.0                                                    │

00:00:33 #4825 [Verbose] > │     let v15 : float = 0.0                                                    │

00:00:33 #4826 [Verbose] > │     let v16 : float = 0.0                                                    │

00:00:33 #4827 [Verbose] > │     let v17 : float = 0.0                                                    │

00:00:33 #4828 [Verbose] > │     let v18 : UH0 = UH0_1                                                    │

00:00:33 #4829 [Verbose] > │     let v19 : UH0 = UH0_0(v3, v4, v12, v13, v14, v8, v15, v16, v17, v18)     │

00:00:33 #4830 [Verbose] > │     let v20 : UH0 = UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v19)         │

00:00:33 #4831 [Verbose] > │     let v21 : UH0 = method10(v0, v20, v2)                                    │

00:00:33 #4832 [Verbose] > │     let v35 : US0 =                                                          │

00:00:33 #4833 [Verbose] > │         match v21 with                                                       │

00:00:33 #4834 [Verbose] > │         | UH0_0(v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) -> (* Cons │

00:00:33 #4835 [Verbose] > │ *)                                                                           │

00:00:33 #4836 [Verbose] > │             US0_1(v22, v23, v24, v25, v26, v27, v28, v29, v30)               │

00:00:33 #4837 [Verbose] > │         | UH0_1 -> (* Nil *)                                                 │

00:00:33 #4838 [Verbose] > │             US0_0                                                            │

00:00:33 #4839 [Verbose] > │     let struct (v63 : float, v64 : float, v65 : float, v66 : float, v67 :    │

00:00:33 #4840 [Verbose] > │ float, v68 : float, v69 : float, v70 : float, v71 : float) =                 │

00:00:33 #4841 [Verbose] > │         match v35 with                                                       │

00:00:33 #4842 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:33 #4843 [Verbose] > │             failwith<struct (float * float * float * float * float * float * │

00:00:33 #4844 [Verbose] > │ float * float * float)> "Option does not have a value."                      │

00:00:33 #4845 [Verbose] > │         | US0_1(v36, v37, v38, v39, v40, v41, v42, v43, v44) -> (* Some *)   │

00:00:33 #4846 [Verbose] > │             struct (v36, v37, v38, v39, v40, v41, v42, v43, v44)             │

00:00:33 #4847 [Verbose] > │     let v72 : bool = v68 <= 10.0                                             │

00:00:33 #4848 [Verbose] > │     if v72 then                                                              │

00:00:33 #4849 [Verbose] > │         let v73 : UH4 = UH4_0(v21, v1)                                       │

00:00:33 #4850 [Verbose] > │         let v74 : int32 = v2 + 1                                             │

00:00:33 #4851 [Verbose] > │         method9(v0, v73, v74)                                                │

00:00:33 #4852 [Verbose] > │     else                                                                     │

00:00:33 #4853 [Verbose] > │         let v76 : UH4 = UH4_1                                                │

00:00:33 #4854 [Verbose] > │         method11(v1, v76)                                                    │

00:00:33 #4855 [Verbose] > │ and method13 (v0 : UH0, v1 : UH6) : UH6 =                                    │

00:00:33 #4856 [Verbose] > │     match v0 with                                                            │

00:00:33 #4857 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:33 #4858 [Verbose] > │         let v12 : UH6 = method13(v11, v1)                                    │

00:00:33 #4859 [Verbose] > │         let v13 : float = v8 * v8                                            │

00:00:33 #4860 [Verbose] > │         let v14 : float = v9 * v9                                            │

00:00:33 #4861 [Verbose] > │         let v15 : float = v13 + v14                                          │

00:00:33 #4862 [Verbose] > │         let v16 : float = v10 * v10                                          │

00:00:33 #4863 [Verbose] > │         let v17 : float = v15 + v16                                          │

00:00:33 #4864 [Verbose] > │         let v18 : float = sqrt v17                                           │

00:00:33 #4865 [Verbose] > │         let v19 : float = 0.5 * v3                                           │

00:00:33 #4866 [Verbose] > │         let v20 : float = v18 ** 2.0                                         │

00:00:33 #4867 [Verbose] > │         let v21 : float = v19 * v20                                          │

00:00:33 #4868 [Verbose] > │         UH6_0(v21, v12)                                                      │

00:00:33 #4869 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:33 #4870 [Verbose] > │         v1                                                                   │

00:00:33 #4871 [Verbose] > │ and method14 (v0 : UH6, v1 : float) : float =                                │

00:00:33 #4872 [Verbose] > │     match v0 with                                                            │

00:00:33 #4873 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #4874 [Verbose] > │         let v4 : float = v1 + v2                                             │

00:00:33 #4875 [Verbose] > │         method14(v3, v4)                                                     │

00:00:33 #4876 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:33 #4877 [Verbose] > │         v1                                                                   │

00:00:33 #4878 [Verbose] > │ and method12 (v0 : UH4, v1 : UH5) : UH5 =                                    │

00:00:33 #4879 [Verbose] > │     match v0 with                                                            │

00:00:33 #4880 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #4881 [Verbose] > │         let v4 : UH5 = method12(v3, v1)                                      │

00:00:33 #4882 [Verbose] > │         let v18 : US0 =                                                      │

00:00:33 #4883 [Verbose] > │             match v2 with                                                    │

00:00:33 #4884 [Verbose] > │             | UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons  │

00:00:33 #4885 [Verbose] > │ *)                                                                           │

00:00:33 #4886 [Verbose] > │                 US0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13)                │

00:00:33 #4887 [Verbose] > │             | UH0_1 -> (* Nil *)                                             │

00:00:33 #4888 [Verbose] > │                 US0_0                                                        │

00:00:33 #4889 [Verbose] > │         let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50  │

00:00:33 #4890 [Verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) =               │

00:00:33 #4891 [Verbose] > │             match v18 with                                                   │

00:00:33 #4892 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:33 #4893 [Verbose] > │                 failwith<struct (float * float * float * float * float *     │

00:00:33 #4894 [Verbose] > │ float * float * float * float)> "Option does not have a value."              │

00:00:33 #4895 [Verbose] > │             | US0_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some  │

00:00:33 #4896 [Verbose] > │ *)                                                                           │

00:00:33 #4897 [Verbose] > │                 struct (v19, v20, v21, v22, v23, v24, v25, v26, v27)         │

00:00:33 #4898 [Verbose] > │         let v55 : UH6 = UH6_1                                                │

00:00:33 #4899 [Verbose] > │         let v56 : UH6 = method13(v2, v55)                                    │

00:00:33 #4900 [Verbose] > │         let v57 : float = 0.0                                                │

00:00:33 #4901 [Verbose] > │         let v58 : float = method14(v56, v57)                                 │

00:00:33 #4902 [Verbose] > │         UH5_0(v51, v58, v4)                                                  │

00:00:33 #4903 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:33 #4904 [Verbose] > │         v1                                                                   │

00:00:33 #4905 [Verbose] > │ and method15 (v0 : UH5, v1 : UH6, v2 : UH6) : struct (UH6 * UH6) =           │

00:00:33 #4906 [Verbose] > │     match v0 with                                                            │

00:00:33 #4907 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:33 #4908 [Verbose] > │         let v6 : UH6 = UH6_0(v3, v1)                                         │

00:00:33 #4909 [Verbose] > │         let v7 : UH6 = UH6_0(v4, v2)                                         │

00:00:33 #4910 [Verbose] > │         method15(v5, v6, v7)                                                 │

00:00:33 #4911 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:33 #4912 [Verbose] > │         struct (v1, v2)                                                      │

00:00:33 #4913 [Verbose] > │ and method16 (v0 : UH6, v1 : UH6) : UH6 =                                    │

00:00:33 #4914 [Verbose] > │     match v0 with                                                            │

00:00:33 #4915 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #4916 [Verbose] > │         let v4 : UH6 = UH6_0(v2, v1)                                         │

00:00:33 #4917 [Verbose] > │         method16(v3, v4)                                                     │

00:00:33 #4918 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:33 #4919 [Verbose] > │         v1                                                                   │

00:00:33 #4920 [Verbose] > │ and method18 (v0 : UH1, v1 : UH1) : UH1 =                                    │

00:00:33 #4921 [Verbose] > │     match v0 with                                                            │

00:00:33 #4922 [Verbose] > │     | UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* Cons *)          │

00:00:33 #4923 [Verbose] > │         let v12 : UH1 = UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v1)       │

00:00:33 #4924 [Verbose] > │         method18(v11, v12)                                                   │

00:00:33 #4925 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:33 #4926 [Verbose] > │         v1                                                                   │

00:00:33 #4927 [Verbose] > │ and method17 (v0 : UH1, v1 : UH1, v2 : UH1) : UH1 =                          │

00:00:33 #4928 [Verbose] > │     match v1 with                                                            │

00:00:33 #4929 [Verbose] > │     | UH1_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* Cons *)         │

00:00:33 #4930 [Verbose] > │         match v2 with                                                        │

00:00:33 #4931 [Verbose] > │         | UH1_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (* Cons │

00:00:33 #4932 [Verbose] > │ *)                                                                           │

00:00:33 #4933 [Verbose] > │             let v23 : float = v3 + v13                                       │

00:00:33 #4934 [Verbose] > │             let v24 : float = v4 + v14                                       │

00:00:33 #4935 [Verbose] > │             let v25 : float = v8 + v18                                       │

00:00:33 #4936 [Verbose] > │             let v26 : float = v5 + v15                                       │

00:00:33 #4937 [Verbose] > │             let v27 : float = v6 + v16                                       │

00:00:33 #4938 [Verbose] > │             let v28 : float = v7 + v17                                       │

00:00:33 #4939 [Verbose] > │             let v29 : float = v9 + v19                                       │

00:00:33 #4940 [Verbose] > │             let v30 : float = v10 + v20                                      │

00:00:33 #4941 [Verbose] > │             let v31 : float = v11 + v21                                      │

00:00:33 #4942 [Verbose] > │             let v32 : UH1 = UH1_0(v23, v24, v26, v27, v28, v25, v29, v30,    │

00:00:33 #4943 [Verbose] > │ v31, v0)                                                                     │

00:00:33 #4944 [Verbose] > │             method17(v32, v12, v22)                                          │

00:00:33 #4945 [Verbose] > │         | _ ->                                                               │

00:00:33 #4946 [Verbose] > │             let v34 : UH1 = UH1_1                                            │

00:00:33 #4947 [Verbose] > │             method18(v0, v34)                                                │

00:00:33 #4948 [Verbose] > │     | _ ->                                                                   │

00:00:33 #4949 [Verbose] > │         let v37 : UH1 = UH1_1                                                │

00:00:33 #4950 [Verbose] > │         method18(v0, v37)                                                    │

00:00:33 #4951 [Verbose] > │ and closure8 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =              │

00:00:33 #4952 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:33 #4953 [Verbose] > │     let v4 : float = v0 / 2.0                                                │

00:00:33 #4954 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:33 #4955 [Verbose] > │     let v6 : UH0 = method1(v4, v5, v3, v2)                                   │

00:00:33 #4956 [Verbose] > │     let v7 : UH1 = v1 v6                                                     │

00:00:33 #4957 [Verbose] > │     let v8 : UH0 = UH0_1                                                     │

00:00:33 #4958 [Verbose] > │     let v9 : UH0 = method1(v4, v8, v7, v2)                                   │

00:00:33 #4959 [Verbose] > │     let v10 : UH1 = v1 v9                                                    │

00:00:33 #4960 [Verbose] > │     let v11 : UH0 = UH0_1                                                    │

00:00:33 #4961 [Verbose] > │     let v12 : UH0 = method1(v0, v11, v10, v2)                                │

00:00:33 #4962 [Verbose] > │     let v13 : UH1 = v1 v12                                                   │

00:00:33 #4963 [Verbose] > │     let v14 : float = v0 / 6.0                                               │

00:00:33 #4964 [Verbose] > │     let v15 : UH1 = UH1_1                                                    │

00:00:33 #4965 [Verbose] > │     let v16 : UH1 = method17(v15, v3, v7)                                    │

00:00:33 #4966 [Verbose] > │     let v17 : UH1 = UH1_1                                                    │

00:00:33 #4967 [Verbose] > │     let v18 : UH1 = method17(v17, v16, v7)                                   │

00:00:33 #4968 [Verbose] > │     let v19 : UH1 = UH1_1                                                    │

00:00:33 #4969 [Verbose] > │     let v20 : UH1 = method17(v19, v18, v10)                                  │

00:00:33 #4970 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:33 #4971 [Verbose] > │     let v22 : UH1 = method17(v21, v20, v10)                                  │

00:00:33 #4972 [Verbose] > │     let v23 : UH1 = UH1_1                                                    │

00:00:33 #4973 [Verbose] > │     let v24 : UH1 = method17(v23, v22, v13)                                  │

00:00:33 #4974 [Verbose] > │     let v25 : UH0 = UH0_1                                                    │

00:00:33 #4975 [Verbose] > │     let v26 : UH0 = method1(v14, v25, v24, v2)                               │

00:00:33 #4976 [Verbose] > │     v26                                                                      │

00:00:33 #4977 [Verbose] > │ and closure7 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =               │

00:00:33 #4978 [Verbose] > │     closure8(v0, v1)                                                         │

00:00:33 #4979 [Verbose] > │ and closure6 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =              │

00:00:33 #4980 [Verbose] > │     closure7(v0)                                                             │

00:00:33 #4981 [Verbose] > │ and method19 (v0 : UH4, v1 : UH5) : UH5 =                                    │

00:00:33 #4982 [Verbose] > │     match v0 with                                                            │

00:00:33 #4983 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #4984 [Verbose] > │         let v4 : UH5 = method19(v3, v1)                                      │

00:00:33 #4985 [Verbose] > │         let v18 : US0 =                                                      │

00:00:33 #4986 [Verbose] > │             match v2 with                                                    │

00:00:33 #4987 [Verbose] > │             | UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* Cons  │

00:00:33 #4988 [Verbose] > │ *)                                                                           │

00:00:33 #4989 [Verbose] > │                 US0_1(v5, v6, v7, v8, v9, v10, v11, v12, v13)                │

00:00:33 #4990 [Verbose] > │             | UH0_1 -> (* Nil *)                                             │

00:00:33 #4991 [Verbose] > │                 US0_0                                                        │

00:00:33 #4992 [Verbose] > │         let struct (v46 : float, v47 : float, v48 : float, v49 : float, v50  │

00:00:33 #4993 [Verbose] > │ : float, v51 : float, v52 : float, v53 : float, v54 : float) =               │

00:00:33 #4994 [Verbose] > │             match v18 with                                                   │

00:00:33 #4995 [Verbose] > │             | US0_0 -> (* None *)                                            │

00:00:33 #4996 [Verbose] > │                 failwith<struct (float * float * float * float * float *     │

00:00:33 #4997 [Verbose] > │ float * float * float * float)> "Option does not have a value."              │

00:00:33 #4998 [Verbose] > │             | US0_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some  │

00:00:33 #4999 [Verbose] > │ *)                                                                           │

00:00:33 #5000 [Verbose] > │                 struct (v19, v20, v21, v22, v23, v24, v25, v26, v27)         │

00:00:33 #5001 [Verbose] > │         let v55 : UH6 = UH6_1                                                │

00:00:33 #5002 [Verbose] > │         let v56 : UH6 = method13(v2, v55)                                    │

00:00:33 #5003 [Verbose] > │         let v57 : float = 0.0                                                │

00:00:33 #5004 [Verbose] > │         let v58 : float = method14(v56, v57)                                 │

00:00:33 #5005 [Verbose] > │         UH5_0(v51, v58, v4)                                                  │

00:00:33 #5006 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:33 #5007 [Verbose] > │         v1                                                                   │

00:00:33 #5008 [Verbose] > │ and method21 (v0 : UH6, v1 : int32) : int32 =                                │

00:00:33 #5009 [Verbose] > │     match v0 with                                                            │

00:00:33 #5010 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:33 #5011 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:33 #5012 [Verbose] > │         method21(v3, v4)                                                     │

00:00:33 #5013 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:33 #5014 [Verbose] > │         v1                                                                   │

00:00:33 #5015 [Verbose] > │ and method22 (v0 : (float []), v1 : UH6, v2 : int32) : int32 =               │

00:00:33 #5016 [Verbose] > │     match v1 with                                                            │

00:00:33 #5017 [Verbose] > │     | UH6_0(v3, v4) -> (* Cons *)                                            │

00:00:33 #5018 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:33 #5019 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:33 #5020 [Verbose] > │         method22(v0, v4, v5)                                                 │

00:00:33 #5021 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:33 #5022 [Verbose] > │         v2                                                                   │

00:00:33 #5023 [Verbose] > │ and method20 (v0 : UH6) : (float []) =                                       │

00:00:33 #5024 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:33 #5025 [Verbose] > │     let v2 : int32 = method21(v0, v1)                                        │

00:00:33 #5026 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:33 #5027 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:33 #5028 [Verbose] > │     let v5 : int32 = method22(v3, v0, v4)                                    │

00:00:33 #5029 [Verbose] > │     v3                                                                       │

00:00:33 #5030 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:33 #5031 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:33 #5032 [Verbose] > │     let v0 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure0()          │

00:00:33 #5033 [Verbose] > │     let v1 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v0 0.03                        │

00:00:33 #5034 [Verbose] > │     let v2 : (UH0 -> UH1) = closure3()                                       │

00:00:33 #5035 [Verbose] > │     let v3 : (UH0 -> UH0) = v1 v2                                            │

00:00:33 #5036 [Verbose] > │     let v4 : UH4 = UH4_1                                                     │

00:00:33 #5037 [Verbose] > │     let v5 : int32 = 0                                                       │

00:00:33 #5038 [Verbose] > │     let v6 : UH4 = method9(v3, v4, v5)                                       │

00:00:33 #5039 [Verbose] > │     let v7 : UH5 = UH5_1                                                     │

00:00:33 #5040 [Verbose] > │     let v8 : UH5 = method12(v6, v7)                                          │

00:00:33 #5041 [Verbose] > │     let v9 : UH6 = UH6_1                                                     │

00:00:33 #5042 [Verbose] > │     let v10 : UH6 = UH6_1                                                    │

00:00:33 #5043 [Verbose] > │     let struct (v11 : UH6, v12 : UH6) = method15(v8, v9, v10)                │

00:00:33 #5044 [Verbose] > │     let v13 : UH6 = UH6_1                                                    │

00:00:33 #5045 [Verbose] > │     let v14 : UH6 = method16(v11, v13)                                       │

00:00:33 #5046 [Verbose] > │     let v15 : UH6 = UH6_1                                                    │

00:00:33 #5047 [Verbose] > │     let v16 : UH6 = method16(v12, v15)                                       │

00:00:33 #5048 [Verbose] > │     let v17 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure6()         │

00:00:33 #5049 [Verbose] > │     let v18 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v17 0.03                      │

00:00:33 #5050 [Verbose] > │     let v19 : (UH0 -> UH0) = v18 v2                                          │

00:00:33 #5051 [Verbose] > │     let v20 : UH4 = UH4_1                                                    │

00:00:33 #5052 [Verbose] > │     let v21 : int32 = 0                                                      │

00:00:33 #5053 [Verbose] > │     let v22 : UH4 = method9(v19, v20, v21)                                   │

00:00:33 #5054 [Verbose] > │     let v23 : UH5 = UH5_1                                                    │

00:00:33 #5055 [Verbose] > │     let v24 : UH5 = method19(v22, v23)                                       │

00:00:33 #5056 [Verbose] > │     let v25 : UH6 = UH6_1                                                    │

00:00:33 #5057 [Verbose] > │     let v26 : UH6 = UH6_1                                                    │

00:00:33 #5058 [Verbose] > │     let struct (v27 : UH6, v28 : UH6) = method15(v24, v25, v26)              │

00:00:33 #5059 [Verbose] > │     let v29 : UH6 = UH6_1                                                    │

00:00:33 #5060 [Verbose] > │     let v30 : UH6 = method16(v27, v29)                                       │

00:00:33 #5061 [Verbose] > │     let v31 : UH6 = UH6_1                                                    │

00:00:33 #5062 [Verbose] > │     let v32 : UH6 = method16(v28, v31)                                       │

00:00:33 #5063 [Verbose] > │     let v33 : (float []) = method20(v14)                                     │

00:00:33 #5064 [Verbose] > │     let v34 : (float []) = method20(v16)                                     │

00:00:33 #5065 [Verbose] > │     let v35 : (float []) = method20(v30)                                     │

00:00:33 #5066 [Verbose] > │     let v36 : (float []) = method20(v32)                                     │

00:00:33 #5067 [Verbose] > │     let v37 : string = "euler-cromer"                                        │

00:00:33 #5068 [Verbose] > │     let v38 : string = "runge-kutta 4"                                       │

00:00:33 #5069 [Verbose] > │     let v39 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:33 #5070 [Verbose] > │ (v37, v33, v34); struct (v38, v35, v36)|]                                    │

00:00:33 #5071 [Verbose] > │     let v40 : string = "system kinetic energy versus time"                   │

00:00:33 #5072 [Verbose] > │     let v41 : string = "time (s)"                                            │

00:00:33 #5073 [Verbose] > │     let v42 : string = "system kinetic energy (j)"                           │

00:00:33 #5074 [Verbose] > │     struct (v40, v41, v42, v39)                                              │

00:00:33 #5075 [Verbose] > │ method0()                                                                    │

00:00:33 #5076 [Verbose] > │                                                                              │

00:00:33 #5077 [Verbose] > │                                                                              │

00:00:33 #5078 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #5079 [Verbose] >

00:00:33 #5080 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:33 #5081 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:33 #5082 [Verbose] > │ ### wave 1                                                                   │

00:00:33 #5083 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:33 #5084 [Verbose] >

00:00:33 #5085 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:33 #5086 [Verbose] > // // test

00:00:33 #5087 [Verbose] >

00:00:33 #5088 [Verbose] > inl linear_spring k re (particle_state st1) (particle_state st2) =

00:00:33 #5089 [Verbose] >     inl r1 = st1.pos_vec

00:00:33 #5090 [Verbose] >     inl r2 = st2.pos_vec

00:00:33 #5091 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:33 #5092 [Verbose] >     inl r21mag = magnitude r21

00:00:33 #5093 [Verbose] >     -k * (r21mag - re) *^ r21 ^/ r21mag

00:00:33 #5094 [Verbose] >

00:00:33 #5095 [Verbose] > inl fixed_linear_spring k re r1 =

00:00:33 #5096 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:33 #5097 [Verbose] >     linear_spring k re (particle_state { default_particle_state' with pos_vec =

00:00:33 #5098 [Verbose] > r1 })

00:00:33 #5099 [Verbose] >

00:00:33 #5100 [Verbose] > inl forces_string () =

00:00:33 #5101 [Verbose] >     [[

00:00:33 #5102 [Verbose] >         ExternalForce (0, fixed_linear_spring 5384 0 (zero_vec ()))

00:00:33 #5103 [Verbose] >         ExternalForce (63, fixed_linear_spring 5384 0 (0.65 *^ i_hat ()))

00:00:33 #5104 [Verbose] >     ]] /@ (

00:00:33 #5105 [Verbose] >         listm'.init_series 0 59 1

00:00:33 #5106 [Verbose] >         |> listm.map (fun n => InternalForce (n, n + 1, linear_spring 5384 0))

00:00:33 #5107 [Verbose] >     )

00:00:33 #5108 [Verbose] >

00:00:33 #5109 [Verbose] > inl string_update dt =

00:00:33 #5110 [Verbose] >     update_mps (runge_kutta_4 dt) (forces_string ())

00:00:33 #5111 [Verbose] >

00:00:33 #5112 [Verbose] > inl string_initial_overtone n =

00:00:33 #5113 [Verbose] >     inl ball_mass = 0.0008293 * 0.65 / 64

00:00:33 #5114 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:33 #5115 [Verbose] >     listm'.init_series 0.01 0.64 0.01

00:00:33 #5116 [Verbose] >     |> listm.map (fun x =>

00:00:33 #5117 [Verbose] >         inl y = 0.005 * sin (conv n * pi * x / 0.65)

00:00:33 #5118 [Verbose] >         particle_state {

00:00:33 #5119 [Verbose] >             default_particle_state' with

00:00:33 #5120 [Verbose] >                 mass = ball_mass

00:00:33 #5121 [Verbose] >                 pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()

00:00:33 #5122 [Verbose] >                 velocity = zero_vec ()

00:00:33 #5123 [Verbose] >         }

00:00:33 #5124 [Verbose] >     )

00:00:33 #5125 [Verbose] >     |> multi_particle_state

00:00:33 #5126 [Verbose] >

00:00:33 #5127 [Verbose] > inl string_initial_pluck () =

00:00:33 #5128 [Verbose] >     inl ball_mass = 0.0008293 * 0.65 / 64

00:00:33 #5129 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:33 #5130 [Verbose] >     listm'.init_series 0.01 0.64 0.01

00:00:33 #5131 [Verbose] >     |> listm.map (fun x =>

00:00:33 #5132 [Verbose] >         inl y =

00:00:33 #5133 [Verbose] >             inl n = if x <= 0.51 then 0 else 0.65

00:00:33 #5134 [Verbose] >             0.005 / (0.51 - n) * (x - n)

00:00:33 #5135 [Verbose] >         particle_state {

00:00:33 #5136 [Verbose] >             default_particle_state' with

00:00:33 #5137 [Verbose] >                 mass = ball_mass

00:00:33 #5138 [Verbose] >                 pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()

00:00:33 #5139 [Verbose] >                 velocity = zero_vec ()

00:00:33 #5140 [Verbose] >         }

00:00:33 #5141 [Verbose] >     )

00:00:33 #5142 [Verbose] >     |> multi_particle_state

00:00:33 #5143 [Verbose] >

00:00:33 #5144 [Verbose] > let main () =

00:00:33 #5145 [Verbose] >     inl ~frames = listm'.init_series 0 9 1f64

00:00:33 #5146 [Verbose] >     inl initial_state = string_initial_overtone 3i32

00:00:33 #5147 [Verbose] >     inl frames =

00:00:33 #5148 [Verbose] >         frames

00:00:33 #5149 [Verbose] >         |> listm.map (fun n =>

00:00:33 #5150 [Verbose] >             inl (multi_particle_state sts) =

00:00:33 #5151 [Verbose] >                 seq.iterate' (string_update 0.000025) initial_state |> fun f =>

00:00:33 #5152 [Verbose] > f 0f64

00:00:33 #5153 [Verbose] >             inl rs =

00:00:33 #5154 [Verbose] >                 [[ zero_vec () ]]

00:00:33 #5155 [Verbose] >                 /@ (sts |> listm.map (fun (particle_state st) => st.pos_vec))

00:00:33 #5156 [Verbose] >                 /@ [[ 0.65 *^ i_hat () ]]

00:00:33 #5157 [Verbose] >             inl x, y =

00:00:33 #5158 [Verbose] >                 rs

00:00:33 #5159 [Verbose] >                 |> listm.map (fun r => r.x, r.y)

00:00:33 #5160 [Verbose] >                 |> listm'.unzip

00:00:33 #5161 [Verbose] >             inl x : a i32 _ = x |> listm.toArray

00:00:33 #5162 [Verbose] >             inl y : a i32 _ = y |> listm.toArray

00:00:33 #5163 [Verbose] >             x, y

00:00:33 #5164 [Verbose] >         )

00:00:33 #5165 [Verbose] >         |> listm.toArray : a i32 _

00:00:33 #5166 [Verbose] >

00:00:33 #5167 [Verbose] >     inl n = 0i32

00:00:33 #5168 [Verbose] >

00:00:33 #5169 [Verbose] >     inl x, y = index frames n

00:00:33 #5170 [Verbose] >

00:00:33 #5171 [Verbose] >     "wave",

00:00:33 #5172 [Verbose] >     "position (m)",

00:00:33 #5173 [Verbose] >     "displacement (m)",

00:00:33 #5174 [Verbose] >     ;[[

00:00:33 #5175 [Verbose] >         ($"$\"{!n}\"" : string), x, y

00:00:33 #5176 [Verbose] >     ]]

00:00:34 #5177 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0610-1016-1fd754521a1a\main.spi

00:00:34 #5178 [Verbose] >

00:00:34 #5179 [Verbose] > ╭─[ 410.98ms - return value ]──────────────────────────────────────────────────╮

00:00:34 #5180 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:34 #5181 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:34 #5182 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:34 #5183 [Verbose] > │ stroke="none"/>                                                              │

00:00:34 #5184 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:34 #5185 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:34 #5186 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:34 #5187 [Verbose] > │ wave                                                                         │

00:00:34 #5188 [Verbose] > │ </text>                                                                      │

00:00:34 #5189 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │

00:00:34 #5190 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #5191 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:34 #5192 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #5193 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │

00:00:34 #5194 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #5195 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="85" y1="424" x2="85" │

00:00:34 #5196 [Verbose] > │ y2="75"/>                                                                    │

00:00:34 #5197 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="93" y1="424" x2="93" │

00:00:34 #5198 [Verbose] > │ y2...                                                                        │

00:00:34 #5199 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:34 #5200 [Verbose] >

00:00:34 #5201 [Verbose] > ╭─[ 425.16ms - stdout ]────────────────────────────────────────────────────────╮

00:00:34 #5202 [Verbose] > │ type UH0 =                                                                   │

00:00:34 #5203 [Verbose] > │     | UH0_0 of float * UH0                                                   │

00:00:34 #5204 [Verbose] > │     | UH0_1                                                                  │

00:00:34 #5205 [Verbose] > │ and UH1 =                                                                    │

00:00:34 #5206 [Verbose] > │     | UH1_0 of (float []) * (float []) * UH1                                 │

00:00:34 #5207 [Verbose] > │     | UH1_1                                                                  │

00:00:34 #5208 [Verbose] > │ let rec method3 (v0 : UH0, v1 : int32) : int32 =                             │

00:00:34 #5209 [Verbose] > │     match v0 with                                                            │

00:00:34 #5210 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:34 #5211 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:34 #5212 [Verbose] > │         method3(v3, v4)                                                      │

00:00:34 #5213 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:34 #5214 [Verbose] > │         v1                                                                   │

00:00:34 #5215 [Verbose] > │ and method4 (v0 : (float []), v1 : UH0, v2 : int32) : int32 =                │

00:00:34 #5216 [Verbose] > │     match v1 with                                                            │

00:00:34 #5217 [Verbose] > │     | UH0_0(v3, v4) -> (* Cons *)                                            │

00:00:34 #5218 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:34 #5219 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:34 #5220 [Verbose] > │         method4(v0, v4, v5)                                                  │

00:00:34 #5221 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:34 #5222 [Verbose] > │         v2                                                                   │

00:00:34 #5223 [Verbose] > │ and method2 (v0 : UH0) : (float []) =                                        │

00:00:34 #5224 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:34 #5225 [Verbose] > │     let v2 : int32 = method3(v0, v1)                                         │

00:00:34 #5226 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:34 #5227 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:34 #5228 [Verbose] > │     let v5 : int32 = method4(v3, v0, v4)                                     │

00:00:34 #5229 [Verbose] > │     v3                                                                       │

00:00:34 #5230 [Verbose] > │ and method1 (v0 : UH0, v1 : UH1) : UH1 =                                     │

00:00:34 #5231 [Verbose] > │     match v0 with                                                            │

00:00:34 #5232 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:34 #5233 [Verbose] > │         let v4 : UH1 = method1(v3, v1)                                       │

00:00:34 #5234 [Verbose] > │         let v5 : float = 0.0                                                 │

00:00:34 #5235 [Verbose] > │         let v6 : float = 0.01                                                │

00:00:34 #5236 [Verbose] > │         let v7 : float = 0.02                                                │

00:00:34 #5237 [Verbose] > │         let v8 : float = 0.03                                                │

00:00:34 #5238 [Verbose] > │         let v9 : float = 0.04                                                │

00:00:34 #5239 [Verbose] > │         let v10 : float = 0.05                                               │

00:00:34 #5240 [Verbose] > │         let v11 : float = 0.060000000000000005                               │

00:00:34 #5241 [Verbose] > │         let v12 : float = 0.06999999999999999                                │

00:00:34 #5242 [Verbose] > │         let v13 : float = 0.08                                               │

00:00:34 #5243 [Verbose] > │         let v14 : float = 0.09                                               │

00:00:34 #5244 [Verbose] > │         let v15 : float = 0.09999999999999999                                │

00:00:34 #5245 [Verbose] > │         let v16 : float = 0.11                                               │

00:00:34 #5246 [Verbose] > │         let v17 : float = 0.12                                               │

00:00:34 #5247 [Verbose] > │         let v18 : float = 0.13                                               │

00:00:34 #5248 [Verbose] > │         let v19 : float = 0.14                                               │

00:00:34 #5249 [Verbose] > │         let v20 : float = 0.15000000000000002                                │

00:00:34 #5250 [Verbose] > │         let v21 : float = 0.16                                               │

00:00:34 #5251 [Verbose] > │         let v22 : float = 0.17                                               │

00:00:34 #5252 [Verbose] > │         let v23 : float = 0.18000000000000002                                │

00:00:34 #5253 [Verbose] > │         let v24 : float = 0.19                                               │

00:00:34 #5254 [Verbose] > │         let v25 : float = 0.2                                                │

00:00:34 #5255 [Verbose] > │         let v26 : float = 0.21000000000000002                                │

00:00:34 #5256 [Verbose] > │         let v27 : float = 0.22                                               │

00:00:34 #5257 [Verbose] > │         let v28 : float = 0.23                                               │

00:00:34 #5258 [Verbose] > │         let v29 : float = 0.24000000000000002                                │

00:00:34 #5259 [Verbose] > │         let v30 : float = 0.25                                               │

00:00:34 #5260 [Verbose] > │         let v31 : float = 0.26                                               │

00:00:34 #5261 [Verbose] > │         let v32 : float = 0.27                                               │

00:00:34 #5262 [Verbose] > │         let v33 : float = 0.28                                               │

00:00:34 #5263 [Verbose] > │         let v34 : float = 0.29000000000000004                                │

00:00:34 #5264 [Verbose] > │         let v35 : float = 0.3                                                │

00:00:34 #5265 [Verbose] > │         let v36 : float = 0.31                                               │

00:00:34 #5266 [Verbose] > │         let v37 : float = 0.32                                               │

00:00:34 #5267 [Verbose] > │         let v38 : float = 0.33                                               │

00:00:34 #5268 [Verbose] > │         let v39 : float = 0.34                                               │

00:00:34 #5269 [Verbose] > │         let v40 : float = 0.35000000000000003                                │

00:00:34 #5270 [Verbose] > │         let v41 : float = 0.36000000000000004                                │

00:00:34 #5271 [Verbose] > │         let v42 : float = 0.37                                               │

00:00:34 #5272 [Verbose] > │         let v43 : float = 0.38                                               │

00:00:34 #5273 [Verbose] > │         let v44 : float = 0.39                                               │

00:00:34 #5274 [Verbose] > │         let v45 : float = 0.4                                                │

00:00:34 #5275 [Verbose] > │         let v46 : float = 0.41000000000000003                                │

00:00:34 #5276 [Verbose] > │         let v47 : float = 0.42000000000000004                                │

00:00:34 #5277 [Verbose] > │         let v48 : float = 0.43                                               │

00:00:34 #5278 [Verbose] > │         let v49 : float = 0.44                                               │

00:00:34 #5279 [Verbose] > │         let v50 : float = 0.45                                               │

00:00:34 #5280 [Verbose] > │         let v51 : float = 0.46                                               │

00:00:34 #5281 [Verbose] > │         let v52 : float = 0.47000000000000003                                │

00:00:34 #5282 [Verbose] > │         let v53 : float = 0.48000000000000004                                │

00:00:34 #5283 [Verbose] > │         let v54 : float = 0.49                                               │

00:00:34 #5284 [Verbose] > │         let v55 : float = 0.5                                                │

00:00:34 #5285 [Verbose] > │         let v56 : float = 0.51                                               │

00:00:34 #5286 [Verbose] > │         let v57 : float = 0.52                                               │

00:00:34 #5287 [Verbose] > │         let v58 : float = 0.53                                               │

00:00:34 #5288 [Verbose] > │         let v59 : float = 0.54                                               │

00:00:34 #5289 [Verbose] > │         let v60 : float = 0.55                                               │

00:00:34 #5290 [Verbose] > │         let v61 : float = 0.56                                               │

00:00:34 #5291 [Verbose] > │         let v62 : float = 0.5700000000000001                                 │

00:00:34 #5292 [Verbose] > │         let v63 : float = 0.5800000000000001                                 │

00:00:34 #5293 [Verbose] > │         let v64 : float = 0.59                                               │

00:00:34 #5294 [Verbose] > │         let v65 : float = 0.6                                                │

00:00:34 #5295 [Verbose] > │         let v66 : float = 0.61                                               │

00:00:34 #5296 [Verbose] > │         let v67 : float = 0.62                                               │

00:00:34 #5297 [Verbose] > │         let v68 : float = 0.63                                               │

00:00:34 #5298 [Verbose] > │         let v69 : float = 0.64                                               │

00:00:34 #5299 [Verbose] > │         let v70 : float = 0.65                                               │

00:00:34 #5300 [Verbose] > │         let v71 : UH0 = UH0_1                                                │

00:00:34 #5301 [Verbose] > │         let v72 : UH0 = UH0_0(v70, v71)                                      │

00:00:34 #5302 [Verbose] > │         let v73 : UH0 = UH0_0(v69, v72)                                      │

00:00:34 #5303 [Verbose] > │         let v74 : UH0 = UH0_0(v68, v73)                                      │

00:00:34 #5304 [Verbose] > │         let v75 : UH0 = UH0_0(v67, v74)                                      │

00:00:34 #5305 [Verbose] > │         let v76 : UH0 = UH0_0(v66, v75)                                      │

00:00:34 #5306 [Verbose] > │         let v77 : UH0 = UH0_0(v65, v76)                                      │

00:00:34 #5307 [Verbose] > │         let v78 : UH0 = UH0_0(v64, v77)                                      │

00:00:34 #5308 [Verbose] > │         let v79 : UH0 = UH0_0(v63, v78)                                      │

00:00:34 #5309 [Verbose] > │         let v80 : UH0 = UH0_0(v62, v79)                                      │

00:00:34 #5310 [Verbose] > │         let v81 : UH0 = UH0_0(v61, v80)                                      │

00:00:34 #5311 [Verbose] > │         let v82 : UH0 = UH0_0(v60, v81)                                      │

00:00:34 #5312 [Verbose] > │         let v83 : UH0 = UH0_0(v59, v82)                                      │

00:00:34 #5313 [Verbose] > │         let v84 : UH0 = UH0_0(v58, v83)                                      │

00:00:34 #5314 [Verbose] > │         let v85 : UH0 = UH0_0(v57, v84)                                      │

00:00:34 #5315 [Verbose] > │         let v86 : UH0 = UH0_0(v56, v85)                                      │

00:00:34 #5316 [Verbose] > │         let v87 : UH0 = UH0_0(v55, v86)                                      │

00:00:34 #5317 [Verbose] > │         let v88 : UH0 = UH0_0(v54, v87)                                      │

00:00:34 #5318 [Verbose] > │         let v89 : UH0 = UH0_0(v53, v88)                                      │

00:00:34 #5319 [Verbose] > │         let v90 : UH0 = UH0_0(v52, v89)                                      │

00:00:34 #5320 [Verbose] > │         let v91 : UH0 = UH0_0(v51, v90)                                      │

00:00:34 #5321 [Verbose] > │         let v92 : UH0 = UH0_0(v50, v91)                                      │

00:00:34 #5322 [Verbose] > │         let v93 : UH0 = UH0_0(v49, v92)                                      │

00:00:34 #5323 [Verbose] > │         let v94 : UH0 = UH0_0(v48, v93)                                      │

00:00:34 #5324 [Verbose] > │         let v95 : UH0 = UH0_0(v47, v94)                                      │

00:00:34 #5325 [Verbose] > │         let v96 : UH0 = UH0_0(v46, v95)                                      │

00:00:34 #5326 [Verbose] > │         let v97 : UH0 = UH0_0(v45, v96)                                      │

00:00:34 #5327 [Verbose] > │         let v98 : UH0 = UH0_0(v44, v97)                                      │

00:00:34 #5328 [Verbose] > │         let v99 : UH0 = UH0_0(v43, v98)                                      │

00:00:34 #5329 [Verbose] > │         let v100 : UH0 = UH0_0(v42, v99)                                     │

00:00:34 #5330 [Verbose] > │         let v101 : UH0 = UH0_0(v41, v100)                                    │

00:00:34 #5331 [Verbose] > │         let v102 : UH0 = UH0_0(v40, v101)                                    │

00:00:34 #5332 [Verbose] > │         let v103 : UH0 = UH0_0(v39, v102)                                    │

00:00:34 #5333 [Verbose] > │         let v104 : UH0 = UH0_0(v38, v103)                                    │

00:00:34 #5334 [Verbose] > │         let v105 : UH0 = UH0_0(v37, v104)                                    │

00:00:34 #5335 [Verbose] > │         let v106 : UH0 = UH0_0(v36, v105)                                    │

00:00:34 #5336 [Verbose] > │         let v107 : UH0 = UH0_0(v35, v106)                                    │

00:00:34 #5337 [Verbose] > │         let v108 : UH0 = UH0_0(v34, v107)                                    │

00:00:34 #5338 [Verbose] > │         let v109 : UH0 = UH0_0(v33, v108)                                    │

00:00:34 #5339 [Verbose] > │         let v110 : UH0 = UH0_0(v32, v109)                                    │

00:00:34 #5340 [Verbose] > │         let v111 : UH0 = UH0_0(v31, v110)                                    │

00:00:34 #5341 [Verbose] > │         let v112 : UH0 = UH0_0(v30, v111)                                    │

00:00:34 #5342 [Verbose] > │         let v113 : UH0 = UH0_0(v29, v112)                                    │

00:00:34 #5343 [Verbose] > │         let v114 : UH0 = UH0_0(v28, v113)                                    │

00:00:34 #5344 [Verbose] > │         let v115 : UH0 = UH0_0(v27, v114)                                    │

00:00:34 #5345 [Verbose] > │         let v116 : UH0 = UH0_0(v26, v115)                                    │

00:00:34 #5346 [Verbose] > │         let v117 : UH0 = UH0_0(v25, v116)                                    │

00:00:34 #5347 [Verbose] > │         let v118 : UH0 = UH0_0(v24, v117)                                    │

00:00:34 #5348 [Verbose] > │         let v119 : UH0 = UH0_0(v23, v118)                                    │

00:00:34 #5349 [Verbose] > │         let v120 : UH0 = UH0_0(v22, v119)                                    │

00:00:34 #5350 [Verbose] > │         let v121 : UH0 = UH0_0(v21, v120)                                    │

00:00:34 #5351 [Verbose] > │         let v122 : UH0 = UH0_0(v20, v121)                                    │

00:00:34 #5352 [Verbose] > │         let v123 : UH0 = UH0_0(v19, v122)                                    │

00:00:34 #5353 [Verbose] > │         let v124 : UH0 = UH0_0(v18, v123)                                    │

00:00:34 #5354 [Verbose] > │         let v125 : UH0 = UH0_0(v17, v124)                                    │

00:00:34 #5355 [Verbose] > │         let v126 : UH0 = UH0_0(v16, v125)                                    │

00:00:34 #5356 [Verbose] > │         let v127 : UH0 = UH0_0(v15, v126)                                    │

00:00:34 #5357 [Verbose] > │         let v128 : UH0 = UH0_0(v14, v127)                                    │

00:00:34 #5358 [Verbose] > │         let v129 : UH0 = UH0_0(v13, v128)                                    │

00:00:34 #5359 [Verbose] > │         let v130 : UH0 = UH0_0(v12, v129)                                    │

00:00:34 #5360 [Verbose] > │         let v131 : UH0 = UH0_0(v11, v130)                                    │

00:00:34 #5361 [Verbose] > │         let v132 : UH0 = UH0_0(v10, v131)                                    │

00:00:34 #5362 [Verbose] > │         let v133 : UH0 = UH0_0(v9, v132)                                     │

00:00:34 #5363 [Verbose] > │         let v134 : UH0 = UH0_0(v8, v133)                                     │

00:00:34 #5364 [Verbose] > │         let v135 : UH0 = UH0_0(v7, v134)                                     │

00:00:34 #5365 [Verbose] > │         let v136 : UH0 = UH0_0(v6, v135)                                     │

00:00:34 #5366 [Verbose] > │         let v137 : UH0 = UH0_0(v5, v136)                                     │

00:00:34 #5367 [Verbose] > │         let v138 : (float []) = method2(v137)                                │

00:00:34 #5368 [Verbose] > │         let v139 : float = 0.0                                               │

00:00:34 #5369 [Verbose] > │         let v140 : float = 0.0007224452478461068                             │

00:00:34 #5370 [Verbose] > │         let v141 : float = 0.0014297283919934465                             │

00:00:34 #5371 [Verbose] > │         let v142 : float = 0.0021070055388626454                             │

00:00:34 #5372 [Verbose] > │         let v143 : float = 0.00274006253677335                               │

00:00:34 #5373 [Verbose] > │         let v144 : float = 0.0033156132912039757                             │

00:00:34 #5374 [Verbose] > │         let v145 : float = 0.0038215786027292415                             │

00:00:34 #5375 [Verbose] > │         let v146 : float = 0.004247339675607605                              │

00:00:34 #5376 [Verbose] > │         let v147 : float = 0.004583960976582912                              │

00:00:34 #5377 [Verbose] > │         let v148 : float = 0.004824377766717757                              │

00:00:34 #5378 [Verbose] > │         let v149 : float = 0.00496354437049027                               │

00:00:34 #5379 [Verbose] > │         let v150 : float = 0.004998540070400965                              │

00:00:34 #5380 [Verbose] > │         let v151 : float = 0.004928630404658255                              │

00:00:34 #5381 [Verbose] > │         let v152 : float = 0.004755282581475768                              │

00:00:34 #5382 [Verbose] > │         let v153 : float = 0.004482134686478519                              │

00:00:34 #5383 [Verbose] > │         let v154 : float = 0.0041149193294682815                             │

00:00:34 #5384 [Verbose] > │         let v155 : float = 0.0036613433329888666                             │

00:00:34 #5385 [Verbose] > │         let v156 : float = 0.0031309259876915697                             │

00:00:34 #5386 [Verbose] > │         let v157 : float = 0.002534799269067951                              │

00:00:34 #5387 [Verbose] > │         let v158 : float = 0.0018854742084416015                             │

00:00:34 #5388 [Verbose] > │         let v159 : float = 0.0011965783214377905                             │

00:00:34 #5389 [Verbose] > │         let v160 : float = 0.00048256960457257535                            │

00:00:34 #5390 [Verbose] > │         let v161 : float = -0.00024156689762753317                           │

00:00:34 #5391 [Verbose] > │         let v162 : float = -0.0009606335867685418                            │

00:00:34 #5392 [Verbose] > │         let v163 : float = -0.001659539265642642                             │

00:00:34 #5393 [Verbose] > │         let v164 : float = -0.002323615860218842                             │

00:00:34 #5394 [Verbose] > │         let v165 : float = -0.0029389262614623636                            │

00:00:34 #5395 [Verbose] > │         let v166 : float = -0.003492556826244686                             │

00:00:34 #5396 [Verbose] > │         let v167 : float = -0.003972888398568771                             │

00:00:34 #5397 [Verbose] > │         let v168 : float = -0.00436984016313259                              │

00:00:34 #5398 [Verbose] > │         let v169 : float = -0.004675081213427074                             │

00:00:34 #5399 [Verbose] > │         let v170 : float = -0.004882205394146359                             │

00:00:34 #5400 [Verbose] > │         let v171 : float = -0.004986865748457456                             │

00:00:34 #5401 [Verbose] > │         let v172 : float = -0.004986865748457456                             │

00:00:34 #5402 [Verbose] > │         let v173 : float = -0.004882205394146361                             │

00:00:34 #5403 [Verbose] > │         let v174 : float = -0.004675081213427074                             │

00:00:34 #5404 [Verbose] > │         let v175 : float = -0.004369840163132589                             │

00:00:34 #5405 [Verbose] > │         let v176 : float = -0.003972888398568774                             │

00:00:34 #5406 [Verbose] > │         let v177 : float = -0.0034925568262446837                            │

00:00:34 #5407 [Verbose] > │         let v178 : float = -0.002938926261462367                             │

00:00:34 #5408 [Verbose] > │         let v179 : float = -0.002323615860218846                             │

00:00:34 #5409 [Verbose] > │         let v180 : float = -0.0016595392656426435                            │

00:00:34 #5410 [Verbose] > │         let v181 : float = -0.0009606335867685414                            │

00:00:34 #5411 [Verbose] > │         let v182 : float = -0.00024156689762753724                           │

00:00:34 #5412 [Verbose] > │         let v183 : float = 0.0004825696045725713                             │

00:00:34 #5413 [Verbose] > │         let v184 : float = 0.0011965783214377866                             │

00:00:34 #5414 [Verbose] > │         let v185 : float = 0.0018854742084416021                             │

00:00:34 #5415 [Verbose] > │         let v186 : float = 0.002534799269067953                              │

00:00:34 #5416 [Verbose] > │         let v187 : float = 0.003130925987691568                              │

00:00:34 #5417 [Verbose] > │         let v188 : float = 0.0036613433329888622                             │

00:00:34 #5418 [Verbose] > │         let v189 : float = 0.0041149193294682815                             │

00:00:34 #5419 [Verbose] > │         let v190 : float = 0.0044821346864785195                             │

00:00:34 #5420 [Verbose] > │         let v191 : float = 0.004755282581475766                              │

00:00:34 #5421 [Verbose] > │         let v192 : float = 0.004928630404658255                              │

00:00:34 #5422 [Verbose] > │         let v193 : float = 0.004998540070400965                              │

00:00:34 #5423 [Verbose] > │         let v194 : float = 0.004963544370490271                              │

00:00:34 #5424 [Verbose] > │         let v195 : float = 0.004824377766717758                              │

00:00:34 #5425 [Verbose] > │         let v196 : float = 0.004583960976582912                              │

00:00:34 #5426 [Verbose] > │         let v197 : float = 0.004247339675607605                              │

00:00:34 #5427 [Verbose] > │         let v198 : float = 0.003821578602729245                              │

00:00:34 #5428 [Verbose] > │         let v199 : float = 0.0033156132912039783                             │

00:00:34 #5429 [Verbose] > │         let v200 : float = 0.0027400625367733585                             │

00:00:34 #5430 [Verbose] > │         let v201 : float = 0.0021070055388626528                             │

00:00:34 #5431 [Verbose] > │         let v202 : float = 0.001429728391993452                              │

00:00:34 #5432 [Verbose] > │         let v203 : float = 0.0007224452478461016                             │

00:00:34 #5433 [Verbose] > │         let v204 : float = 0.0                                               │

00:00:34 #5434 [Verbose] > │         let v205 : UH0 = UH0_1                                               │

00:00:34 #5435 [Verbose] > │         let v206 : UH0 = UH0_0(v204, v205)                                   │

00:00:34 #5436 [Verbose] > │         let v207 : UH0 = UH0_0(v203, v206)                                   │

00:00:34 #5437 [Verbose] > │         let v208 : UH0 = UH0_0(v202, v207)                                   │

00:00:34 #5438 [Verbose] > │         let v209 : UH0 = UH0_0(v201, v208)                                   │

00:00:34 #5439 [Verbose] > │         let v210 : UH0 = UH0_0(v200, v209)                                   │

00:00:34 #5440 [Verbose] > │         let v211 : UH0 = UH0_0(v199, v210)                                   │

00:00:34 #5441 [Verbose] > │         let v212 : UH0 = UH0_0(v198, v211)                                   │

00:00:34 #5442 [Verbose] > │         let v213 : UH0 = UH0_0(v197, v212)                                   │

00:00:34 #5443 [Verbose] > │         let v214 : UH0 = UH0_0(v196, v213)                                   │

00:00:34 #5444 [Verbose] > │         let v215 : UH0 = UH0_0(v195, v214)                                   │

00:00:34 #5445 [Verbose] > │         let v216 : UH0 = UH0_0(v194, v215)                                   │

00:00:34 #5446 [Verbose] > │         let v217 : UH0 = UH0_0(v193, v216)                                   │

00:00:34 #5447 [Verbose] > │         let v218 : UH0 = UH0_0(v192, v217)                                   │

00:00:34 #5448 [Verbose] > │         let v219 : UH0 = UH0_0(v191, v218)                                   │

00:00:34 #5449 [Verbose] > │         let v220 : UH0 = UH0_0(v190, v219)                                   │

00:00:34 #5450 [Verbose] > │         let v221 : UH0 = UH0_0(v189, v220)                                   │

00:00:34 #5451 [Verbose] > │         let v222 : UH0 = UH0_0(v188, v221)                                   │

00:00:34 #5452 [Verbose] > │         let v223 : UH0 = UH0_0(v187, v222)                                   │

00:00:34 #5453 [Verbose] > │         let v224 : UH0 = UH0_0(v186, v223)                                   │

00:00:34 #5454 [Verbose] > │         let v225 : UH0 = UH0_0(v185, v224)                                   │

00:00:34 #5455 [Verbose] > │         let v226 : UH0 = UH0_0(v184, v225)                                   │

00:00:34 #5456 [Verbose] > │         let v227 : UH0 = UH0_0(v183, v226)                                   │

00:00:34 #5457 [Verbose] > │         let v228 : UH0 = UH0_0(v182, v227)                                   │

00:00:34 #5458 [Verbose] > │         let v229 : UH0 = UH0_0(v181, v228)                                   │

00:00:34 #5459 [Verbose] > │         let v230 : UH0 = UH0_0(v180, v229)                                   │

00:00:34 #5460 [Verbose] > │         let v231 : UH0 = UH0_0(v179, v230)                                   │

00:00:34 #5461 [Verbose] > │         let v232 : UH0 = UH0_0(v178, v231)                                   │

00:00:34 #5462 [Verbose] > │         let v233 : UH0 = UH0_0(v177, v232)                                   │

00:00:34 #5463 [Verbose] > │         let v234 : UH0 = UH0_0(v176, v233)                                   │

00:00:34 #5464 [Verbose] > │         let v235 : UH0 = UH0_0(v175, v234)                                   │

00:00:34 #5465 [Verbose] > │         let v236 : UH0 = UH0_0(v174, v235)                                   │

00:00:34 #5466 [Verbose] > │         let v237 : UH0 = UH0_0(v173, v236)                                   │

00:00:34 #5467 [Verbose] > │         let v238 : UH0 = UH0_0(v172, v237)                                   │

00:00:34 #5468 [Verbose] > │         let v239 : UH0 = UH0_0(v171, v238)                                   │

00:00:34 #5469 [Verbose] > │         let v240 : UH0 = UH0_0(v170, v239)                                   │

00:00:34 #5470 [Verbose] > │         let v241 : UH0 = UH0_0(v169, v240)                                   │

00:00:34 #5471 [Verbose] > │         let v242 : UH0 = UH0_0(v168, v241)                                   │

00:00:34 #5472 [Verbose] > │         let v243 : UH0 = UH0_0(v167, v242)                                   │

00:00:34 #5473 [Verbose] > │         let v244 : UH0 = UH0_0(v166, v243)                                   │

00:00:34 #5474 [Verbose] > │         let v245 : UH0 = UH0_0(v165, v244)                                   │

00:00:34 #5475 [Verbose] > │         let v246 : UH0 = UH0_0(v164, v245)                                   │

00:00:34 #5476 [Verbose] > │         let v247 : UH0 = UH0_0(v163, v246)                                   │

00:00:34 #5477 [Verbose] > │         let v248 : UH0 = UH0_0(v162, v247)                                   │

00:00:34 #5478 [Verbose] > │         let v249 : UH0 = UH0_0(v161, v248)                                   │

00:00:34 #5479 [Verbose] > │         let v250 : UH0 = UH0_0(v160, v249)                                   │

00:00:34 #5480 [Verbose] > │         let v251 : UH0 = UH0_0(v159, v250)                                   │

00:00:34 #5481 [Verbose] > │         let v252 : UH0 = UH0_0(v158, v251)                                   │

00:00:34 #5482 [Verbose] > │         let v253 : UH0 = UH0_0(v157, v252)                                   │

00:00:34 #5483 [Verbose] > │         let v254 : UH0 = UH0_0(v156, v253)                                   │

00:00:34 #5484 [Verbose] > │         let v255 : UH0 = UH0_0(v155, v254)                                   │

00:00:34 #5485 [Verbose] > │         let v256 : UH0 = UH0_0(v154, v255)                                   │

00:00:34 #5486 [Verbose] > │         let v257 : UH0 = UH0_0(v153, v256)                                   │

00:00:34 #5487 [Verbose] > │         let v258 : UH0 = UH0_0(v152, v257)                                   │

00:00:34 #5488 [Verbose] > │         let v259 : UH0 = UH0_0(v151, v258)                                   │

00:00:34 #5489 [Verbose] > │         let v260 : UH0 = UH0_0(v150, v259)                                   │

00:00:34 #5490 [Verbose] > │         let v261 : UH0 = UH0_0(v149, v260)                                   │

00:00:34 #5491 [Verbose] > │         let v262 : UH0 = UH0_0(v148, v261)                                   │

00:00:34 #5492 [Verbose] > │         let v263 : UH0 = UH0_0(v147, v262)                                   │

00:00:34 #5493 [Verbose] > │         let v264 : UH0 = UH0_0(v146, v263)                                   │

00:00:34 #5494 [Verbose] > │         let v265 : UH0 = UH0_0(v145, v264)                                   │

00:00:34 #5495 [Verbose] > │         let v266 : UH0 = UH0_0(v144, v265)                                   │

00:00:34 #5496 [Verbose] > │         let v267 : UH0 = UH0_0(v143, v266)                                   │

00:00:34 #5497 [Verbose] > │         let v268 : UH0 = UH0_0(v142, v267)                                   │

00:00:34 #5498 [Verbose] > │         let v269 : UH0 = UH0_0(v141, v268)                                   │

00:00:34 #5499 [Verbose] > │         let v270 : UH0 = UH0_0(v140, v269)                                   │

00:00:34 #5500 [Verbose] > │         let v271 : UH0 = UH0_0(v139, v270)                                   │

00:00:34 #5501 [Verbose] > │         let v272 : (float []) = method2(v271)                                │

00:00:34 #5502 [Verbose] > │         UH1_0(v138, v272, v4)                                                │

00:00:34 #5503 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:34 #5504 [Verbose] > │         v1                                                                   │

00:00:34 #5505 [Verbose] > │ and method6 (v0 : UH1, v1 : int32) : int32 =                                 │

00:00:34 #5506 [Verbose] > │     match v0 with                                                            │

00:00:34 #5507 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:34 #5508 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:34 #5509 [Verbose] > │         method6(v4, v5)                                                      │

00:00:34 #5510 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:34 #5511 [Verbose] > │         v1                                                                   │

00:00:34 #5512 [Verbose] > │ and method7 (v0 : (struct ((float []) * (float [])) []), v1 : UH1, v2 :      │

00:00:34 #5513 [Verbose] > │ int32) : int32 =                                                             │

00:00:34 #5514 [Verbose] > │     match v1 with                                                            │

00:00:34 #5515 [Verbose] > │     | UH1_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:34 #5516 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:34 #5517 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:34 #5518 [Verbose] > │         method7(v0, v5, v6)                                                  │

00:00:34 #5519 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:34 #5520 [Verbose] > │         v2                                                                   │

00:00:34 #5521 [Verbose] > │ and method5 (v0 : UH1) : (struct ((float []) * (float [])) []) =             │

00:00:34 #5522 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:34 #5523 [Verbose] > │     let v2 : int32 = method6(v0, v1)                                         │

00:00:34 #5524 [Verbose] > │     let v3 : (struct ((float []) * (float [])) []) = Array.zeroCreate<struct │

00:00:34 #5525 [Verbose] > │ ((float []) * (float []))> (v2)                                              │

00:00:34 #5526 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:34 #5527 [Verbose] > │     let v5 : int32 = method7(v3, v0, v4)                                     │

00:00:34 #5528 [Verbose] > │     v3                                                                       │

00:00:34 #5529 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:34 #5530 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:34 #5531 [Verbose] > │     let v0 : float = 0.0                                                     │

00:00:34 #5532 [Verbose] > │     let v1 : float = 1.0                                                     │

00:00:34 #5533 [Verbose] > │     let v2 : float = 2.0                                                     │

00:00:34 #5534 [Verbose] > │     let v3 : float = 3.0                                                     │

00:00:34 #5535 [Verbose] > │     let v4 : float = 4.0                                                     │

00:00:34 #5536 [Verbose] > │     let v5 : float = 5.0                                                     │

00:00:34 #5537 [Verbose] > │     let v6 : float = 6.0                                                     │

00:00:34 #5538 [Verbose] > │     let v7 : float = 7.0                                                     │

00:00:34 #5539 [Verbose] > │     let v8 : float = 8.0                                                     │

00:00:34 #5540 [Verbose] > │     let v9 : float = 9.0                                                     │

00:00:34 #5541 [Verbose] > │     let v10 : UH0 = UH0_1                                                    │

00:00:34 #5542 [Verbose] > │     let v11 : UH0 = UH0_0(v9, v10)                                           │

00:00:34 #5543 [Verbose] > │     let v12 : UH0 = UH0_0(v8, v11)                                           │

00:00:34 #5544 [Verbose] > │     let v13 : UH0 = UH0_0(v7, v12)                                           │

00:00:34 #5545 [Verbose] > │     let v14 : UH0 = UH0_0(v6, v13)                                           │

00:00:34 #5546 [Verbose] > │     let v15 : UH0 = UH0_0(v5, v14)                                           │

00:00:34 #5547 [Verbose] > │     let v16 : UH0 = UH0_0(v4, v15)                                           │

00:00:34 #5548 [Verbose] > │     let v17 : UH0 = UH0_0(v3, v16)                                           │

00:00:34 #5549 [Verbose] > │     let v18 : UH0 = UH0_0(v2, v17)                                           │

00:00:34 #5550 [Verbose] > │     let v19 : UH0 = UH0_0(v1, v18)                                           │

00:00:34 #5551 [Verbose] > │     let v20 : UH0 = UH0_0(v0, v19)                                           │

00:00:34 #5552 [Verbose] > │     let v21 : UH1 = UH1_1                                                    │

00:00:34 #5553 [Verbose] > │     let v22 : UH1 = method1(v20, v21)                                        │

00:00:34 #5554 [Verbose] > │     let v23 : (struct ((float []) * (float [])) []) = method5(v22)           │

00:00:34 #5555 [Verbose] > │     let struct (v24 : (float []), v25 : (float [])) = v23.[int 0]            │

00:00:34 #5556 [Verbose] > │     let v26 : string = $"{0}"                                                │

00:00:34 #5557 [Verbose] > │     let v27 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:34 #5558 [Verbose] > │ (v26, v24, v25)|]                                                            │

00:00:34 #5559 [Verbose] > │     let v28 : string = "wave"                                                │

00:00:34 #5560 [Verbose] > │     let v29 : string = "position (m)"                                        │

00:00:34 #5561 [Verbose] > │     let v30 : string = "displacement (m)"                                    │

00:00:34 #5562 [Verbose] > │     struct (v28, v29, v30, v27)                                              │

00:00:34 #5563 [Verbose] > │ method0()                                                                    │

00:00:34 #5564 [Verbose] > │                                                                              │

00:00:34 #5565 [Verbose] > │                                                                              │

00:00:34 #5566 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:34 #5567 [Verbose] >

00:00:34 #5568 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:34 #5569 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:34 #5570 [Verbose] > │ ### system kinetic energy versus time 2                                      │

00:00:34 #5571 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:34 #5572 [Verbose] >

00:00:34 #5573 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:34 #5574 [Verbose] > // // test

00:00:34 #5575 [Verbose] >

00:00:34 #5576 [Verbose] > inl central_force f (particle_state st1) (particle_state st2) =

00:00:34 #5577 [Verbose] >     inl r1 = st1.pos_vec

00:00:34 #5578 [Verbose] >     inl r2 = st2.pos_vec

00:00:34 #5579 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:34 #5580 [Verbose] >     inl r21mag = magnitude r21

00:00:34 #5581 [Verbose] >     f r21mag *^ r21 ^/ r21mag

00:00:34 #5582 [Verbose] >

00:00:34 #5583 [Verbose] > inl billiard_force k re =

00:00:34 #5584 [Verbose] >     inl f r =

00:00:34 #5585 [Verbose] >         if r >= re

00:00:34 #5586 [Verbose] >         then 0

00:00:34 #5587 [Verbose] >         else -k * (r - re)

00:00:34 #5588 [Verbose] >     central_force f

00:00:34 #5589 [Verbose] >

00:00:34 #5590 [Verbose] > type force_vector = vec

00:00:34 #5591 [Verbose] > type two_body_force = particle_state -> particle_state -> force_vector

00:00:34 #5592 [Verbose] >

00:00:34 #5593 [Verbose] > union force t =

00:00:34 #5594 [Verbose] >     | ExternalForce : t * one_body_force

00:00:34 #5595 [Verbose] >     | InternalForce : t * t * two_body_force

00:00:34 #5596 [Verbose] >

00:00:34 #5597 [Verbose] > nominal multi_particle_state = stream.stream particle_state

00:00:34 #5598 [Verbose] >

00:00:34 #5599 [Verbose] > nominal d_multi_particle_state = stream.stream d_particle_state

00:00:34 #5600 [Verbose] >

00:00:34 #5601 [Verbose] > inl force_on n s force =

00:00:34 #5602 [Verbose] >     match force with

00:00:34 #5603 [Verbose] >     | ExternalForce (n0, f_one_body) =>

00:00:34 #5604 [Verbose] >         if n = n0

00:00:34 #5605 [Verbose] >         then f_one_body

00:00:34 #5606 [Verbose] >         else fun _ => zero_vec ()

00:00:34 #5607 [Verbose] >     | InternalForce (n0, n1, f_two_body) =>

00:00:34 #5608 [Verbose] >         if n = n0

00:00:34 #5609 [Verbose] >         then s |> stream.try_item n1 |> optionm.map f_two_body

00:00:34 #5610 [Verbose] >         elif n = n1

00:00:34 #5611 [Verbose] >         then s |> stream.try_item n0 |> optionm.map f_two_body

00:00:34 #5612 [Verbose] >         else None

00:00:34 #5613 [Verbose] >         |> optionm'.default_value (fun _ => zero_vec ())

00:00:34 #5614 [Verbose] >

00:00:34 #5615 [Verbose] > inl forces_on n (multi_particle_state sts) fs =

00:00:34 #5616 [Verbose] >     fs

00:00:34 #5617 [Verbose] >     |> listm.map (force_on n sts)

00:00:34 #5618 [Verbose] >

00:00:34 #5619 [Verbose] > inl newton_second_mps fs ((multi_particle_state sts) as mpst) =

00:00:34 #5620 [Verbose] >     inl deriv (n, st) =

00:00:34 #5621 [Verbose] >         newton_second_ps (forces_on n mpst fs) st

00:00:34 #5622 [Verbose] >     sts |> stream.indexed |> stream.map deriv |> d_multi_particle_state

00:00:34 #5623 [Verbose] >

00:00:34 #5624 [Verbose] > instance (+++) d_multi_particle_state =

00:00:34 #5625 [Verbose] >     fun (d_multi_particle_state dsts1) (d_multi_particle_state dsts2) =>

00:00:34 #5626 [Verbose] >         (dsts1, dsts2)

00:00:34 #5627 [Verbose] >         ||> stream.zip_with (+++)

00:00:34 #5628 [Verbose] >         |> d_multi_particle_state

00:00:34 #5629 [Verbose] >

00:00:34 #5630 [Verbose] > instance scale d_multi_particle_state = fun w (d_multi_particle_state dsts) =>

00:00:34 #5631 [Verbose] >     dsts

00:00:34 #5632 [Verbose] >     |> stream.map (scale w)

00:00:34 #5633 [Verbose] >     |> d_multi_particle_state

00:00:34 #5634 [Verbose] >

00:00:34 #5635 [Verbose] > instance shift multi_particle_state = fun dt dsts (multi_particle_state sts) =>

00:00:34 #5636 [Verbose] >     inl (d_multi_particle_state dsts) =

00:00:34 #5637 [Verbose] >         real

00:00:34 #5638 [Verbose] >             match dsts with

00:00:34 #5639 [Verbose] >             | d_multi_particle_state _ => dsts

00:00:34 #5640 [Verbose] >     (dsts, sts)

00:00:34 #5641 [Verbose] >     ||> stream.zip_with (shift dt)

00:00:34 #5642 [Verbose] >     |> stream.memoize

00:00:34 #5643 [Verbose] >     |> fun x => x ()

00:00:34 #5644 [Verbose] >     |> multi_particle_state

00:00:34 #5645 [Verbose] >

00:00:34 #5646 [Verbose] > inl euler_cromer_mps dt : numerical_method multi_particle_state

00:00:34 #5647 [Verbose] > d_multi_particle_state =

00:00:34 #5648 [Verbose] >     fun deriv ((multi_particle_state sts0) as mpst0) =>

00:00:34 #5649 [Verbose] >         inl (multi_particle_state sts1) = euler dt deriv mpst0

00:00:34 #5650 [Verbose] >         (sts0, sts1)

00:00:34 #5651 [Verbose] >         ||> stream.zip

00:00:34 #5652 [Verbose] >         |> stream.map (fun ((particle_state st0), (particle_state st1)) =>

00:00:34 #5653 [Verbose] >             particle_state {

00:00:34 #5654 [Verbose] >                 st1 with

00:00:34 #5655 [Verbose] >                     pos_vec = st0.pos_vec ^+^ st1.velocity ^* dt

00:00:34 #5656 [Verbose] >             }

00:00:34 #5657 [Verbose] >         )

00:00:34 #5658 [Verbose] >         |> multi_particle_state

00:00:34 #5659 [Verbose] >

00:00:34 #5660 [Verbose] > inl update_mps (method : numerical_method multi_particle_state

00:00:34 #5661 [Verbose] > d_multi_particle_state) =

00:00:34 #5662 [Verbose] >     newton_second_mps >> method

00:00:34 #5663 [Verbose] >

00:00:34 #5664 [Verbose] > inl states_mps (method : numerical_method multi_particle_state

00:00:34 #5665 [Verbose] > d_multi_particle_state) =

00:00:34 #5666 [Verbose] >     newton_second_mps

00:00:34 #5667 [Verbose] >     >> method

00:00:34 #5668 [Verbose] >     >> (fun x (multi_particle_state y) =>

00:00:34 #5669 [Verbose] >         y

00:00:34 #5670 [Verbose] >         |> stream.memoize

00:00:34 #5671 [Verbose] >         |> (fun x => x ())

00:00:34 #5672 [Verbose] >         |> multi_particle_state |> x

00:00:34 #5673 [Verbose] >     )

00:00:34 #5674 [Verbose] >     // >> stream.iterate

00:00:34 #5675 [Verbose] >     >> seq.iterate'

00:00:34 #5676 [Verbose] >

00:00:34 #5677 [Verbose] > inl kinetic_energy (particle_state st) =

00:00:34 #5678 [Verbose] >     inl m = st.mass

00:00:34 #5679 [Verbose] >     inl v = magnitude st.velocity

00:00:34 #5680 [Verbose] >     0.5 * m * v ** 2

00:00:34 #5681 [Verbose] >

00:00:34 #5682 [Verbose] > inl system_ke (multi_particle_state sts) =

00:00:34 #5683 [Verbose] >     sts

00:00:34 #5684 [Verbose] >     |> stream.map kinetic_energy

00:00:34 #5685 [Verbose] >     |> stream.sum

00:00:34 #5686 [Verbose] >

00:00:34 #5687 [Verbose] > inl linear_spring_pe k re (particle_state st1) (particle_state st2) =

00:00:34 #5688 [Verbose] >     inl r1 = st1.pos_vec

00:00:34 #5689 [Verbose] >     inl r2 = st2.pos_vec

00:00:34 #5690 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:34 #5691 [Verbose] >     inl r21mag = magnitude r21

00:00:34 #5692 [Verbose] >     k * (r21mag - re) ** 2 / 2

00:00:34 #5693 [Verbose] >

00:00:34 #5694 [Verbose] > inl earth_surface_gravity_pe (particle_state st) =

00:00:34 #5695 [Verbose] >     inl g = 9.80665

00:00:34 #5696 [Verbose] >     inl m = st.mass

00:00:34 #5697 [Verbose] >     inl z = st.pos_vec.z

00:00:34 #5698 [Verbose] >     m * g * z

00:00:34 #5699 [Verbose] >

00:00:34 #5700 [Verbose] > inl ball_radius () = 0.03

00:00:34 #5701 [Verbose] >

00:00:34 #5702 [Verbose] > inl billiard_forces k =

00:00:34 #5703 [Verbose] >     [[ InternalForce (0i32, 1, billiard_force k (2 * ball_radius ())) ]]

00:00:34 #5704 [Verbose] >

00:00:34 #5705 [Verbose] > inl billiard_initial () =

00:00:34 #5706 [Verbose] >     inl ball_mass = 0.160

00:00:34 #5707 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:34 #5708 [Verbose] >     [[

00:00:34 #5709 [Verbose] >         particle_state {

00:00:34 #5710 [Verbose] >             default_particle_state' with

00:00:34 #5711 [Verbose] >                 mass = ball_mass

00:00:34 #5712 [Verbose] >                 pos_vec = zero_vec ()

00:00:34 #5713 [Verbose] >                 velocity = 0.2 *^ i_hat ()

00:00:34 #5714 [Verbose] >         }

00:00:34 #5715 [Verbose] >         particle_state {

00:00:34 #5716 [Verbose] >             default_particle_state' with

00:00:34 #5717 [Verbose] >                 mass = ball_mass

00:00:34 #5718 [Verbose] >                 pos_vec = i_hat () ^+^ 0.02 *^ j_hat ()

00:00:34 #5719 [Verbose] >                 velocity = zero_vec ()

00:00:34 #5720 [Verbose] >         }

00:00:34 #5721 [Verbose] >     ]]

00:00:34 #5722 [Verbose] >     |> stream.from_list

00:00:34 #5723 [Verbose] >     |> multi_particle_state

00:00:34 #5724 [Verbose] >

00:00:34 #5725 [Verbose] > inl billiard_states ~n_method k dt =

00:00:34 #5726 [Verbose] >     states_mps (n_method dt) (billiard_forces k) (billiard_initial ())

00:00:34 #5727 [Verbose] >

00:00:34 #5728 [Verbose] > inl billiard_states_finite n_method k dt =

00:00:34 #5729 [Verbose] >     billiard_states n_method k dt

00:00:34 #5730 [Verbose] >     >> Some

00:00:34 #5731 [Verbose] >     |> seq.take_while_ (fun (multi_particle_state mpst) (_ : i32) =>

00:00:34 #5732 [Verbose] >         match mpst |> stream.try_item 0i32 with

00:00:34 #5733 [Verbose] >         | Some st =>

00:00:34 #5734 [Verbose] >             st.time <= 10

00:00:34 #5735 [Verbose] >         | None => false

00:00:34 #5736 [Verbose] >     )

00:00:34 #5737 [Verbose] >

00:00:34 #5738 [Verbose] > inl momentum (particle_state st) =

00:00:34 #5739 [Verbose] >     inl m = st.mass

00:00:34 #5740 [Verbose] >     inl v = st.velocity

00:00:34 #5741 [Verbose] >     m *^ v

00:00:34 #5742 [Verbose] >

00:00:34 #5743 [Verbose] > inl system_p (multi_particle_state sts) =

00:00:34 #5744 [Verbose] >     sts

00:00:34 #5745 [Verbose] >     |> stream.map momentum

00:00:34 #5746 [Verbose] >     |> stream.fold (^+^) (zero_vec ())

00:00:34 #5747 [Verbose] >

00:00:34 #5748 [Verbose] > inl time_ke_ec_x, time_ke_ec_y =

00:00:34 #5749 [Verbose] >     billiard_states_finite euler_cromer_mps 30 0.03

00:00:34 #5750 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:34 #5751 [Verbose] >         mpst |> stream.try_item 0i32

00:00:34 #5752 [Verbose] >         |> optionm.map (fun st =>

00:00:34 #5753 [Verbose] >             st.time, system_ke (multi_particle_state mpst)

00:00:34 #5754 [Verbose] >         )

00:00:34 #5755 [Verbose] >     )

00:00:34 #5756 [Verbose] >     // |> stream.to_list

00:00:34 #5757 [Verbose] >     |> listm'.choose id

00:00:34 #5758 [Verbose] >     |> listm'.unzip

00:00:34 #5759 [Verbose] >

00:00:34 #5760 [Verbose] > inl time_ke_rk4_x, time_ke_rk4_y =

00:00:34 #5761 [Verbose] >     billiard_states_finite runge_kutta_4 30 0.03

00:00:34 #5762 [Verbose] >     |> listm.map (fun (multi_particle_state mpst) =>

00:00:34 #5763 [Verbose] >         mpst |> stream.try_item 0i32

00:00:34 #5764 [Verbose] >         |> optionm.map (fun st =>

00:00:34 #5765 [Verbose] >             st.time, system_ke (multi_particle_state mpst)

00:00:34 #5766 [Verbose] >         )

00:00:34 #5767 [Verbose] >     )

00:00:34 #5768 [Verbose] >     // |> stream.to_list

00:00:34 #5769 [Verbose] >     |> listm'.choose id

00:00:34 #5770 [Verbose] >     |> listm'.unzip

00:00:34 #5771 [Verbose] >

00:00:34 #5772 [Verbose] > inl time_ke_ec_x : a i32 _ = time_ke_ec_x |> listm.toArray

00:00:34 #5773 [Verbose] > inl time_ke_ec_y : a i32 _ = time_ke_ec_y |> listm.toArray

00:00:34 #5774 [Verbose] >

00:00:34 #5775 [Verbose] > inl time_ke_rk4_x : a i32 _ = time_ke_rk4_x |> listm.toArray

00:00:34 #5776 [Verbose] > inl time_ke_rk4_y : a i32 _ = time_ke_rk4_y |> listm.toArray

00:00:34 #5777 [Verbose] >

00:00:34 #5778 [Verbose] > "system kinetic energy versus time",

00:00:34 #5779 [Verbose] > "time (s)",

00:00:34 #5780 [Verbose] > "system kinetic energy (j)",

00:00:34 #5781 [Verbose] > ;[[

00:00:34 #5782 [Verbose] >     "euler-cromer", time_ke_ec_x, time_ke_ec_y

00:00:34 #5783 [Verbose] >     "runge-kutta 4", time_ke_rk4_x, time_ke_rk4_y

00:00:34 #5784 [Verbose] > ]]

00:00:34 #5785 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0665-6507-6d96ba9a5c38\main.spi

00:00:36 #5786 [Verbose] >

00:00:36 #5787 [Verbose] > ╭─[ 2.24s - return value ]─────────────────────────────────────────────────────╮

00:00:36 #5788 [Verbose] > │ <svg width="640" height="480" viewBox="0 0 640 480"                          │

00:00:36 #5789 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:36 #5790 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:36 #5791 [Verbose] > │ stroke="none"/>                                                              │

00:00:36 #5792 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:36 #5793 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:36 #5794 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:36 #5795 [Verbose] > │ system kinetic energy versus time                                            │

00:00:36 #5796 [Verbose] > │ </text>                                                                      │

00:00:36 #5797 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="59" y1="424" x2="59" │

00:00:36 #5798 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #5799 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:36 #5800 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #5801 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="79" y1="424" x2="79" │

00:00:36 #5802 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #5803 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="89" y1="424" x2="89" │

00:00:36 #5804 [Verbose] > │ y2="75"/>                                                                    │

00:00:36 #5805 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1...                        │

00:00:36 #5806 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:36 #5807 [Verbose] >

00:00:36 #5808 [Verbose] > ╭─[ 2.25s - stdout ]───────────────────────────────────────────────────────────╮

00:00:36 #5809 [Verbose] > │ type UH0 =                                                                   │

00:00:36 #5810 [Verbose] > │     | UH0_0 of float * float * float * float * float * float * float * float │

00:00:36 #5811 [Verbose] > │ * float * (unit -> UH0)                                                      │

00:00:36 #5812 [Verbose] > │     | UH0_1                                                                  │

00:00:36 #5813 [Verbose] > │ and UH1 =                                                                    │

00:00:36 #5814 [Verbose] > │     | UH1_0 of float * float * float * float * float * float * float * float │

00:00:36 #5815 [Verbose] > │ * float * (unit -> UH1)                                                      │

00:00:36 #5816 [Verbose] > │     | UH1_1                                                                  │

00:00:36 #5817 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:36 #5818 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:36 #5819 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:36 #5820 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:36 #5821 [Verbose] > │ and UH2 =                                                                    │

00:00:36 #5822 [Verbose] > │     | UH2_0 of float * float * float * float * float * float * float * float │

00:00:36 #5823 [Verbose] > │ * float * float * float * float * float * float * float * float * float *    │

00:00:36 #5824 [Verbose] > │ float * (unit -> UH2)                                                        │

00:00:36 #5825 [Verbose] > │     | UH2_1                                                                  │

00:00:36 #5826 [Verbose] > │ and UH3 =                                                                    │

00:00:36 #5827 [Verbose] > │     | UH3_0 of int32 * float * float * float * float * float * float * float │

00:00:36 #5828 [Verbose] > │ * float * float * (unit -> UH3)                                              │

00:00:36 #5829 [Verbose] > │     | UH3_1                                                                  │

00:00:36 #5830 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:36 #5831 [Verbose] > │     | US1_0                                                                  │

00:00:36 #5832 [Verbose] > │     | US1_1 of f1_0 : (struct (float * float * float * float * float * float │

00:00:36 #5833 [Verbose] > │ * float * float * float) -> struct (float * float * float))                  │

00:00:36 #5834 [Verbose] > │ and [<Struct>] US2 =                                                         │

00:00:36 #5835 [Verbose] > │     | US2_0                                                                  │

00:00:36 #5836 [Verbose] > │     | US2_1 of f1_0 : float * f1_1 : float * f1_2 : float * f1_3 : float *   │

00:00:36 #5837 [Verbose] > │ f1_4 : float * f1_5 : float * f1_6 : float * f1_7 : float * f1_8 : float     │

00:00:36 #5838 [Verbose] > │ and UH4 =                                                                    │

00:00:36 #5839 [Verbose] > │     | UH4_0 of UH0 * UH4                                                     │

00:00:36 #5840 [Verbose] > │     | UH4_1                                                                  │

00:00:36 #5841 [Verbose] > │ and UH5 =                                                                    │

00:00:36 #5842 [Verbose] > │     | UH5_0 of int32 * UH5                                                   │

00:00:36 #5843 [Verbose] > │     | UH5_1                                                                  │

00:00:36 #5844 [Verbose] > │ and [<Struct>] US3 =                                                         │

00:00:36 #5845 [Verbose] > │     | US3_0                                                                  │

00:00:36 #5846 [Verbose] > │     | US3_1 of f1_0 : float * f1_1 : float                                   │

00:00:36 #5847 [Verbose] > │ and UH6 =                                                                    │

00:00:36 #5848 [Verbose] > │     | UH6_0 of US3 * UH6                                                     │

00:00:36 #5849 [Verbose] > │     | UH6_1                                                                  │

00:00:36 #5850 [Verbose] > │ and UH7 =                                                                    │

00:00:36 #5851 [Verbose] > │     | UH7_0 of float * (unit -> UH7)                                         │

00:00:36 #5852 [Verbose] > │     | UH7_1                                                                  │

00:00:36 #5853 [Verbose] > │ and UH8 =                                                                    │

00:00:36 #5854 [Verbose] > │     | UH8_0 of float * float * UH8                                           │

00:00:36 #5855 [Verbose] > │     | UH8_1                                                                  │

00:00:36 #5856 [Verbose] > │ and UH9 =                                                                    │

00:00:36 #5857 [Verbose] > │     | UH9_0 of float * UH9                                                   │

00:00:36 #5858 [Verbose] > │     | UH9_1                                                                  │

00:00:36 #5859 [Verbose] > │ let rec closure3 (v0 : float, v1 : (unit -> UH0), v2 : (unit -> UH1)) () :   │

00:00:36 #5860 [Verbose] > │ UH0 =                                                                        │

00:00:36 #5861 [Verbose] > │     let v3 : UH1 = v2 ()                                                     │

00:00:36 #5862 [Verbose] > │     let v4 : UH0 = v1 ()                                                     │

00:00:36 #5863 [Verbose] > │     match v3 with                                                            │

00:00:36 #5864 [Verbose] > │     | UH1_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (* StreamCons *) │

00:00:36 #5865 [Verbose] > │         match v4 with                                                        │

00:00:36 #5866 [Verbose] > │         | UH0_0(v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) -> (*      │

00:00:36 #5867 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #5868 [Verbose] > │             let v25 : float = v10 * v0                                       │

00:00:36 #5869 [Verbose] > │             let v26 : float = v20 + v25                                      │

00:00:36 #5870 [Verbose] > │             let v27 : float = v0 * v7                                        │

00:00:36 #5871 [Verbose] > │             let v28 : float = v0 * v8                                        │

00:00:36 #5872 [Verbose] > │             let v29 : float = v0 * v9                                        │

00:00:36 #5873 [Verbose] > │             let v30 : float = v17 + v27                                      │

00:00:36 #5874 [Verbose] > │             let v31 : float = v18 + v28                                      │

00:00:36 #5875 [Verbose] > │             let v32 : float = v19 + v29                                      │

00:00:36 #5876 [Verbose] > │             let v33 : float = v0 * v11                                       │

00:00:36 #5877 [Verbose] > │             let v34 : float = v0 * v12                                       │

00:00:36 #5878 [Verbose] > │             let v35 : float = v0 * v13                                       │

00:00:36 #5879 [Verbose] > │             let v36 : float = v21 + v33                                      │

00:00:36 #5880 [Verbose] > │             let v37 : float = v22 + v34                                      │

00:00:36 #5881 [Verbose] > │             let v38 : float = v23 + v35                                      │

00:00:36 #5882 [Verbose] > │             let v39 : (unit -> UH0) = closure3(v0, v24, v14)                 │

00:00:36 #5883 [Verbose] > │             UH0_0(v15, v16, v30, v31, v32, v26, v36, v37, v38, v39)          │

00:00:36 #5884 [Verbose] > │         | UH0_1 -> (* StreamNil *)                                           │

00:00:36 #5885 [Verbose] > │             UH0_1                                                            │

00:00:36 #5886 [Verbose] > │     | UH1_1 -> (* StreamNil *)                                               │

00:00:36 #5887 [Verbose] > │         UH0_1                                                                │

00:00:36 #5888 [Verbose] > │ and closure4 (v0 : UH0) () : UH0 =                                           │

00:00:36 #5889 [Verbose] > │     v0                                                                       │

00:00:36 #5890 [Verbose] > │ and closure5 (v0 : UH0, v1 : Mut0) () : UH0 =                                │

00:00:36 #5891 [Verbose] > │     let v2 : US0 = v1.l0                                                     │

00:00:36 #5892 [Verbose] > │     match v2 with                                                            │

00:00:36 #5893 [Verbose] > │     | US0_0(v3) -> (* Computed *)                                            │

00:00:36 #5894 [Verbose] > │         v3                                                                   │

00:00:36 #5895 [Verbose] > │     | US0_1(v4) -> (* NotComputed *)                                         │

00:00:36 #5896 [Verbose] > │         let v5 : UH0 = v4 ()                                                 │

00:00:36 #5897 [Verbose] > │         let v20 : UH0 =                                                      │

00:00:36 #5898 [Verbose] > │             match v5 with                                                    │

00:00:36 #5899 [Verbose] > │             | UH0_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) -> (*     │

00:00:36 #5900 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #5901 [Verbose] > │                 let v17 : (unit -> UH0) = method1(v0, v16)                   │

00:00:36 #5902 [Verbose] > │                 UH0_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v17)         │

00:00:36 #5903 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:36 #5904 [Verbose] > │                 UH0_1                                                        │

00:00:36 #5905 [Verbose] > │         let v21 : US0 = US0_0(v20)                                           │

00:00:36 #5906 [Verbose] > │         v1.l0 <- v21                                                         │

00:00:36 #5907 [Verbose] > │         v20                                                                  │

00:00:36 #5908 [Verbose] > │ and method1 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) =                 │

00:00:36 #5909 [Verbose] > │     let v2 : US0 = US0_1(v1)                                                 │

00:00:36 #5910 [Verbose] > │     let v3 : Mut0 = {l0 = v2} : Mut0                                         │

00:00:36 #5911 [Verbose] > │     closure5(v0, v3)                                                         │

00:00:36 #5912 [Verbose] > │ and closure6 (v0 : (unit -> UH0), v1 : (unit -> UH0)) () : UH2 =             │

00:00:36 #5913 [Verbose] > │     let v2 : UH0 = v1 ()                                                     │

00:00:36 #5914 [Verbose] > │     let v3 : UH0 = v0 ()                                                     │

00:00:36 #5915 [Verbose] > │     match v2 with                                                            │

00:00:36 #5916 [Verbose] > │     | UH0_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *)  │

00:00:36 #5917 [Verbose] > │         match v3 with                                                        │

00:00:36 #5918 [Verbose] > │         | UH0_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (*      │

00:00:36 #5919 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #5920 [Verbose] > │             let v24 : (unit -> UH2) = closure6(v23, v13)                     │

00:00:36 #5921 [Verbose] > │             UH2_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v14, v15, v16, v17, │

00:00:36 #5922 [Verbose] > │ v18, v19, v20, v21, v22, v24)                                                │

00:00:36 #5923 [Verbose] > │         | UH0_1 -> (* StreamNil *)                                           │

00:00:36 #5924 [Verbose] > │             UH2_1                                                            │

00:00:36 #5925 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:36 #5926 [Verbose] > │         UH2_1                                                                │

00:00:36 #5927 [Verbose] > │ and closure7 (v0 : UH0) () : UH0 =                                           │

00:00:36 #5928 [Verbose] > │     v0                                                                       │

00:00:36 #5929 [Verbose] > │ and method2 (v0 : float, v1 : UH2, v2 : UH0) : UH0 =                         │

00:00:36 #5930 [Verbose] > │     match v1 with                                                            │

00:00:36 #5931 [Verbose] > │     | UH2_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16,   │

00:00:36 #5932 [Verbose] > │ v17, v18, v19, v20, v21) -> (* StreamCons *)                                 │

00:00:36 #5933 [Verbose] > │         let v22 : UH2 = v21 ()                                               │

00:00:36 #5934 [Verbose] > │         let v23 : UH0 = method2(v0, v22, v2)                                 │

00:00:36 #5935 [Verbose] > │         let v24 : float = v0 * v18                                           │

00:00:36 #5936 [Verbose] > │         let v25 : float = v0 * v19                                           │

00:00:36 #5937 [Verbose] > │         let v26 : float = v0 * v20                                           │

00:00:36 #5938 [Verbose] > │         let v27 : float = v5 + v24                                           │

00:00:36 #5939 [Verbose] > │         let v28 : float = v6 + v25                                           │

00:00:36 #5940 [Verbose] > │         let v29 : float = v7 + v26                                           │

00:00:36 #5941 [Verbose] > │         let v30 : (unit -> UH0) = closure7(v23)                              │

00:00:36 #5942 [Verbose] > │         UH0_0(v12, v13, v27, v28, v29, v17, v18, v19, v20, v30)              │

00:00:36 #5943 [Verbose] > │     | UH2_1 -> (* StreamNil *)                                               │

00:00:36 #5944 [Verbose] > │         v2                                                                   │

00:00:36 #5945 [Verbose] > │ and closure2 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =              │

00:00:36 #5946 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:36 #5947 [Verbose] > │     let v45 : UH0 =                                                          │

00:00:36 #5948 [Verbose] > │         match v3 with                                                        │

00:00:36 #5949 [Verbose] > │         | UH1_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons │

00:00:36 #5950 [Verbose] > │ *)                                                                           │

00:00:36 #5951 [Verbose] > │             match v2 with                                                    │

00:00:36 #5952 [Verbose] > │             | UH0_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (*  │

00:00:36 #5953 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #5954 [Verbose] > │                 let v24 : float = v9 * v0                                    │

00:00:36 #5955 [Verbose] > │                 let v25 : float = v19 + v24                                  │

00:00:36 #5956 [Verbose] > │                 let v26 : float = v0 * v6                                    │

00:00:36 #5957 [Verbose] > │                 let v27 : float = v0 * v7                                    │

00:00:36 #5958 [Verbose] > │                 let v28 : float = v0 * v8                                    │

00:00:36 #5959 [Verbose] > │                 let v29 : float = v16 + v26                                  │

00:00:36 #5960 [Verbose] > │                 let v30 : float = v17 + v27                                  │

00:00:36 #5961 [Verbose] > │                 let v31 : float = v18 + v28                                  │

00:00:36 #5962 [Verbose] > │                 let v32 : float = v0 * v10                                   │

00:00:36 #5963 [Verbose] > │                 let v33 : float = v0 * v11                                   │

00:00:36 #5964 [Verbose] > │                 let v34 : float = v0 * v12                                   │

00:00:36 #5965 [Verbose] > │                 let v35 : float = v20 + v32                                  │

00:00:36 #5966 [Verbose] > │                 let v36 : float = v21 + v33                                  │

00:00:36 #5967 [Verbose] > │                 let v37 : float = v22 + v34                                  │

00:00:36 #5968 [Verbose] > │                 let v38 : (unit -> UH0) = closure3(v0, v23, v13)             │

00:00:36 #5969 [Verbose] > │                 UH0_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38)      │

00:00:36 #5970 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:36 #5971 [Verbose] > │                 UH0_1                                                        │

00:00:36 #5972 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #5973 [Verbose] > │             UH0_1                                                            │

00:00:36 #5974 [Verbose] > │     let v46 : (unit -> UH0) = closure4(v45)                                  │

00:00:36 #5975 [Verbose] > │     let v47 : (unit -> UH0) = method1(v45, v46)                              │

00:00:36 #5976 [Verbose] > │     let v48 : UH0 = v47 ()                                                   │

00:00:36 #5977 [Verbose] > │     let v76 : UH2 =                                                          │

00:00:36 #5978 [Verbose] > │         match v2 with                                                        │

00:00:36 #5979 [Verbose] > │         | UH0_0(v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) -> (*      │

00:00:36 #5980 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #5981 [Verbose] > │             match v48 with                                                   │

00:00:36 #5982 [Verbose] > │             | UH0_0(v59, v60, v61, v62, v63, v64, v65, v66, v67, v68) -> (*  │

00:00:36 #5983 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #5984 [Verbose] > │                 let v69 : (unit -> UH2) = closure6(v68, v58)                 │

00:00:36 #5985 [Verbose] > │                 UH2_0(v49, v50, v51, v52, v53, v54, v55, v56, v57, v59, v60, │

00:00:36 #5986 [Verbose] > │ v61, v62, v63, v64, v65, v66, v67, v69)                                      │

00:00:36 #5987 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:36 #5988 [Verbose] > │                 UH2_1                                                        │

00:00:36 #5989 [Verbose] > │         | UH0_1 -> (* StreamNil *)                                           │

00:00:36 #5990 [Verbose] > │             UH2_1                                                            │

00:00:36 #5991 [Verbose] > │     let v77 : UH0 = UH0_1                                                    │

00:00:36 #5992 [Verbose] > │     let v78 : UH0 = method2(v0, v76, v77)                                    │

00:00:36 #5993 [Verbose] > │     v78                                                                      │

00:00:36 #5994 [Verbose] > │ and closure1 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =               │

00:00:36 #5995 [Verbose] > │     closure2(v0, v1)                                                         │

00:00:36 #5996 [Verbose] > │ and closure0 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =              │

00:00:36 #5997 [Verbose] > │     closure1(v0)                                                             │

00:00:36 #5998 [Verbose] > │ and closure9 (v0 : UH3) () : UH3 =                                           │

00:00:36 #5999 [Verbose] > │     v0                                                                       │

00:00:36 #6000 [Verbose] > │ and method3 (v0 : UH0, v1 : UH3, v2 : int32) : struct (UH3 * int32) =        │

00:00:36 #6001 [Verbose] > │     match v0 with                                                            │

00:00:36 #6002 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons *)   │

00:00:36 #6003 [Verbose] > │         let v13 : int32 = v2 + 1                                             │

00:00:36 #6004 [Verbose] > │         let v14 : UH0 = v12 ()                                               │

00:00:36 #6005 [Verbose] > │         let v15 : (unit -> UH3) = closure9(v1)                               │

00:00:36 #6006 [Verbose] > │         let v16 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v15) │

00:00:36 #6007 [Verbose] > │         method3(v14, v16, v13)                                               │

00:00:36 #6008 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:36 #6009 [Verbose] > │         struct (v1, v2)                                                      │

00:00:36 #6010 [Verbose] > │ and closure10 (v0 : UH3) () : UH3 =                                          │

00:00:36 #6011 [Verbose] > │     v0                                                                       │

00:00:36 #6012 [Verbose] > │ and method4 (v0 : UH3, v1 : UH3) : UH3 =                                     │

00:00:36 #6013 [Verbose] > │     match v0 with                                                            │

00:00:36 #6014 [Verbose] > │     | UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons  │

00:00:36 #6015 [Verbose] > │ *)                                                                           │

00:00:36 #6016 [Verbose] > │         let v13 : UH3 = v12 ()                                               │

00:00:36 #6017 [Verbose] > │         let v14 : (unit -> UH3) = closure10(v1)                              │

00:00:36 #6018 [Verbose] > │         let v15 : UH3 = UH3_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v14) │

00:00:36 #6019 [Verbose] > │         method4(v13, v15)                                                    │

00:00:36 #6020 [Verbose] > │     | UH3_1 -> (* StreamNil *)                                               │

00:00:36 #6021 [Verbose] > │         v1                                                                   │

00:00:36 #6022 [Verbose] > │ and method6 (v0 : int32, v1 : UH0) : US2 =                                   │

00:00:36 #6023 [Verbose] > │     match v1 with                                                            │

00:00:36 #6024 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *)    │

00:00:36 #6025 [Verbose] > │         let v12 : bool = v0 <= 0                                             │

00:00:36 #6026 [Verbose] > │         if v12 then                                                          │

00:00:36 #6027 [Verbose] > │             US2_1(v2, v3, v4, v5, v6, v7, v8, v9, v10)                       │

00:00:36 #6028 [Verbose] > │         else                                                                 │

00:00:36 #6029 [Verbose] > │             let v14 : int32 = v0 - 1                                         │

00:00:36 #6030 [Verbose] > │             let v15 : UH0 = v11 ()                                           │

00:00:36 #6031 [Verbose] > │             method6(v14, v15)                                                │

00:00:36 #6032 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:36 #6033 [Verbose] > │         US2_0                                                                │

00:00:36 #6034 [Verbose] > │ and closure11 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float,   │

00:00:36 #6035 [Verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 :    │

00:00:36 #6036 [Verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:36 #6037 [Verbose] > │ : float, v17 : float) : struct (float * float * float) =                     │

00:00:36 #6038 [Verbose] > │     let v18 : float = -1.0 * v2                                              │

00:00:36 #6039 [Verbose] > │     let v19 : float = -1.0 * v3                                              │

00:00:36 #6040 [Verbose] > │     let v20 : float = -1.0 * v4                                              │

00:00:36 #6041 [Verbose] > │     let v21 : float = v11 + v18                                              │

00:00:36 #6042 [Verbose] > │     let v22 : float = v12 + v19                                              │

00:00:36 #6043 [Verbose] > │     let v23 : float = v13 + v20                                              │

00:00:36 #6044 [Verbose] > │     let v24 : float = v21 * v21                                              │

00:00:36 #6045 [Verbose] > │     let v25 : float = v22 * v22                                              │

00:00:36 #6046 [Verbose] > │     let v26 : float = v24 + v25                                              │

00:00:36 #6047 [Verbose] > │     let v27 : float = v23 * v23                                              │

00:00:36 #6048 [Verbose] > │     let v28 : float = v26 + v27                                              │

00:00:36 #6049 [Verbose] > │     let v29 : float = sqrt v28                                               │

00:00:36 #6050 [Verbose] > │     let v30 : bool = v29 >= 0.06                                             │

00:00:36 #6051 [Verbose] > │     let v33 : float =                                                        │

00:00:36 #6052 [Verbose] > │         if v30 then                                                          │

00:00:36 #6053 [Verbose] > │             0.0                                                              │

00:00:36 #6054 [Verbose] > │         else                                                                 │

00:00:36 #6055 [Verbose] > │             let v31 : float = v29 - 0.06                                     │

00:00:36 #6056 [Verbose] > │             let v32 : float = -30.0 * v31                                    │

00:00:36 #6057 [Verbose] > │             v32                                                              │

00:00:36 #6058 [Verbose] > │     let v34 : float = v33 * v21                                              │

00:00:36 #6059 [Verbose] > │     let v35 : float = v33 * v22                                              │

00:00:36 #6060 [Verbose] > │     let v36 : float = v33 * v23                                              │

00:00:36 #6061 [Verbose] > │     let v37 : float = v34 / v29                                              │

00:00:36 #6062 [Verbose] > │     let v38 : float = v35 / v29                                              │

00:00:36 #6063 [Verbose] > │     let v39 : float = v36 / v29                                              │

00:00:36 #6064 [Verbose] > │     struct (v37, v38, v39)                                                   │

00:00:36 #6065 [Verbose] > │ and closure12 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4  │

00:00:36 #6066 [Verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *   │

00:00:36 #6067 [Verbose] > │ float * float) =                                                             │

00:00:36 #6068 [Verbose] > │     struct (0.0, 0.0, 0.0)                                                   │

00:00:36 #6069 [Verbose] > │ and closure13 (v0 : UH1) () : UH1 =                                          │

00:00:36 #6070 [Verbose] > │     v0                                                                       │

00:00:36 #6071 [Verbose] > │ and method5 (v0 : UH0, v1 : UH3, v2 : UH1) : UH1 =                           │

00:00:36 #6072 [Verbose] > │     match v1 with                                                            │

00:00:36 #6073 [Verbose] > │     | UH3_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons │

00:00:36 #6074 [Verbose] > │ *)                                                                           │

00:00:36 #6075 [Verbose] > │         let v14 : UH3 = v13 ()                                               │

00:00:36 #6076 [Verbose] > │         let v15 : UH1 = method5(v0, v14, v2)                                 │

00:00:36 #6077 [Verbose] > │         let v16 : bool = v3 = 0                                              │

00:00:36 #6078 [Verbose] > │         let v52 : US1 =                                                      │

00:00:36 #6079 [Verbose] > │             if v16 then                                                      │

00:00:36 #6080 [Verbose] > │                 let v17 : int32 = 1                                          │

00:00:36 #6081 [Verbose] > │                 let v18 : US2 = method6(v17, v0)                             │

00:00:36 #6082 [Verbose] > │                 match v18 with                                               │

00:00:36 #6083 [Verbose] > │                 | US2_0 -> (* None *)                                        │

00:00:36 #6084 [Verbose] > │                     US1_0                                                    │

00:00:36 #6085 [Verbose] > │                 | US2_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (*   │

00:00:36 #6086 [Verbose] > │ Some *)                                                                      │

00:00:36 #6087 [Verbose] > │                     let v28 : (struct (float * float * float * float * float │

00:00:36 #6088 [Verbose] > │ * float * float * float * float) -> struct (float * float * float)) =        │

00:00:36 #6089 [Verbose] > │ closure11(v19, v20, v21, v22, v23, v24, v25, v26, v27)                       │

00:00:36 #6090 [Verbose] > │                     US1_1(v28)                                               │

00:00:36 #6091 [Verbose] > │             else                                                             │

00:00:36 #6092 [Verbose] > │                 let v33 : bool = v3 = 1                                      │

00:00:36 #6093 [Verbose] > │                 if v33 then                                                  │

00:00:36 #6094 [Verbose] > │                     let v34 : int32 = 0                                      │

00:00:36 #6095 [Verbose] > │                     let v35 : US2 = method6(v34, v0)                         │

00:00:36 #6096 [Verbose] > │                     match v35 with                                           │

00:00:36 #6097 [Verbose] > │                     | US2_0 -> (* None *)                                    │

00:00:36 #6098 [Verbose] > │                         US1_0                                                │

00:00:36 #6099 [Verbose] > │                     | US2_1(v36, v37, v38, v39, v40, v41, v42, v43, v44) ->  │

00:00:36 #6100 [Verbose] > │ (* Some *)                                                                   │

00:00:36 #6101 [Verbose] > │                         let v45 : (struct (float * float * float * float *   │

00:00:36 #6102 [Verbose] > │ float * float * float * float * float) -> struct (float * float * float)) =  │

00:00:36 #6103 [Verbose] > │ closure11(v36, v37, v38, v39, v40, v41, v42, v43, v44)                       │

00:00:36 #6104 [Verbose] > │                         US1_1(v45)                                           │

00:00:36 #6105 [Verbose] > │                 else                                                         │

00:00:36 #6106 [Verbose] > │                     US1_0                                                    │

00:00:36 #6107 [Verbose] > │         let v56 : (struct (float * float * float * float * float * float *   │

00:00:36 #6108 [Verbose] > │ float * float * float) -> struct (float * float * float)) =                  │

00:00:36 #6109 [Verbose] > │             match v52 with                                                   │

00:00:36 #6110 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:36 #6111 [Verbose] > │                 closure12()                                                  │

00:00:36 #6112 [Verbose] > │             | US1_1(v53) -> (* Some *)                                       │

00:00:36 #6113 [Verbose] > │                 v53                                                          │

00:00:36 #6114 [Verbose] > │         let struct (v57 : float, v58 : float, v59 : float) = v56 struct (v4, │

00:00:36 #6115 [Verbose] > │ v5, v6, v7, v8, v9, v10, v11, v12)                                           │

00:00:36 #6116 [Verbose] > │         let v60 : float = v57 / v5                                           │

00:00:36 #6117 [Verbose] > │         let v61 : float = v58 / v5                                           │

00:00:36 #6118 [Verbose] > │         let v62 : float = v59 / v5                                           │

00:00:36 #6119 [Verbose] > │         let v63 : (unit -> UH1) = closure13(v15)                             │

00:00:36 #6120 [Verbose] > │         UH1_0(0.0, 0.0, v10, v11, v12, 1.0, v60, v61, v62, v63)              │

00:00:36 #6121 [Verbose] > │     | UH3_1 -> (* StreamNil *)                                               │

00:00:36 #6122 [Verbose] > │         v2                                                                   │

00:00:36 #6123 [Verbose] > │ and closure8 () (v0 : UH0) : UH1 =                                           │

00:00:36 #6124 [Verbose] > │     let v1 : UH3 = UH3_1                                                     │

00:00:36 #6125 [Verbose] > │     let v2 : int32 = 0                                                       │

00:00:36 #6126 [Verbose] > │     let struct (v3 : UH3, v4 : int32) = method3(v0, v1, v2)                  │

00:00:36 #6127 [Verbose] > │     let v5 : UH3 = UH3_1                                                     │

00:00:36 #6128 [Verbose] > │     let v6 : UH3 = method4(v3, v5)                                           │

00:00:36 #6129 [Verbose] > │     let v7 : UH1 = UH1_1                                                     │

00:00:36 #6130 [Verbose] > │     let v8 : UH1 = method5(v0, v6, v7)                                       │

00:00:36 #6131 [Verbose] > │     v8                                                                       │

00:00:36 #6132 [Verbose] > │ and method8 (v0 : int32, v1 : int32) : UH5 =                                 │

00:00:36 #6133 [Verbose] > │     let v2 : bool = v1 < v0                                                  │

00:00:36 #6134 [Verbose] > │     if v2 then                                                               │

00:00:36 #6135 [Verbose] > │         let v3 : int32 = v1 + 1                                              │

00:00:36 #6136 [Verbose] > │         let v4 : UH5 = method8(v0, v3)                                       │

00:00:36 #6137 [Verbose] > │         UH5_0(v1, v4)                                                        │

00:00:36 #6138 [Verbose] > │     else                                                                     │

00:00:36 #6139 [Verbose] > │         UH5_1                                                                │

00:00:36 #6140 [Verbose] > │ and closure15 () () : UH0 =                                                  │

00:00:36 #6141 [Verbose] > │     UH0_1                                                                    │

00:00:36 #6142 [Verbose] > │ and closure14 () () : UH0 =                                                  │

00:00:36 #6143 [Verbose] > │     let v0 : (unit -> UH0) = closure15()                                     │

00:00:36 #6144 [Verbose] > │     UH0_0(0.0, 0.16, 1.0, 0.02, 0.0, 0.0, 0.0, 0.0, 0.0, v0)                 │

00:00:36 #6145 [Verbose] > │ and method9 (v0 : (UH0 -> UH0), v1 : UH5, v2 : UH0) : UH0 =                  │

00:00:36 #6146 [Verbose] > │     match v1 with                                                            │

00:00:36 #6147 [Verbose] > │     | UH5_0(v3, v4) -> (* Cons *)                                            │

00:00:36 #6148 [Verbose] > │         let v5 : (unit -> UH0) = closure4(v2)                                │

00:00:36 #6149 [Verbose] > │         let v6 : (unit -> UH0) = method1(v2, v5)                             │

00:00:36 #6150 [Verbose] > │         let v7 : UH0 = v6 ()                                                 │

00:00:36 #6151 [Verbose] > │         let v8 : UH0 = v0 v7                                                 │

00:00:36 #6152 [Verbose] > │         method9(v0, v4, v8)                                                  │

00:00:36 #6153 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:36 #6154 [Verbose] > │         v2                                                                   │

00:00:36 #6155 [Verbose] > │ and method10 (v0 : UH4, v1 : UH4) : UH4 =                                    │

00:00:36 #6156 [Verbose] > │     match v0 with                                                            │

00:00:36 #6157 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:36 #6158 [Verbose] > │         let v4 : UH4 = UH4_0(v2, v1)                                         │

00:00:36 #6159 [Verbose] > │         method10(v3, v4)                                                     │

00:00:36 #6160 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:36 #6161 [Verbose] > │         v1                                                                   │

00:00:36 #6162 [Verbose] > │ and method7 (v0 : (UH0 -> UH0), v1 : UH4, v2 : int32) : UH4 =                │

00:00:36 #6163 [Verbose] > │     let v3 : int32 = 0                                                       │

00:00:36 #6164 [Verbose] > │     let v4 : UH5 = method8(v2, v3)                                           │

00:00:36 #6165 [Verbose] > │     let v5 : float = 0.0                                                     │

00:00:36 #6166 [Verbose] > │     let v6 : float = 0.16                                                    │

00:00:36 #6167 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:36 #6168 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:36 #6169 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:36 #6170 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:36 #6171 [Verbose] > │     let v11 : float = 0.2                                                    │

00:00:36 #6172 [Verbose] > │     let v12 : float = 0.0                                                    │

00:00:36 #6173 [Verbose] > │     let v13 : float = 0.0                                                    │

00:00:36 #6174 [Verbose] > │     let v14 : (unit -> UH0) = closure14()                                    │

00:00:36 #6175 [Verbose] > │     let v15 : UH0 = UH0_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14)       │

00:00:36 #6176 [Verbose] > │     let v16 : UH0 = method9(v0, v4, v15)                                     │

00:00:36 #6177 [Verbose] > │     let v17 : int32 = 0                                                      │

00:00:36 #6178 [Verbose] > │     let v18 : US2 = method6(v17, v16)                                        │

00:00:36 #6179 [Verbose] > │     let v30 : bool =                                                         │

00:00:36 #6180 [Verbose] > │         match v18 with                                                       │

00:00:36 #6181 [Verbose] > │         | US2_0 -> (* None *)                                                │

00:00:36 #6182 [Verbose] > │             false                                                            │

00:00:36 #6183 [Verbose] > │         | US2_1(v19, v20, v21, v22, v23, v24, v25, v26, v27) -> (* Some *)   │

00:00:36 #6184 [Verbose] > │             let v28 : bool = v24 <= 10.0                                     │

00:00:36 #6185 [Verbose] > │             v28                                                              │

00:00:36 #6186 [Verbose] > │     if v30 then                                                              │

00:00:36 #6187 [Verbose] > │         let v31 : UH4 = UH4_0(v16, v1)                                       │

00:00:36 #6188 [Verbose] > │         let v32 : int32 = v2 + 1                                             │

00:00:36 #6189 [Verbose] > │         method7(v0, v31, v32)                                                │

00:00:36 #6190 [Verbose] > │     else                                                                     │

00:00:36 #6191 [Verbose] > │         let v34 : UH4 = UH4_1                                                │

00:00:36 #6192 [Verbose] > │         method10(v1, v34)                                                    │

00:00:36 #6193 [Verbose] > │ and closure16 (v0 : UH7) () : UH7 =                                          │

00:00:36 #6194 [Verbose] > │     v0                                                                       │

00:00:36 #6195 [Verbose] > │ and method12 (v0 : UH0, v1 : UH7) : UH7 =                                    │

00:00:36 #6196 [Verbose] > │     match v0 with                                                            │

00:00:36 #6197 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *)    │

00:00:36 #6198 [Verbose] > │         let v12 : UH0 = v11 ()                                               │

00:00:36 #6199 [Verbose] > │         let v13 : UH7 = method12(v12, v1)                                    │

00:00:36 #6200 [Verbose] > │         let v14 : float = v8 * v8                                            │

00:00:36 #6201 [Verbose] > │         let v15 : float = v9 * v9                                            │

00:00:36 #6202 [Verbose] > │         let v16 : float = v14 + v15                                          │

00:00:36 #6203 [Verbose] > │         let v17 : float = v10 * v10                                          │

00:00:36 #6204 [Verbose] > │         let v18 : float = v16 + v17                                          │

00:00:36 #6205 [Verbose] > │         let v19 : float = sqrt v18                                           │

00:00:36 #6206 [Verbose] > │         let v20 : float = 0.5 * v3                                           │

00:00:36 #6207 [Verbose] > │         let v21 : float = v19 ** 2.0                                         │

00:00:36 #6208 [Verbose] > │         let v22 : float = v20 * v21                                          │

00:00:36 #6209 [Verbose] > │         let v23 : (unit -> UH7) = closure16(v13)                             │

00:00:36 #6210 [Verbose] > │         UH7_0(v22, v23)                                                      │

00:00:36 #6211 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:36 #6212 [Verbose] > │         v1                                                                   │

00:00:36 #6213 [Verbose] > │ and method13 (v0 : UH7, v1 : float) : float =                                │

00:00:36 #6214 [Verbose] > │     match v0 with                                                            │

00:00:36 #6215 [Verbose] > │     | UH7_0(v2, v3) -> (* StreamCons *)                                      │

00:00:36 #6216 [Verbose] > │         let v4 : float = v1 + v2                                             │

00:00:36 #6217 [Verbose] > │         let v5 : UH7 = v3 ()                                                 │

00:00:36 #6218 [Verbose] > │         method13(v5, v4)                                                     │

00:00:36 #6219 [Verbose] > │     | UH7_1 -> (* StreamNil *)                                               │

00:00:36 #6220 [Verbose] > │         v1                                                                   │

00:00:36 #6221 [Verbose] > │ and method11 (v0 : UH4, v1 : UH6) : UH6 =                                    │

00:00:36 #6222 [Verbose] > │     match v0 with                                                            │

00:00:36 #6223 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:36 #6224 [Verbose] > │         let v4 : UH6 = method11(v3, v1)                                      │

00:00:36 #6225 [Verbose] > │         let v5 : int32 = 0                                                   │

00:00:36 #6226 [Verbose] > │         let v6 : US2 = method6(v5, v2)                                       │

00:00:36 #6227 [Verbose] > │         let v23 : US3 =                                                      │

00:00:36 #6228 [Verbose] > │             match v6 with                                                    │

00:00:36 #6229 [Verbose] > │             | US2_0 -> (* None *)                                            │

00:00:36 #6230 [Verbose] > │                 US3_0                                                        │

00:00:36 #6231 [Verbose] > │             | US2_1(v7, v8, v9, v10, v11, v12, v13, v14, v15) -> (* Some *)  │

00:00:36 #6232 [Verbose] > │                 let v16 : UH7 = UH7_1                                        │

00:00:36 #6233 [Verbose] > │                 let v17 : UH7 = method12(v2, v16)                            │

00:00:36 #6234 [Verbose] > │                 let v18 : float = 0.0                                        │

00:00:36 #6235 [Verbose] > │                 let v19 : float = method13(v17, v18)                         │

00:00:36 #6236 [Verbose] > │                 US3_1(v12, v19)                                              │

00:00:36 #6237 [Verbose] > │         UH6_0(v23, v4)                                                       │

00:00:36 #6238 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:36 #6239 [Verbose] > │         v1                                                                   │

00:00:36 #6240 [Verbose] > │ and method14 (v0 : UH6, v1 : UH8) : UH8 =                                    │

00:00:36 #6241 [Verbose] > │     match v0 with                                                            │

00:00:36 #6242 [Verbose] > │     | UH6_0(v2, v3) -> (* Cons *)                                            │

00:00:36 #6243 [Verbose] > │         let v4 : UH8 = method14(v3, v1)                                      │

00:00:36 #6244 [Verbose] > │         match v2 with                                                        │

00:00:36 #6245 [Verbose] > │         | US3_0 -> (* None *)                                                │

00:00:36 #6246 [Verbose] > │             v4                                                               │

00:00:36 #6247 [Verbose] > │         | US3_1(v5, v6) -> (* Some *)                                        │

00:00:36 #6248 [Verbose] > │             UH8_0(v5, v6, v4)                                                │

00:00:36 #6249 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:36 #6250 [Verbose] > │         v1                                                                   │

00:00:36 #6251 [Verbose] > │ and method15 (v0 : UH8, v1 : UH9, v2 : UH9) : struct (UH9 * UH9) =           │

00:00:36 #6252 [Verbose] > │     match v0 with                                                            │

00:00:36 #6253 [Verbose] > │     | UH8_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:36 #6254 [Verbose] > │         let v6 : UH9 = UH9_0(v3, v1)                                         │

00:00:36 #6255 [Verbose] > │         let v7 : UH9 = UH9_0(v4, v2)                                         │

00:00:36 #6256 [Verbose] > │         method15(v5, v6, v7)                                                 │

00:00:36 #6257 [Verbose] > │     | UH8_1 -> (* Nil *)                                                     │

00:00:36 #6258 [Verbose] > │         struct (v1, v2)                                                      │

00:00:36 #6259 [Verbose] > │ and method16 (v0 : UH9, v1 : UH9) : UH9 =                                    │

00:00:36 #6260 [Verbose] > │     match v0 with                                                            │

00:00:36 #6261 [Verbose] > │     | UH9_0(v2, v3) -> (* Cons *)                                            │

00:00:36 #6262 [Verbose] > │         let v4 : UH9 = UH9_0(v2, v1)                                         │

00:00:36 #6263 [Verbose] > │         method16(v3, v4)                                                     │

00:00:36 #6264 [Verbose] > │     | UH9_1 -> (* Nil *)                                                     │

00:00:36 #6265 [Verbose] > │         v1                                                                   │

00:00:36 #6266 [Verbose] > │ and closure20 (v0 : (unit -> UH1), v1 : (unit -> UH1)) () : UH1 =            │

00:00:36 #6267 [Verbose] > │     let v2 : UH1 = v1 ()                                                     │

00:00:36 #6268 [Verbose] > │     let v3 : UH1 = v0 ()                                                     │

00:00:36 #6269 [Verbose] > │     match v2 with                                                            │

00:00:36 #6270 [Verbose] > │     | UH1_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *)  │

00:00:36 #6271 [Verbose] > │         match v3 with                                                        │

00:00:36 #6272 [Verbose] > │         | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (*      │

00:00:36 #6273 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #6274 [Verbose] > │             let v24 : float = v4 + v14                                       │

00:00:36 #6275 [Verbose] > │             let v25 : float = v5 + v15                                       │

00:00:36 #6276 [Verbose] > │             let v26 : float = v9 + v19                                       │

00:00:36 #6277 [Verbose] > │             let v27 : float = v6 + v16                                       │

00:00:36 #6278 [Verbose] > │             let v28 : float = v7 + v17                                       │

00:00:36 #6279 [Verbose] > │             let v29 : float = v8 + v18                                       │

00:00:36 #6280 [Verbose] > │             let v30 : float = v10 + v20                                      │

00:00:36 #6281 [Verbose] > │             let v31 : float = v11 + v21                                      │

00:00:36 #6282 [Verbose] > │             let v32 : float = v12 + v22                                      │

00:00:36 #6283 [Verbose] > │             let v33 : (unit -> UH1) = closure20(v23, v13)                    │

00:00:36 #6284 [Verbose] > │             UH1_0(v24, v25, v27, v28, v29, v26, v30, v31, v32, v33)          │

00:00:36 #6285 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6286 [Verbose] > │             UH1_1                                                            │

00:00:36 #6287 [Verbose] > │     | UH1_1 -> (* StreamNil *)                                               │

00:00:36 #6288 [Verbose] > │         UH1_1                                                                │

00:00:36 #6289 [Verbose] > │ and closure19 (v0 : float, v1 : (UH0 -> UH1)) (v2 : UH0) : UH0 =             │

00:00:36 #6290 [Verbose] > │     let v3 : UH1 = v1 v2                                                     │

00:00:36 #6291 [Verbose] > │     let v4 : float = v0 / 2.0                                                │

00:00:36 #6292 [Verbose] > │     let v46 : UH0 =                                                          │

00:00:36 #6293 [Verbose] > │         match v3 with                                                        │

00:00:36 #6294 [Verbose] > │         | UH1_0(v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (*           │

00:00:36 #6295 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #6296 [Verbose] > │             match v2 with                                                    │

00:00:36 #6297 [Verbose] > │             | UH0_0(v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) -> (*  │

00:00:36 #6298 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #6299 [Verbose] > │                 let v25 : float = v10 * v4                                   │

00:00:36 #6300 [Verbose] > │                 let v26 : float = v20 + v25                                  │

00:00:36 #6301 [Verbose] > │                 let v27 : float = v4 * v7                                    │

00:00:36 #6302 [Verbose] > │                 let v28 : float = v4 * v8                                    │

00:00:36 #6303 [Verbose] > │                 let v29 : float = v4 * v9                                    │

00:00:36 #6304 [Verbose] > │                 let v30 : float = v17 + v27                                  │

00:00:36 #6305 [Verbose] > │                 let v31 : float = v18 + v28                                  │

00:00:36 #6306 [Verbose] > │                 let v32 : float = v19 + v29                                  │

00:00:36 #6307 [Verbose] > │                 let v33 : float = v4 * v11                                   │

00:00:36 #6308 [Verbose] > │                 let v34 : float = v4 * v12                                   │

00:00:36 #6309 [Verbose] > │                 let v35 : float = v4 * v13                                   │

00:00:36 #6310 [Verbose] > │                 let v36 : float = v21 + v33                                  │

00:00:36 #6311 [Verbose] > │                 let v37 : float = v22 + v34                                  │

00:00:36 #6312 [Verbose] > │                 let v38 : float = v23 + v35                                  │

00:00:36 #6313 [Verbose] > │                 let v39 : (unit -> UH0) = closure3(v4, v24, v14)             │

00:00:36 #6314 [Verbose] > │                 UH0_0(v15, v16, v30, v31, v32, v26, v36, v37, v38, v39)      │

00:00:36 #6315 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:36 #6316 [Verbose] > │                 UH0_1                                                        │

00:00:36 #6317 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6318 [Verbose] > │             UH0_1                                                            │

00:00:36 #6319 [Verbose] > │     let v47 : (unit -> UH0) = closure4(v46)                                  │

00:00:36 #6320 [Verbose] > │     let v48 : (unit -> UH0) = method1(v46, v47)                              │

00:00:36 #6321 [Verbose] > │     let v49 : UH0 = v48 ()                                                   │

00:00:36 #6322 [Verbose] > │     let v50 : UH1 = v1 v49                                                   │

00:00:36 #6323 [Verbose] > │     let v92 : UH0 =                                                          │

00:00:36 #6324 [Verbose] > │         match v50 with                                                       │

00:00:36 #6325 [Verbose] > │         | UH1_0(v51, v52, v53, v54, v55, v56, v57, v58, v59, v60) -> (*      │

00:00:36 #6326 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #6327 [Verbose] > │             match v2 with                                                    │

00:00:36 #6328 [Verbose] > │             | UH0_0(v61, v62, v63, v64, v65, v66, v67, v68, v69, v70) -> (*  │

00:00:36 #6329 [Verbose] > │ StreamCons *)                                                                │

00:00:36 #6330 [Verbose] > │                 let v71 : float = v56 * v4                                   │

00:00:36 #6331 [Verbose] > │                 let v72 : float = v66 + v71                                  │

00:00:36 #6332 [Verbose] > │                 let v73 : float = v4 * v53                                   │

00:00:36 #6333 [Verbose] > │                 let v74 : float = v4 * v54                                   │

00:00:36 #6334 [Verbose] > │                 let v75 : float = v4 * v55                                   │

00:00:36 #6335 [Verbose] > │                 let v76 : float = v63 + v73                                  │

00:00:36 #6336 [Verbose] > │                 let v77 : float = v64 + v74                                  │

00:00:36 #6337 [Verbose] > │                 let v78 : float = v65 + v75                                  │

00:00:36 #6338 [Verbose] > │                 let v79 : float = v4 * v57                                   │

00:00:36 #6339 [Verbose] > │                 let v80 : float = v4 * v58                                   │

00:00:36 #6340 [Verbose] > │                 let v81 : float = v4 * v59                                   │

00:00:36 #6341 [Verbose] > │                 let v82 : float = v67 + v79                                  │

00:00:36 #6342 [Verbose] > │                 let v83 : float = v68 + v80                                  │

00:00:36 #6343 [Verbose] > │                 let v84 : float = v69 + v81                                  │

00:00:36 #6344 [Verbose] > │                 let v85 : (unit -> UH0) = closure3(v4, v70, v60)             │

00:00:36 #6345 [Verbose] > │                 UH0_0(v61, v62, v76, v77, v78, v72, v82, v83, v84, v85)      │

00:00:36 #6346 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:36 #6347 [Verbose] > │                 UH0_1                                                        │

00:00:36 #6348 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6349 [Verbose] > │             UH0_1                                                            │

00:00:36 #6350 [Verbose] > │     let v93 : (unit -> UH0) = closure4(v92)                                  │

00:00:36 #6351 [Verbose] > │     let v94 : (unit -> UH0) = method1(v92, v93)                              │

00:00:36 #6352 [Verbose] > │     let v95 : UH0 = v94 ()                                                   │

00:00:36 #6353 [Verbose] > │     let v96 : UH1 = v1 v95                                                   │

00:00:36 #6354 [Verbose] > │     let v138 : UH0 =                                                         │

00:00:36 #6355 [Verbose] > │         match v96 with                                                       │

00:00:36 #6356 [Verbose] > │         | UH1_0(v97, v98, v99, v100, v101, v102, v103, v104, v105, v106) ->  │

00:00:36 #6357 [Verbose] > │ (* StreamCons *)                                                             │

00:00:36 #6358 [Verbose] > │             match v2 with                                                    │

00:00:36 #6359 [Verbose] > │             | UH0_0(v107, v108, v109, v110, v111, v112, v113, v114, v115,    │

00:00:36 #6360 [Verbose] > │ v116) -> (* StreamCons *)                                                    │

00:00:36 #6361 [Verbose] > │                 let v117 : float = v102 * v0                                 │

00:00:36 #6362 [Verbose] > │                 let v118 : float = v112 + v117                               │

00:00:36 #6363 [Verbose] > │                 let v119 : float = v0 * v99                                  │

00:00:36 #6364 [Verbose] > │                 let v120 : float = v0 * v100                                 │

00:00:36 #6365 [Verbose] > │                 let v121 : float = v0 * v101                                 │

00:00:36 #6366 [Verbose] > │                 let v122 : float = v109 + v119                               │

00:00:36 #6367 [Verbose] > │                 let v123 : float = v110 + v120                               │

00:00:36 #6368 [Verbose] > │                 let v124 : float = v111 + v121                               │

00:00:36 #6369 [Verbose] > │                 let v125 : float = v0 * v103                                 │

00:00:36 #6370 [Verbose] > │                 let v126 : float = v0 * v104                                 │

00:00:36 #6371 [Verbose] > │                 let v127 : float = v0 * v105                                 │

00:00:36 #6372 [Verbose] > │                 let v128 : float = v113 + v125                               │

00:00:36 #6373 [Verbose] > │                 let v129 : float = v114 + v126                               │

00:00:36 #6374 [Verbose] > │                 let v130 : float = v115 + v127                               │

00:00:36 #6375 [Verbose] > │                 let v131 : (unit -> UH0) = closure3(v0, v116, v106)          │

00:00:36 #6376 [Verbose] > │                 UH0_0(v107, v108, v122, v123, v124, v118, v128, v129, v130,  │

00:00:36 #6377 [Verbose] > │ v131)                                                                        │

00:00:36 #6378 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:36 #6379 [Verbose] > │                 UH0_1                                                        │

00:00:36 #6380 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6381 [Verbose] > │             UH0_1                                                            │

00:00:36 #6382 [Verbose] > │     let v139 : (unit -> UH0) = closure4(v138)                                │

00:00:36 #6383 [Verbose] > │     let v140 : (unit -> UH0) = method1(v138, v139)                           │

00:00:36 #6384 [Verbose] > │     let v141 : UH0 = v140 ()                                                 │

00:00:36 #6385 [Verbose] > │     let v142 : UH1 = v1 v141                                                 │

00:00:36 #6386 [Verbose] > │     let v143 : float = v0 / 6.0                                              │

00:00:36 #6387 [Verbose] > │     let v180 : UH1 =                                                         │

00:00:36 #6388 [Verbose] > │         match v3 with                                                        │

00:00:36 #6389 [Verbose] > │         | UH1_0(v144, v145, v146, v147, v148, v149, v150, v151, v152, v153)  │

00:00:36 #6390 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:36 #6391 [Verbose] > │             match v50 with                                                   │

00:00:36 #6392 [Verbose] > │             | UH1_0(v154, v155, v156, v157, v158, v159, v160, v161, v162,    │

00:00:36 #6393 [Verbose] > │ v163) -> (* StreamCons *)                                                    │

00:00:36 #6394 [Verbose] > │                 let v164 : float = v144 + v154                               │

00:00:36 #6395 [Verbose] > │                 let v165 : float = v145 + v155                               │

00:00:36 #6396 [Verbose] > │                 let v166 : float = v149 + v159                               │

00:00:36 #6397 [Verbose] > │                 let v167 : float = v146 + v156                               │

00:00:36 #6398 [Verbose] > │                 let v168 : float = v147 + v157                               │

00:00:36 #6399 [Verbose] > │                 let v169 : float = v148 + v158                               │

00:00:36 #6400 [Verbose] > │                 let v170 : float = v150 + v160                               │

00:00:36 #6401 [Verbose] > │                 let v171 : float = v151 + v161                               │

00:00:36 #6402 [Verbose] > │                 let v172 : float = v152 + v162                               │

00:00:36 #6403 [Verbose] > │                 let v173 : (unit -> UH1) = closure20(v163, v153)             │

00:00:36 #6404 [Verbose] > │                 UH1_0(v164, v165, v167, v168, v169, v166, v170, v171, v172,  │

00:00:36 #6405 [Verbose] > │ v173)                                                                        │

00:00:36 #6406 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:36 #6407 [Verbose] > │                 UH1_1                                                        │

00:00:36 #6408 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6409 [Verbose] > │             UH1_1                                                            │

00:00:36 #6410 [Verbose] > │     let v217 : UH1 =                                                         │

00:00:36 #6411 [Verbose] > │         match v180 with                                                      │

00:00:36 #6412 [Verbose] > │         | UH1_0(v181, v182, v183, v184, v185, v186, v187, v188, v189, v190)  │

00:00:36 #6413 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:36 #6414 [Verbose] > │             match v50 with                                                   │

00:00:36 #6415 [Verbose] > │             | UH1_0(v191, v192, v193, v194, v195, v196, v197, v198, v199,    │

00:00:36 #6416 [Verbose] > │ v200) -> (* StreamCons *)                                                    │

00:00:36 #6417 [Verbose] > │                 let v201 : float = v181 + v191                               │

00:00:36 #6418 [Verbose] > │                 let v202 : float = v182 + v192                               │

00:00:36 #6419 [Verbose] > │                 let v203 : float = v186 + v196                               │

00:00:36 #6420 [Verbose] > │                 let v204 : float = v183 + v193                               │

00:00:36 #6421 [Verbose] > │                 let v205 : float = v184 + v194                               │

00:00:36 #6422 [Verbose] > │                 let v206 : float = v185 + v195                               │

00:00:36 #6423 [Verbose] > │                 let v207 : float = v187 + v197                               │

00:00:36 #6424 [Verbose] > │                 let v208 : float = v188 + v198                               │

00:00:36 #6425 [Verbose] > │                 let v209 : float = v189 + v199                               │

00:00:36 #6426 [Verbose] > │                 let v210 : (unit -> UH1) = closure20(v200, v190)             │

00:00:36 #6427 [Verbose] > │                 UH1_0(v201, v202, v204, v205, v206, v203, v207, v208, v209,  │

00:00:36 #6428 [Verbose] > │ v210)                                                                        │

00:00:36 #6429 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:36 #6430 [Verbose] > │                 UH1_1                                                        │

00:00:36 #6431 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6432 [Verbose] > │             UH1_1                                                            │

00:00:36 #6433 [Verbose] > │     let v254 : UH1 =                                                         │

00:00:36 #6434 [Verbose] > │         match v217 with                                                      │

00:00:36 #6435 [Verbose] > │         | UH1_0(v218, v219, v220, v221, v222, v223, v224, v225, v226, v227)  │

00:00:36 #6436 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:36 #6437 [Verbose] > │             match v96 with                                                   │

00:00:36 #6438 [Verbose] > │             | UH1_0(v228, v229, v230, v231, v232, v233, v234, v235, v236,    │

00:00:36 #6439 [Verbose] > │ v237) -> (* StreamCons *)                                                    │

00:00:36 #6440 [Verbose] > │                 let v238 : float = v218 + v228                               │

00:00:36 #6441 [Verbose] > │                 let v239 : float = v219 + v229                               │

00:00:36 #6442 [Verbose] > │                 let v240 : float = v223 + v233                               │

00:00:36 #6443 [Verbose] > │                 let v241 : float = v220 + v230                               │

00:00:36 #6444 [Verbose] > │                 let v242 : float = v221 + v231                               │

00:00:36 #6445 [Verbose] > │                 let v243 : float = v222 + v232                               │

00:00:36 #6446 [Verbose] > │                 let v244 : float = v224 + v234                               │

00:00:36 #6447 [Verbose] > │                 let v245 : float = v225 + v235                               │

00:00:36 #6448 [Verbose] > │                 let v246 : float = v226 + v236                               │

00:00:36 #6449 [Verbose] > │                 let v247 : (unit -> UH1) = closure20(v237, v227)             │

00:00:36 #6450 [Verbose] > │                 UH1_0(v238, v239, v241, v242, v243, v240, v244, v245, v246,  │

00:00:36 #6451 [Verbose] > │ v247)                                                                        │

00:00:36 #6452 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:36 #6453 [Verbose] > │                 UH1_1                                                        │

00:00:36 #6454 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6455 [Verbose] > │             UH1_1                                                            │

00:00:36 #6456 [Verbose] > │     let v291 : UH1 =                                                         │

00:00:36 #6457 [Verbose] > │         match v254 with                                                      │

00:00:36 #6458 [Verbose] > │         | UH1_0(v255, v256, v257, v258, v259, v260, v261, v262, v263, v264)  │

00:00:36 #6459 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:36 #6460 [Verbose] > │             match v96 with                                                   │

00:00:36 #6461 [Verbose] > │             | UH1_0(v265, v266, v267, v268, v269, v270, v271, v272, v273,    │

00:00:36 #6462 [Verbose] > │ v274) -> (* StreamCons *)                                                    │

00:00:36 #6463 [Verbose] > │                 let v275 : float = v255 + v265                               │

00:00:36 #6464 [Verbose] > │                 let v276 : float = v256 + v266                               │

00:00:36 #6465 [Verbose] > │                 let v277 : float = v260 + v270                               │

00:00:36 #6466 [Verbose] > │                 let v278 : float = v257 + v267                               │

00:00:36 #6467 [Verbose] > │                 let v279 : float = v258 + v268                               │

00:00:36 #6468 [Verbose] > │                 let v280 : float = v259 + v269                               │

00:00:36 #6469 [Verbose] > │                 let v281 : float = v261 + v271                               │

00:00:36 #6470 [Verbose] > │                 let v282 : float = v262 + v272                               │

00:00:36 #6471 [Verbose] > │                 let v283 : float = v263 + v273                               │

00:00:36 #6472 [Verbose] > │                 let v284 : (unit -> UH1) = closure20(v274, v264)             │

00:00:36 #6473 [Verbose] > │                 UH1_0(v275, v276, v278, v279, v280, v277, v281, v282, v283,  │

00:00:36 #6474 [Verbose] > │ v284)                                                                        │

00:00:36 #6475 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:36 #6476 [Verbose] > │                 UH1_1                                                        │

00:00:36 #6477 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6478 [Verbose] > │             UH1_1                                                            │

00:00:36 #6479 [Verbose] > │     let v328 : UH1 =                                                         │

00:00:36 #6480 [Verbose] > │         match v291 with                                                      │

00:00:36 #6481 [Verbose] > │         | UH1_0(v292, v293, v294, v295, v296, v297, v298, v299, v300, v301)  │

00:00:36 #6482 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:36 #6483 [Verbose] > │             match v142 with                                                  │

00:00:36 #6484 [Verbose] > │             | UH1_0(v302, v303, v304, v305, v306, v307, v308, v309, v310,    │

00:00:36 #6485 [Verbose] > │ v311) -> (* StreamCons *)                                                    │

00:00:36 #6486 [Verbose] > │                 let v312 : float = v292 + v302                               │

00:00:36 #6487 [Verbose] > │                 let v313 : float = v293 + v303                               │

00:00:36 #6488 [Verbose] > │                 let v314 : float = v297 + v307                               │

00:00:36 #6489 [Verbose] > │                 let v315 : float = v294 + v304                               │

00:00:36 #6490 [Verbose] > │                 let v316 : float = v295 + v305                               │

00:00:36 #6491 [Verbose] > │                 let v317 : float = v296 + v306                               │

00:00:36 #6492 [Verbose] > │                 let v318 : float = v298 + v308                               │

00:00:36 #6493 [Verbose] > │                 let v319 : float = v299 + v309                               │

00:00:36 #6494 [Verbose] > │                 let v320 : float = v300 + v310                               │

00:00:36 #6495 [Verbose] > │                 let v321 : (unit -> UH1) = closure20(v311, v301)             │

00:00:36 #6496 [Verbose] > │                 UH1_0(v312, v313, v315, v316, v317, v314, v318, v319, v320,  │

00:00:36 #6497 [Verbose] > │ v321)                                                                        │

00:00:36 #6498 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:36 #6499 [Verbose] > │                 UH1_1                                                        │

00:00:36 #6500 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6501 [Verbose] > │             UH1_1                                                            │

00:00:36 #6502 [Verbose] > │     let v370 : UH0 =                                                         │

00:00:36 #6503 [Verbose] > │         match v328 with                                                      │

00:00:36 #6504 [Verbose] > │         | UH1_0(v329, v330, v331, v332, v333, v334, v335, v336, v337, v338)  │

00:00:36 #6505 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:36 #6506 [Verbose] > │             match v2 with                                                    │

00:00:36 #6507 [Verbose] > │             | UH0_0(v339, v340, v341, v342, v343, v344, v345, v346, v347,    │

00:00:36 #6508 [Verbose] > │ v348) -> (* StreamCons *)                                                    │

00:00:36 #6509 [Verbose] > │                 let v349 : float = v334 * v143                               │

00:00:36 #6510 [Verbose] > │                 let v350 : float = v344 + v349                               │

00:00:36 #6511 [Verbose] > │                 let v351 : float = v143 * v331                               │

00:00:36 #6512 [Verbose] > │                 let v352 : float = v143 * v332                               │

00:00:36 #6513 [Verbose] > │                 let v353 : float = v143 * v333                               │

00:00:36 #6514 [Verbose] > │                 let v354 : float = v341 + v351                               │

00:00:36 #6515 [Verbose] > │                 let v355 : float = v342 + v352                               │

00:00:36 #6516 [Verbose] > │                 let v356 : float = v343 + v353                               │

00:00:36 #6517 [Verbose] > │                 let v357 : float = v143 * v335                               │

00:00:36 #6518 [Verbose] > │                 let v358 : float = v143 * v336                               │

00:00:36 #6519 [Verbose] > │                 let v359 : float = v143 * v337                               │

00:00:36 #6520 [Verbose] > │                 let v360 : float = v345 + v357                               │

00:00:36 #6521 [Verbose] > │                 let v361 : float = v346 + v358                               │

00:00:36 #6522 [Verbose] > │                 let v362 : float = v347 + v359                               │

00:00:36 #6523 [Verbose] > │                 let v363 : (unit -> UH0) = closure3(v143, v348, v338)        │

00:00:36 #6524 [Verbose] > │                 UH0_0(v339, v340, v354, v355, v356, v350, v360, v361, v362,  │

00:00:36 #6525 [Verbose] > │ v363)                                                                        │

00:00:36 #6526 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:36 #6527 [Verbose] > │                 UH0_1                                                        │

00:00:36 #6528 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:36 #6529 [Verbose] > │             UH0_1                                                            │

00:00:36 #6530 [Verbose] > │     let v371 : (unit -> UH0) = closure4(v370)                                │

00:00:36 #6531 [Verbose] > │     let v372 : (unit -> UH0) = method1(v370, v371)                           │

00:00:36 #6532 [Verbose] > │     let v373 : UH0 = v372 ()                                                 │

00:00:36 #6533 [Verbose] > │     v373                                                                     │

00:00:37 #6534 [Verbose] > │ and closure18 (v0 : float) (v1 : (UH0 -> UH1)) : (UH0 -> UH0) =              │

00:00:37 #6535 [Verbose] > │     closure19(v0, v1)                                                        │

00:00:37 #6536 [Verbose] > │ and closure17 () (v0 : float) : ((UH0 -> UH1) -> (UH0 -> UH0)) =             │

00:00:37 #6537 [Verbose] > │     closure18(v0)                                                            │

00:00:37 #6538 [Verbose] > │ and method17 (v0 : UH4, v1 : UH6) : UH6 =                                    │

00:00:37 #6539 [Verbose] > │     match v0 with                                                            │

00:00:37 #6540 [Verbose] > │     | UH4_0(v2, v3) -> (* Cons *)                                            │

00:00:37 #6541 [Verbose] > │         let v4 : UH6 = method17(v3, v1)                                      │

00:00:37 #6542 [Verbose] > │         let v5 : int32 = 0                                                   │

00:00:37 #6543 [Verbose] > │         let v6 : US2 = method6(v5, v2)                                       │

00:00:37 #6544 [Verbose] > │         let v23 : US3 =                                                      │

00:00:37 #6545 [Verbose] > │             match v6 with                                                    │

00:00:37 #6546 [Verbose] > │             | US2_0 -> (* None *)                                            │

00:00:37 #6547 [Verbose] > │                 US3_0                                                        │

00:00:37 #6548 [Verbose] > │             | US2_1(v7, v8, v9, v10, v11, v12, v13, v14, v15) -> (* Some *)  │

00:00:37 #6549 [Verbose] > │                 let v16 : UH7 = UH7_1                                        │

00:00:37 #6550 [Verbose] > │                 let v17 : UH7 = method12(v2, v16)                            │

00:00:37 #6551 [Verbose] > │                 let v18 : float = 0.0                                        │

00:00:37 #6552 [Verbose] > │                 let v19 : float = method13(v17, v18)                         │

00:00:37 #6553 [Verbose] > │                 US3_1(v12, v19)                                              │

00:00:37 #6554 [Verbose] > │         UH6_0(v23, v4)                                                       │

00:00:37 #6555 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:37 #6556 [Verbose] > │         v1                                                                   │

00:00:37 #6557 [Verbose] > │ and method19 (v0 : UH9, v1 : int32) : int32 =                                │

00:00:37 #6558 [Verbose] > │     match v0 with                                                            │

00:00:37 #6559 [Verbose] > │     | UH9_0(v2, v3) -> (* Cons *)                                            │

00:00:37 #6560 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:37 #6561 [Verbose] > │         method19(v3, v4)                                                     │

00:00:37 #6562 [Verbose] > │     | UH9_1 -> (* Nil *)                                                     │

00:00:37 #6563 [Verbose] > │         v1                                                                   │

00:00:37 #6564 [Verbose] > │ and method20 (v0 : (float []), v1 : UH9, v2 : int32) : int32 =               │

00:00:37 #6565 [Verbose] > │     match v1 with                                                            │

00:00:37 #6566 [Verbose] > │     | UH9_0(v3, v4) -> (* Cons *)                                            │

00:00:37 #6567 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:37 #6568 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:37 #6569 [Verbose] > │         method20(v0, v4, v5)                                                 │

00:00:37 #6570 [Verbose] > │     | UH9_1 -> (* Nil *)                                                     │

00:00:37 #6571 [Verbose] > │         v2                                                                   │

00:00:37 #6572 [Verbose] > │ and method18 (v0 : UH9) : (float []) =                                       │

00:00:37 #6573 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:37 #6574 [Verbose] > │     let v2 : int32 = method19(v0, v1)                                        │

00:00:37 #6575 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:37 #6576 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:37 #6577 [Verbose] > │     let v5 : int32 = method20(v3, v0, v4)                                    │

00:00:37 #6578 [Verbose] > │     v3                                                                       │

00:00:37 #6579 [Verbose] > │ and method0 () : struct (string * string * string * (struct (string * (float │

00:00:37 #6580 [Verbose] > │ []) * (float [])) [])) =                                                     │

00:00:37 #6581 [Verbose] > │     let v0 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure0()          │

00:00:37 #6582 [Verbose] > │     let v1 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v0 0.03                        │

00:00:37 #6583 [Verbose] > │     let v2 : (UH0 -> UH1) = closure8()                                       │

00:00:37 #6584 [Verbose] > │     let v3 : (UH0 -> UH0) = v1 v2                                            │

00:00:37 #6585 [Verbose] > │     let v4 : UH4 = UH4_1                                                     │

00:00:37 #6586 [Verbose] > │     let v5 : int32 = 0                                                       │

00:00:37 #6587 [Verbose] > │     let v6 : UH4 = method7(v3, v4, v5)                                       │

00:00:37 #6588 [Verbose] > │     let v7 : UH6 = UH6_1                                                     │

00:00:37 #6589 [Verbose] > │     let v8 : UH6 = method11(v6, v7)                                          │

00:00:37 #6590 [Verbose] > │     let v9 : UH8 = UH8_1                                                     │

00:00:37 #6591 [Verbose] > │     let v10 : UH8 = method14(v8, v9)                                         │

00:00:37 #6592 [Verbose] > │     let v11 : UH9 = UH9_1                                                    │

00:00:37 #6593 [Verbose] > │     let v12 : UH9 = UH9_1                                                    │

00:00:37 #6594 [Verbose] > │     let struct (v13 : UH9, v14 : UH9) = method15(v10, v11, v12)              │

00:00:37 #6595 [Verbose] > │     let v15 : UH9 = UH9_1                                                    │

00:00:37 #6596 [Verbose] > │     let v16 : UH9 = method16(v13, v15)                                       │

00:00:37 #6597 [Verbose] > │     let v17 : UH9 = UH9_1                                                    │

00:00:37 #6598 [Verbose] > │     let v18 : UH9 = method16(v14, v17)                                       │

00:00:37 #6599 [Verbose] > │     let v19 : (float -> ((UH0 -> UH1) -> (UH0 -> UH0))) = closure17()        │

00:00:37 #6600 [Verbose] > │     let v20 : ((UH0 -> UH1) -> (UH0 -> UH0)) = v19 0.03                      │

00:00:37 #6601 [Verbose] > │     let v21 : (UH0 -> UH0) = v20 v2                                          │

00:00:37 #6602 [Verbose] > │     let v22 : UH4 = UH4_1                                                    │

00:00:37 #6603 [Verbose] > │     let v23 : int32 = 0                                                      │

00:00:37 #6604 [Verbose] > │     let v24 : UH4 = method7(v21, v22, v23)                                   │

00:00:37 #6605 [Verbose] > │     let v25 : UH6 = UH6_1                                                    │

00:00:37 #6606 [Verbose] > │     let v26 : UH6 = method17(v24, v25)                                       │

00:00:37 #6607 [Verbose] > │     let v27 : UH8 = UH8_1                                                    │

00:00:37 #6608 [Verbose] > │     let v28 : UH8 = method14(v26, v27)                                       │

00:00:37 #6609 [Verbose] > │     let v29 : UH9 = UH9_1                                                    │

00:00:37 #6610 [Verbose] > │     let v30 : UH9 = UH9_1                                                    │

00:00:37 #6611 [Verbose] > │     let struct (v31 : UH9, v32 : UH9) = method15(v28, v29, v30)              │

00:00:37 #6612 [Verbose] > │     let v33 : UH9 = UH9_1                                                    │

00:00:37 #6613 [Verbose] > │     let v34 : UH9 = method16(v31, v33)                                       │

00:00:37 #6614 [Verbose] > │     let v35 : UH9 = UH9_1                                                    │

00:00:37 #6615 [Verbose] > │     let v36 : UH9 = method16(v32, v35)                                       │

00:00:37 #6616 [Verbose] > │     let v37 : (float []) = method18(v16)                                     │

00:00:37 #6617 [Verbose] > │     let v38 : (float []) = method18(v18)                                     │

00:00:37 #6618 [Verbose] > │     let v39 : (float []) = method18(v34)                                     │

00:00:37 #6619 [Verbose] > │     let v40 : (float []) = method18(v36)                                     │

00:00:37 #6620 [Verbose] > │     let v41 : string = "euler-cromer"                                        │

00:00:37 #6621 [Verbose] > │     let v42 : string = "runge-kutta 4"                                       │

00:00:37 #6622 [Verbose] > │     let v43 : (struct (string * (float []) * (float [])) []) = [|struct      │

00:00:37 #6623 [Verbose] > │ (v41, v37, v38); struct (v42, v39, v40)|]                                    │

00:00:37 #6624 [Verbose] > │     let v44 : string = "system kinetic energy versus time"                   │

00:00:37 #6625 [Verbose] > │     let v45 : string = "time (s)"                                            │

00:00:37 #6626 [Verbose] > │     let v46 : string = "system kinetic energy (j)"                           │

00:00:37 #6627 [Verbose] > │     struct (v44, v45, v46, v43)                                              │

00:00:37 #6628 [Verbose] > │ method0()                                                                    │

00:00:37 #6629 [Verbose] > │                                                                              │

00:00:37 #6630 [Verbose] > │                                                                              │

00:00:37 #6631 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:37 #6632 [Verbose] >

00:00:37 #6633 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:37 #6634 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:37 #6635 [Verbose] > │ ### wave 2                                                                   │

00:00:37 #6636 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:37 #6637 [Verbose] >

00:00:37 #6638 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:37 #6639 [Verbose] > // // test

00:00:37 #6640 [Verbose] >

00:00:37 #6641 [Verbose] > inl linear_spring k re (particle_state st1) (particle_state st2) =

00:00:37 #6642 [Verbose] >     inl r1 = st1.pos_vec

00:00:37 #6643 [Verbose] >     inl r2 = st2.pos_vec

00:00:37 #6644 [Verbose] >     inl r21 = r2 ^-^ r1

00:00:37 #6645 [Verbose] >     inl r21mag = magnitude r21

00:00:37 #6646 [Verbose] >     -k * (r21mag - re) *^ r21 ^/ r21mag

00:00:37 #6647 [Verbose] >

00:00:37 #6648 [Verbose] > inl fixed_linear_spring k re r1 =

00:00:37 #6649 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:37 #6650 [Verbose] >     linear_spring k re (particle_state { default_particle_state' with pos_vec =

00:00:37 #6651 [Verbose] > r1 })

00:00:37 #6652 [Verbose] >

00:00:37 #6653 [Verbose] > inl forces_string () =

00:00:37 #6654 [Verbose] >     [[

00:00:37 #6655 [Verbose] >         ExternalForce (0i32, fixed_linear_spring 5384 0 (zero_vec ()))

00:00:37 #6656 [Verbose] >         ExternalForce (63, fixed_linear_spring 5384 0 (0.65 *^ i_hat ()))

00:00:37 #6657 [Verbose] >     ]] /@ (

00:00:37 #6658 [Verbose] >         listm'.init_series 0 59 1

00:00:37 #6659 [Verbose] >         |> listm.map (fun n => InternalForce (n, n + 1, linear_spring 5384 0))

00:00:37 #6660 [Verbose] >     )

00:00:37 #6661 [Verbose] >

00:00:37 #6662 [Verbose] > inl string_update dt =

00:00:37 #6663 [Verbose] >     update_mps (join runge_kutta_4 dt) (join forces_string ())

00:00:37 #6664 [Verbose] >

00:00:37 #6665 [Verbose] > inl string_initial_overtone n =

00:00:37 #6666 [Verbose] >     inl ball_mass = 0.0008293 * 0.65 / 64

00:00:37 #6667 [Verbose] >     inl (particle_state default_particle_state') = default_particle_state ()

00:00:37 #6668 [Verbose] >     listm'.init_series 0.01 0.64 0.01

00:00:37 #6669 [Verbose] >     |> listm.map (fun x =>

00:00:37 #6670 [Verbose] >         inl y = 0.005 * sin (conv n * pi * x / 0.65)

00:00:37 #6671 [Verbose] >         particle_state {

00:00:37 #6672 [Verbose] >             default_particle_state' with

00:00:37 #6673 [Verbose] >                 mass = ball_mass

00:00:37 #6674 [Verbose] >                 pos_vec = x *^ i_hat () ^+^ y *^ j_hat ()

00:00:37 #6675 [Verbose] >                 velocity = zero_vec ()

00:00:37 #6676 [Verbose] >         }

00:00:37 #6677 [Verbose] >     )

00:00:37 #6678 [Verbose] >     |> stream.from_list

00:00:37 #6679 [Verbose] >     |> multi_particle_state

00:00:37 #6680 [Verbose] >

00:00:37 #6681 [Verbose] > let main () =

00:00:37 #6682 [Verbose] >     inl ~frames = listm'.init_series 0 65 1f64 |> stream.from_list

00:00:37 #6683 [Verbose] >     inl ~initial_state = string_initial_overtone 3i32

00:00:37 #6684 [Verbose] >     inl frames =

00:00:37 #6685 [Verbose] >         frames

00:00:37 #6686 [Verbose] >         |> stream.map (fun n =>

00:00:37 #6687 [Verbose] >             inl (multi_particle_state sts) =

00:00:37 #6688 [Verbose] >                 stream.iterate (string_update 0.000025) initial_state |>

00:00:37 #6689 [Verbose] > stream.item n

00:00:37 #6690 [Verbose] >             inl x, y =

00:00:37 #6691 [Verbose] >                 [[ zero_vec () ]]

00:00:37 #6692 [Verbose] >                 /@ (sts |> stream.map (fun (particle_state st) => st.pos_vec) |>

00:00:37 #6693 [Verbose] > stream.to_list)

00:00:37 #6694 [Verbose] >                 /@ [[ 0.65 *^ i_hat () ]]

00:00:37 #6695 [Verbose] >                 |> listm.map (fun r => r.x, r.y)

00:00:37 #6696 [Verbose] >                 |> stream.from_list

00:00:37 #6697 [Verbose] >                 |> stream.unzip

00:00:37 #6698 [Verbose] >             inl x : a i32 _ = x |> stream.to_list |> listm.toArray

00:00:37 #6699 [Verbose] >             inl y : a i32 _ = y |> stream.to_list |> listm.toArray

00:00:37 #6700 [Verbose] >             x, y

00:00:37 #6701 [Verbose] >         )

00:00:37 #6702 [Verbose] >

00:00:37 #6703 [Verbose] >     inl plots =

00:00:37 #6704 [Verbose] >         frames

00:00:37 #6705 [Verbose] >         |> stream.indexed

00:00:37 #6706 [Verbose] >         |> stream.map (fun ((n : i32), (x, y)) =>

00:00:37 #6707 [Verbose] >             "wave",

00:00:37 #6708 [Verbose] >             "position (m)",

00:00:37 #6709 [Verbose] >             "displacement (m)",

00:00:37 #6710 [Verbose] >             ;[[

00:00:37 #6711 [Verbose] >                 ($"$\"{!n}\"" : string), x, y

00:00:37 #6712 [Verbose] >             ]]

00:00:37 #6713 [Verbose] >         )

00:00:37 #6714 [Verbose] >

00:00:37 #6715 [Verbose] >     plots |> stream.to_list |> listm.toArray : a i32 _

00:00:37 #6716 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1305-0923-2397-249b6715bf20\main.spi

00:00:43 #6717 [Verbose] >

00:00:43 #6718 [Verbose] > ╭─[ 6.48s - return value ]─────────────────────────────────────────────────────╮

00:00:43 #6719 [Verbose] > │ <table><thead><tr><th><i>index</i></th><th>value</th></tr></thead><tbody><tr │

00:00:43 #6720 [Verbose] > │ ><td>0</td><td><svg width="640" height="480" viewBox="0 0 640 480"           │

00:00:43 #6721 [Verbose] > │ xmlns="http://www.w3.org/2000/svg">                                          │

00:00:43 #6722 [Verbose] > │ <rect x="0" y="0" width="640" height="480" opacity="1" fill="#141414"        │

00:00:43 #6723 [Verbose] > │ stroke="none"/>                                                              │

00:00:43 #6724 [Verbose] > │ <text x="320" y="10" dy="0.76em" text-anchor="middle"                        │

00:00:43 #6725 [Verbose] > │ font-family="sans-serif" font-size="9.67741935483871" opacity="1"            │

00:00:43 #6726 [Verbose] > │ fill="#FFFFFF">                                                              │

00:00:43 #6727 [Verbose] > │ wave                                                                         │

00:00:43 #6728 [Verbose] > │ </text>                                                                      │

00:00:43 #6729 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="62" y1="424" x2="62" │

00:00:43 #6730 [Verbose] > │ y2="75"/>                                                                    │

00:00:43 #6731 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="69" y1="424" x2="69" │

00:00:43 #6732 [Verbose] > │ y2="75"/>                                                                    │

00:00:43 #6733 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="77" y1="424" x2="77" │

00:00:43 #6734 [Verbose] > │ y2="75"/>                                                                    │

00:00:43 #6735 [Verbose] > │ <line opacity="1" stroke="#323232" stroke-width="1" x1="85" y1="424"         │

00:00:43 #6736 [Verbose] > │ x2="85...                                                                    │

00:00:43 #6737 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:43 #6738 [Verbose] >

00:00:43 #6739 [Verbose] > ╭─[ 6.52s - stdout ]───────────────────────────────────────────────────────────╮

00:00:43 #6740 [Verbose] > │ type UH0 =                                                                   │

00:00:43 #6741 [Verbose] > │     | UH0_0 of float * (unit -> UH0)                                         │

00:00:43 #6742 [Verbose] > │     | UH0_1                                                                  │

00:00:43 #6743 [Verbose] > │ and UH1 =                                                                    │

00:00:43 #6744 [Verbose] > │     | UH1_0 of float * float * float * float * float * float * float * float │

00:00:43 #6745 [Verbose] > │ * float * (unit -> UH1)                                                      │

00:00:43 #6746 [Verbose] > │     | UH1_1                                                                  │

00:00:43 #6747 [Verbose] > │ and UH2 =                                                                    │

00:00:43 #6748 [Verbose] > │     | UH2_0 of (float []) * (float []) * (unit -> UH2)                       │

00:00:43 #6749 [Verbose] > │     | UH2_1                                                                  │

00:00:43 #6750 [Verbose] > │ and UH3 =                                                                    │

00:00:43 #6751 [Verbose] > │     | UH3_0 of float * float * float * float * float * float * float * float │

00:00:43 #6752 [Verbose] > │ * float * (unit -> UH3)                                                      │

00:00:43 #6753 [Verbose] > │     | UH3_1                                                                  │

00:00:43 #6754 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:43 #6755 [Verbose] > │     | US0_0 of f0_0 : UH1                                                    │

00:00:43 #6756 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH1)                                          │

00:00:43 #6757 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:43 #6758 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:43 #6759 [Verbose] > │     | US1_0 of f0_0 : int32 * f0_1 : (struct (float * float * float * float  │

00:00:43 #6760 [Verbose] > │ * float * float * float * float * float) -> struct (float * float * float))  │

00:00:43 #6761 [Verbose] > │     | US1_1 of f1_0 : int32 * f1_1 : int32 * f1_2 : (struct (float * float * │

00:00:43 #6762 [Verbose] > │ float * float * float * float * float * float * float) -> (struct (float *   │

00:00:43 #6763 [Verbose] > │ float * float * float * float * float * float * float * float) -> struct     │

00:00:43 #6764 [Verbose] > │ (float * float * float)))                                                    │

00:00:43 #6765 [Verbose] > │ and UH4 =                                                                    │

00:00:43 #6766 [Verbose] > │     | UH4_0 of US1 * UH4                                                     │

00:00:43 #6767 [Verbose] > │     | UH4_1                                                                  │

00:00:43 #6768 [Verbose] > │ and UH5 =                                                                    │

00:00:43 #6769 [Verbose] > │     | UH5_0 of int32 * float * float * float * float * float * float * float │

00:00:43 #6770 [Verbose] > │ * float * float * (unit -> UH5)                                              │

00:00:43 #6771 [Verbose] > │     | UH5_1                                                                  │

00:00:43 #6772 [Verbose] > │ and UH6 =                                                                    │

00:00:43 #6773 [Verbose] > │     | UH6_0 of (struct (float * float * float * float * float * float *      │

00:00:43 #6774 [Verbose] > │ float * float * float) -> struct (float * float * float)) * UH6              │

00:00:43 #6775 [Verbose] > │     | UH6_1                                                                  │

00:00:43 #6776 [Verbose] > │ and [<Struct>] US2 =                                                         │

00:00:43 #6777 [Verbose] > │     | US2_0                                                                  │

00:00:43 #6778 [Verbose] > │     | US2_1 of f1_0 : (struct (float * float * float * float * float * float │

00:00:43 #6779 [Verbose] > │ * float * float * float) -> struct (float * float * float))                  │

00:00:43 #6780 [Verbose] > │ and [<Struct>] US3 =                                                         │

00:00:43 #6781 [Verbose] > │     | US3_0                                                                  │

00:00:43 #6782 [Verbose] > │     | US3_1 of f1_0 : float * f1_1 : float * f1_2 : float * f1_3 : float *   │

00:00:43 #6783 [Verbose] > │ f1_4 : float * f1_5 : float * f1_6 : float * f1_7 : float * f1_8 : float     │

00:00:43 #6784 [Verbose] > │ and UH7 =                                                                    │

00:00:43 #6785 [Verbose] > │     | UH7_0 of float * float * float * UH7                                   │

00:00:43 #6786 [Verbose] > │     | UH7_1                                                                  │

00:00:43 #6787 [Verbose] > │ and UH8 =                                                                    │

00:00:43 #6788 [Verbose] > │     | UH8_0 of UH1 * (unit -> UH8)                                           │

00:00:43 #6789 [Verbose] > │     | UH8_1                                                                  │

00:00:43 #6790 [Verbose] > │ and [<Struct>] US4 =                                                         │

00:00:43 #6791 [Verbose] > │     | US4_0                                                                  │

00:00:43 #6792 [Verbose] > │     | US4_1 of f1_0 : UH1                                                    │

00:00:43 #6793 [Verbose] > │ and UH9 =                                                                    │

00:00:43 #6794 [Verbose] > │     | UH9_0 of float * float * float * (unit -> UH9)                         │

00:00:43 #6795 [Verbose] > │     | UH9_1                                                                  │

00:00:43 #6796 [Verbose] > │ and UH10 =                                                                   │

00:00:43 #6797 [Verbose] > │     | UH10_0 of float * float * UH10                                         │

00:00:43 #6798 [Verbose] > │     | UH10_1                                                                 │

00:00:43 #6799 [Verbose] > │ and UH11 =                                                                   │

00:00:43 #6800 [Verbose] > │     | UH11_0 of float * float * (unit -> UH11)                               │

00:00:43 #6801 [Verbose] > │     | UH11_1                                                                 │

00:00:43 #6802 [Verbose] > │ and UH12 =                                                                   │

00:00:43 #6803 [Verbose] > │     | UH12_0 of float * UH12                                                 │

00:00:43 #6804 [Verbose] > │     | UH12_1                                                                 │

00:00:43 #6805 [Verbose] > │ and UH13 =                                                                   │

00:00:43 #6806 [Verbose] > │     | UH13_0 of int32 * (float []) * (float []) * (unit -> UH13)             │

00:00:43 #6807 [Verbose] > │     | UH13_1                                                                 │

00:00:43 #6808 [Verbose] > │ and UH14 =                                                                   │

00:00:43 #6809 [Verbose] > │     | UH14_0 of string * string * string * (struct (string * (float []) *    │

00:00:43 #6810 [Verbose] > │ (float [])) []) * (unit -> UH14)                                             │

00:00:43 #6811 [Verbose] > │     | UH14_1                                                                 │

00:00:43 #6812 [Verbose] > │ and UH15 =                                                                   │

00:00:43 #6813 [Verbose] > │     | UH15_0 of string * string * string * (struct (string * (float []) *    │

00:00:43 #6814 [Verbose] > │ (float [])) []) * UH15                                                       │

00:00:43 #6815 [Verbose] > │     | UH15_1                                                                 │

00:00:43 #6816 [Verbose] > │ let rec closure65 () () : UH0 =                                              │

00:00:43 #6817 [Verbose] > │     UH0_1                                                                    │

00:00:43 #6818 [Verbose] > │ and closure64 () () : UH0 =                                                  │

00:00:43 #6819 [Verbose] > │     let v0 : (unit -> UH0) = closure65()                                     │

00:00:43 #6820 [Verbose] > │     UH0_0(65.0, v0)                                                          │

00:00:43 #6821 [Verbose] > │ and closure63 () () : UH0 =                                                  │

00:00:43 #6822 [Verbose] > │     let v0 : (unit -> UH0) = closure64()                                     │

00:00:43 #6823 [Verbose] > │     UH0_0(64.0, v0)                                                          │

00:00:43 #6824 [Verbose] > │ and closure62 () () : UH0 =                                                  │

00:00:43 #6825 [Verbose] > │     let v0 : (unit -> UH0) = closure63()                                     │

00:00:43 #6826 [Verbose] > │     UH0_0(63.0, v0)                                                          │

00:00:43 #6827 [Verbose] > │ and closure61 () () : UH0 =                                                  │

00:00:43 #6828 [Verbose] > │     let v0 : (unit -> UH0) = closure62()                                     │

00:00:43 #6829 [Verbose] > │     UH0_0(62.0, v0)                                                          │

00:00:43 #6830 [Verbose] > │ and closure60 () () : UH0 =                                                  │

00:00:43 #6831 [Verbose] > │     let v0 : (unit -> UH0) = closure61()                                     │

00:00:43 #6832 [Verbose] > │     UH0_0(61.0, v0)                                                          │

00:00:43 #6833 [Verbose] > │ and closure59 () () : UH0 =                                                  │

00:00:43 #6834 [Verbose] > │     let v0 : (unit -> UH0) = closure60()                                     │

00:00:43 #6835 [Verbose] > │     UH0_0(60.0, v0)                                                          │

00:00:43 #6836 [Verbose] > │ and closure58 () () : UH0 =                                                  │

00:00:43 #6837 [Verbose] > │     let v0 : (unit -> UH0) = closure59()                                     │

00:00:43 #6838 [Verbose] > │     UH0_0(59.0, v0)                                                          │

00:00:43 #6839 [Verbose] > │ and closure57 () () : UH0 =                                                  │

00:00:43 #6840 [Verbose] > │     let v0 : (unit -> UH0) = closure58()                                     │

00:00:43 #6841 [Verbose] > │     UH0_0(58.0, v0)                                                          │

00:00:43 #6842 [Verbose] > │ and closure56 () () : UH0 =                                                  │

00:00:43 #6843 [Verbose] > │     let v0 : (unit -> UH0) = closure57()                                     │

00:00:43 #6844 [Verbose] > │     UH0_0(57.0, v0)                                                          │

00:00:43 #6845 [Verbose] > │ and closure55 () () : UH0 =                                                  │

00:00:43 #6846 [Verbose] > │     let v0 : (unit -> UH0) = closure56()                                     │

00:00:43 #6847 [Verbose] > │     UH0_0(56.0, v0)                                                          │

00:00:43 #6848 [Verbose] > │ and closure54 () () : UH0 =                                                  │

00:00:43 #6849 [Verbose] > │     let v0 : (unit -> UH0) = closure55()                                     │

00:00:43 #6850 [Verbose] > │     UH0_0(55.0, v0)                                                          │

00:00:43 #6851 [Verbose] > │ and closure53 () () : UH0 =                                                  │

00:00:43 #6852 [Verbose] > │     let v0 : (unit -> UH0) = closure54()                                     │

00:00:43 #6853 [Verbose] > │     UH0_0(54.0, v0)                                                          │

00:00:43 #6854 [Verbose] > │ and closure52 () () : UH0 =                                                  │

00:00:43 #6855 [Verbose] > │     let v0 : (unit -> UH0) = closure53()                                     │

00:00:43 #6856 [Verbose] > │     UH0_0(53.0, v0)                                                          │

00:00:43 #6857 [Verbose] > │ and closure51 () () : UH0 =                                                  │

00:00:43 #6858 [Verbose] > │     let v0 : (unit -> UH0) = closure52()                                     │

00:00:43 #6859 [Verbose] > │     UH0_0(52.0, v0)                                                          │

00:00:43 #6860 [Verbose] > │ and closure50 () () : UH0 =                                                  │

00:00:43 #6861 [Verbose] > │     let v0 : (unit -> UH0) = closure51()                                     │

00:00:43 #6862 [Verbose] > │     UH0_0(51.0, v0)                                                          │

00:00:43 #6863 [Verbose] > │ and closure49 () () : UH0 =                                                  │

00:00:43 #6864 [Verbose] > │     let v0 : (unit -> UH0) = closure50()                                     │

00:00:43 #6865 [Verbose] > │     UH0_0(50.0, v0)                                                          │

00:00:43 #6866 [Verbose] > │ and closure48 () () : UH0 =                                                  │

00:00:43 #6867 [Verbose] > │     let v0 : (unit -> UH0) = closure49()                                     │

00:00:43 #6868 [Verbose] > │     UH0_0(49.0, v0)                                                          │

00:00:43 #6869 [Verbose] > │ and closure47 () () : UH0 =                                                  │

00:00:43 #6870 [Verbose] > │     let v0 : (unit -> UH0) = closure48()                                     │

00:00:43 #6871 [Verbose] > │     UH0_0(48.0, v0)                                                          │

00:00:43 #6872 [Verbose] > │ and closure46 () () : UH0 =                                                  │

00:00:43 #6873 [Verbose] > │     let v0 : (unit -> UH0) = closure47()                                     │

00:00:43 #6874 [Verbose] > │     UH0_0(47.0, v0)                                                          │

00:00:43 #6875 [Verbose] > │ and closure45 () () : UH0 =                                                  │

00:00:43 #6876 [Verbose] > │     let v0 : (unit -> UH0) = closure46()                                     │

00:00:43 #6877 [Verbose] > │     UH0_0(46.0, v0)                                                          │

00:00:43 #6878 [Verbose] > │ and closure44 () () : UH0 =                                                  │

00:00:43 #6879 [Verbose] > │     let v0 : (unit -> UH0) = closure45()                                     │

00:00:43 #6880 [Verbose] > │     UH0_0(45.0, v0)                                                          │

00:00:43 #6881 [Verbose] > │ and closure43 () () : UH0 =                                                  │

00:00:43 #6882 [Verbose] > │     let v0 : (unit -> UH0) = closure44()                                     │

00:00:43 #6883 [Verbose] > │     UH0_0(44.0, v0)                                                          │

00:00:43 #6884 [Verbose] > │ and closure42 () () : UH0 =                                                  │

00:00:43 #6885 [Verbose] > │     let v0 : (unit -> UH0) = closure43()                                     │

00:00:43 #6886 [Verbose] > │     UH0_0(43.0, v0)                                                          │

00:00:43 #6887 [Verbose] > │ and closure41 () () : UH0 =                                                  │

00:00:43 #6888 [Verbose] > │     let v0 : (unit -> UH0) = closure42()                                     │

00:00:43 #6889 [Verbose] > │     UH0_0(42.0, v0)                                                          │

00:00:43 #6890 [Verbose] > │ and closure40 () () : UH0 =                                                  │

00:00:43 #6891 [Verbose] > │     let v0 : (unit -> UH0) = closure41()                                     │

00:00:43 #6892 [Verbose] > │     UH0_0(41.0, v0)                                                          │

00:00:43 #6893 [Verbose] > │ and closure39 () () : UH0 =                                                  │

00:00:43 #6894 [Verbose] > │     let v0 : (unit -> UH0) = closure40()                                     │

00:00:43 #6895 [Verbose] > │     UH0_0(40.0, v0)                                                          │

00:00:43 #6896 [Verbose] > │ and closure38 () () : UH0 =                                                  │

00:00:43 #6897 [Verbose] > │     let v0 : (unit -> UH0) = closure39()                                     │

00:00:43 #6898 [Verbose] > │     UH0_0(39.0, v0)                                                          │

00:00:43 #6899 [Verbose] > │ and closure37 () () : UH0 =                                                  │

00:00:43 #6900 [Verbose] > │     let v0 : (unit -> UH0) = closure38()                                     │

00:00:43 #6901 [Verbose] > │     UH0_0(38.0, v0)                                                          │

00:00:43 #6902 [Verbose] > │ and closure36 () () : UH0 =                                                  │

00:00:43 #6903 [Verbose] > │     let v0 : (unit -> UH0) = closure37()                                     │

00:00:43 #6904 [Verbose] > │     UH0_0(37.0, v0)                                                          │

00:00:43 #6905 [Verbose] > │ and closure35 () () : UH0 =                                                  │

00:00:43 #6906 [Verbose] > │     let v0 : (unit -> UH0) = closure36()                                     │

00:00:43 #6907 [Verbose] > │     UH0_0(36.0, v0)                                                          │

00:00:43 #6908 [Verbose] > │ and closure34 () () : UH0 =                                                  │

00:00:43 #6909 [Verbose] > │     let v0 : (unit -> UH0) = closure35()                                     │

00:00:43 #6910 [Verbose] > │     UH0_0(35.0, v0)                                                          │

00:00:43 #6911 [Verbose] > │ and closure33 () () : UH0 =                                                  │

00:00:43 #6912 [Verbose] > │     let v0 : (unit -> UH0) = closure34()                                     │

00:00:43 #6913 [Verbose] > │     UH0_0(34.0, v0)                                                          │

00:00:43 #6914 [Verbose] > │ and closure32 () () : UH0 =                                                  │

00:00:43 #6915 [Verbose] > │     let v0 : (unit -> UH0) = closure33()                                     │

00:00:43 #6916 [Verbose] > │     UH0_0(33.0, v0)                                                          │

00:00:43 #6917 [Verbose] > │ and closure31 () () : UH0 =                                                  │

00:00:43 #6918 [Verbose] > │     let v0 : (unit -> UH0) = closure32()                                     │

00:00:43 #6919 [Verbose] > │     UH0_0(32.0, v0)                                                          │

00:00:43 #6920 [Verbose] > │ and closure30 () () : UH0 =                                                  │

00:00:43 #6921 [Verbose] > │     let v0 : (unit -> UH0) = closure31()                                     │

00:00:43 #6922 [Verbose] > │     UH0_0(31.0, v0)                                                          │

00:00:43 #6923 [Verbose] > │ and closure29 () () : UH0 =                                                  │

00:00:43 #6924 [Verbose] > │     let v0 : (unit -> UH0) = closure30()                                     │

00:00:43 #6925 [Verbose] > │     UH0_0(30.0, v0)                                                          │

00:00:43 #6926 [Verbose] > │ and closure28 () () : UH0 =                                                  │

00:00:43 #6927 [Verbose] > │     let v0 : (unit -> UH0) = closure29()                                     │

00:00:43 #6928 [Verbose] > │     UH0_0(29.0, v0)                                                          │

00:00:43 #6929 [Verbose] > │ and closure27 () () : UH0 =                                                  │

00:00:43 #6930 [Verbose] > │     let v0 : (unit -> UH0) = closure28()                                     │

00:00:43 #6931 [Verbose] > │     UH0_0(28.0, v0)                                                          │

00:00:43 #6932 [Verbose] > │ and closure26 () () : UH0 =                                                  │

00:00:43 #6933 [Verbose] > │     let v0 : (unit -> UH0) = closure27()                                     │

00:00:43 #6934 [Verbose] > │     UH0_0(27.0, v0)                                                          │

00:00:43 #6935 [Verbose] > │ and closure25 () () : UH0 =                                                  │

00:00:43 #6936 [Verbose] > │     let v0 : (unit -> UH0) = closure26()                                     │

00:00:43 #6937 [Verbose] > │     UH0_0(26.0, v0)                                                          │

00:00:43 #6938 [Verbose] > │ and closure24 () () : UH0 =                                                  │

00:00:43 #6939 [Verbose] > │     let v0 : (unit -> UH0) = closure25()                                     │

00:00:43 #6940 [Verbose] > │     UH0_0(25.0, v0)                                                          │

00:00:43 #6941 [Verbose] > │ and closure23 () () : UH0 =                                                  │

00:00:43 #6942 [Verbose] > │     let v0 : (unit -> UH0) = closure24()                                     │

00:00:43 #6943 [Verbose] > │     UH0_0(24.0, v0)                                                          │

00:00:43 #6944 [Verbose] > │ and closure22 () () : UH0 =                                                  │

00:00:43 #6945 [Verbose] > │     let v0 : (unit -> UH0) = closure23()                                     │

00:00:43 #6946 [Verbose] > │     UH0_0(23.0, v0)                                                          │

00:00:43 #6947 [Verbose] > │ and closure21 () () : UH0 =                                                  │

00:00:43 #6948 [Verbose] > │     let v0 : (unit -> UH0) = closure22()                                     │

00:00:43 #6949 [Verbose] > │     UH0_0(22.0, v0)                                                          │

00:00:43 #6950 [Verbose] > │ and closure20 () () : UH0 =                                                  │

00:00:43 #6951 [Verbose] > │     let v0 : (unit -> UH0) = closure21()                                     │

00:00:43 #6952 [Verbose] > │     UH0_0(21.0, v0)                                                          │

00:00:43 #6953 [Verbose] > │ and closure19 () () : UH0 =                                                  │

00:00:43 #6954 [Verbose] > │     let v0 : (unit -> UH0) = closure20()                                     │

00:00:43 #6955 [Verbose] > │     UH0_0(20.0, v0)                                                          │

00:00:43 #6956 [Verbose] > │ and closure18 () () : UH0 =                                                  │

00:00:43 #6957 [Verbose] > │     let v0 : (unit -> UH0) = closure19()                                     │

00:00:43 #6958 [Verbose] > │     UH0_0(19.0, v0)                                                          │

00:00:43 #6959 [Verbose] > │ and closure17 () () : UH0 =                                                  │

00:00:43 #6960 [Verbose] > │     let v0 : (unit -> UH0) = closure18()                                     │

00:00:43 #6961 [Verbose] > │     UH0_0(18.0, v0)                                                          │

00:00:43 #6962 [Verbose] > │ and closure16 () () : UH0 =                                                  │

00:00:43 #6963 [Verbose] > │     let v0 : (unit -> UH0) = closure17()                                     │

00:00:43 #6964 [Verbose] > │     UH0_0(17.0, v0)                                                          │

00:00:43 #6965 [Verbose] > │ and closure15 () () : UH0 =                                                  │

00:00:43 #6966 [Verbose] > │     let v0 : (unit -> UH0) = closure16()                                     │

00:00:43 #6967 [Verbose] > │     UH0_0(16.0, v0)                                                          │

00:00:43 #6968 [Verbose] > │ and closure14 () () : UH0 =                                                  │

00:00:43 #6969 [Verbose] > │     let v0 : (unit -> UH0) = closure15()                                     │

00:00:43 #6970 [Verbose] > │     UH0_0(15.0, v0)                                                          │

00:00:43 #6971 [Verbose] > │ and closure13 () () : UH0 =                                                  │

00:00:43 #6972 [Verbose] > │     let v0 : (unit -> UH0) = closure14()                                     │

00:00:43 #6973 [Verbose] > │     UH0_0(14.0, v0)                                                          │

00:00:43 #6974 [Verbose] > │ and closure12 () () : UH0 =                                                  │

00:00:43 #6975 [Verbose] > │     let v0 : (unit -> UH0) = closure13()                                     │

00:00:43 #6976 [Verbose] > │     UH0_0(13.0, v0)                                                          │

00:00:43 #6977 [Verbose] > │ and closure11 () () : UH0 =                                                  │

00:00:43 #6978 [Verbose] > │     let v0 : (unit -> UH0) = closure12()                                     │

00:00:43 #6979 [Verbose] > │     UH0_0(12.0, v0)                                                          │

00:00:43 #6980 [Verbose] > │ and closure10 () () : UH0 =                                                  │

00:00:43 #6981 [Verbose] > │     let v0 : (unit -> UH0) = closure11()                                     │

00:00:43 #6982 [Verbose] > │     UH0_0(11.0, v0)                                                          │

00:00:43 #6983 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:43 #6984 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:43 #6985 [Verbose] > │     UH0_0(10.0, v0)                                                          │

00:00:43 #6986 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:43 #6987 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:43 #6988 [Verbose] > │     UH0_0(9.0, v0)                                                           │

00:00:43 #6989 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:43 #6990 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:43 #6991 [Verbose] > │     UH0_0(8.0, v0)                                                           │

00:00:43 #6992 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:43 #6993 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:43 #6994 [Verbose] > │     UH0_0(7.0, v0)                                                           │

00:00:43 #6995 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:43 #6996 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:43 #6997 [Verbose] > │     UH0_0(6.0, v0)                                                           │

00:00:43 #6998 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:43 #6999 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:43 #7000 [Verbose] > │     UH0_0(5.0, v0)                                                           │

00:00:43 #7001 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:43 #7002 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:43 #7003 [Verbose] > │     UH0_0(4.0, v0)                                                           │

00:00:43 #7004 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:43 #7005 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:43 #7006 [Verbose] > │     UH0_0(3.0, v0)                                                           │

00:00:43 #7007 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:43 #7008 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:43 #7009 [Verbose] > │     UH0_0(2.0, v0)                                                           │

00:00:43 #7010 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:43 #7011 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:43 #7012 [Verbose] > │     UH0_0(1.0, v0)                                                           │

00:00:43 #7013 [Verbose] > │ and closure129 () () : UH1 =                                                 │

00:00:43 #7014 [Verbose] > │     UH1_1                                                                    │

00:00:43 #7015 [Verbose] > │ and closure128 () () : UH1 =                                                 │

00:00:43 #7016 [Verbose] > │     let v0 : (unit -> UH1) = closure129()                                    │

00:00:43 #7017 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.64, 0.0007224452478461016, 0.0, 0.0, 0.0,  │

00:00:43 #7018 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7019 [Verbose] > │ and closure127 () () : UH1 =                                                 │

00:00:43 #7020 [Verbose] > │     let v0 : (unit -> UH1) = closure128()                                    │

00:00:43 #7021 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.63, 0.001429728391993452, 0.0, 0.0, 0.0,   │

00:00:43 #7022 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7023 [Verbose] > │ and closure126 () () : UH1 =                                                 │

00:00:43 #7024 [Verbose] > │     let v0 : (unit -> UH1) = closure127()                                    │

00:00:43 #7025 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.62, 0.0021070055388626528, 0.0, 0.0, 0.0,  │

00:00:43 #7026 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7027 [Verbose] > │ and closure125 () () : UH1 =                                                 │

00:00:43 #7028 [Verbose] > │     let v0 : (unit -> UH1) = closure126()                                    │

00:00:43 #7029 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.61, 0.0027400625367733585, 0.0, 0.0, 0.0,  │

00:00:43 #7030 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7031 [Verbose] > │ and closure124 () () : UH1 =                                                 │

00:00:43 #7032 [Verbose] > │     let v0 : (unit -> UH1) = closure125()                                    │

00:00:43 #7033 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.6, 0.0033156132912039783, 0.0, 0.0, 0.0,   │

00:00:43 #7034 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7035 [Verbose] > │ and closure123 () () : UH1 =                                                 │

00:00:43 #7036 [Verbose] > │     let v0 : (unit -> UH1) = closure124()                                    │

00:00:43 #7037 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.59, 0.003821578602729245, 0.0, 0.0, 0.0,   │

00:00:43 #7038 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7039 [Verbose] > │ and closure122 () () : UH1 =                                                 │

00:00:43 #7040 [Verbose] > │     let v0 : (unit -> UH1) = closure123()                                    │

00:00:43 #7041 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.5800000000000001, 0.004247339675607605,    │

00:00:43 #7042 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7043 [Verbose] > │ and closure121 () () : UH1 =                                                 │

00:00:43 #7044 [Verbose] > │     let v0 : (unit -> UH1) = closure122()                                    │

00:00:43 #7045 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.5700000000000001, 0.004583960976582912,    │

00:00:43 #7046 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7047 [Verbose] > │ and closure120 () () : UH1 =                                                 │

00:00:43 #7048 [Verbose] > │     let v0 : (unit -> UH1) = closure121()                                    │

00:00:43 #7049 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.56, 0.004824377766717758, 0.0, 0.0, 0.0,   │

00:00:43 #7050 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7051 [Verbose] > │ and closure119 () () : UH1 =                                                 │

00:00:43 #7052 [Verbose] > │     let v0 : (unit -> UH1) = closure120()                                    │

00:00:43 #7053 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.55, 0.004963544370490271, 0.0, 0.0, 0.0,   │

00:00:43 #7054 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7055 [Verbose] > │ and closure118 () () : UH1 =                                                 │

00:00:43 #7056 [Verbose] > │     let v0 : (unit -> UH1) = closure119()                                    │

00:00:43 #7057 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.54, 0.004998540070400965, 0.0, 0.0, 0.0,   │

00:00:43 #7058 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7059 [Verbose] > │ and closure117 () () : UH1 =                                                 │

00:00:43 #7060 [Verbose] > │     let v0 : (unit -> UH1) = closure118()                                    │

00:00:43 #7061 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.53, 0.004928630404658255, 0.0, 0.0, 0.0,   │

00:00:43 #7062 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7063 [Verbose] > │ and closure116 () () : UH1 =                                                 │

00:00:43 #7064 [Verbose] > │     let v0 : (unit -> UH1) = closure117()                                    │

00:00:43 #7065 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.52, 0.004755282581475766, 0.0, 0.0, 0.0,   │

00:00:43 #7066 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7067 [Verbose] > │ and closure115 () () : UH1 =                                                 │

00:00:43 #7068 [Verbose] > │     let v0 : (unit -> UH1) = closure116()                                    │

00:00:43 #7069 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.51, 0.0044821346864785195, 0.0, 0.0, 0.0,  │

00:00:43 #7070 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7071 [Verbose] > │ and closure114 () () : UH1 =                                                 │

00:00:43 #7072 [Verbose] > │     let v0 : (unit -> UH1) = closure115()                                    │

00:00:43 #7073 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.5, 0.0041149193294682815, 0.0, 0.0, 0.0,   │

00:00:43 #7074 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7075 [Verbose] > │ and closure113 () () : UH1 =                                                 │

00:00:43 #7076 [Verbose] > │     let v0 : (unit -> UH1) = closure114()                                    │

00:00:43 #7077 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.49, 0.0036613433329888622, 0.0, 0.0, 0.0,  │

00:00:43 #7078 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7079 [Verbose] > │ and closure112 () () : UH1 =                                                 │

00:00:43 #7080 [Verbose] > │     let v0 : (unit -> UH1) = closure113()                                    │

00:00:43 #7081 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.48000000000000004, 0.003130925987691568,   │

00:00:43 #7082 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7083 [Verbose] > │ and closure111 () () : UH1 =                                                 │

00:00:43 #7084 [Verbose] > │     let v0 : (unit -> UH1) = closure112()                                    │

00:00:43 #7085 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.47000000000000003, 0.002534799269067953,   │

00:00:43 #7086 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7087 [Verbose] > │ and closure110 () () : UH1 =                                                 │

00:00:43 #7088 [Verbose] > │     let v0 : (unit -> UH1) = closure111()                                    │

00:00:43 #7089 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.46, 0.0018854742084416021, 0.0, 0.0, 0.0,  │

00:00:43 #7090 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7091 [Verbose] > │ and closure109 () () : UH1 =                                                 │

00:00:43 #7092 [Verbose] > │     let v0 : (unit -> UH1) = closure110()                                    │

00:00:43 #7093 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.45, 0.0011965783214377866, 0.0, 0.0, 0.0,  │

00:00:43 #7094 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7095 [Verbose] > │ and closure108 () () : UH1 =                                                 │

00:00:43 #7096 [Verbose] > │     let v0 : (unit -> UH1) = closure109()                                    │

00:00:43 #7097 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.44, 0.0004825696045725713, 0.0, 0.0, 0.0,  │

00:00:43 #7098 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7099 [Verbose] > │ and closure107 () () : UH1 =                                                 │

00:00:43 #7100 [Verbose] > │     let v0 : (unit -> UH1) = closure108()                                    │

00:00:43 #7101 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.43, -0.00024156689762753724, 0.0, 0.0,     │

00:00:43 #7102 [Verbose] > │ 0.0, 0.0, 0.0, v0)                                                           │

00:00:43 #7103 [Verbose] > │ and closure106 () () : UH1 =                                                 │

00:00:43 #7104 [Verbose] > │     let v0 : (unit -> UH1) = closure107()                                    │

00:00:43 #7105 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.42000000000000004, -0.0009606335867685414, │

00:00:43 #7106 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7107 [Verbose] > │ and closure105 () () : UH1 =                                                 │

00:00:43 #7108 [Verbose] > │     let v0 : (unit -> UH1) = closure106()                                    │

00:00:43 #7109 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.41000000000000003, -0.0016595392656426435, │

00:00:43 #7110 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7111 [Verbose] > │ and closure104 () () : UH1 =                                                 │

00:00:43 #7112 [Verbose] > │     let v0 : (unit -> UH1) = closure105()                                    │

00:00:43 #7113 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.4, -0.002323615860218846, 0.0, 0.0, 0.0,   │

00:00:43 #7114 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7115 [Verbose] > │ and closure103 () () : UH1 =                                                 │

00:00:43 #7116 [Verbose] > │     let v0 : (unit -> UH1) = closure104()                                    │

00:00:43 #7117 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.39, -0.002938926261462367, 0.0, 0.0, 0.0,  │

00:00:43 #7118 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7119 [Verbose] > │ and closure102 () () : UH1 =                                                 │

00:00:43 #7120 [Verbose] > │     let v0 : (unit -> UH1) = closure103()                                    │

00:00:43 #7121 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.38, -0.0034925568262446837, 0.0, 0.0, 0.0, │

00:00:43 #7122 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7123 [Verbose] > │ and closure101 () () : UH1 =                                                 │

00:00:43 #7124 [Verbose] > │     let v0 : (unit -> UH1) = closure102()                                    │

00:00:43 #7125 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.37, -0.003972888398568774, 0.0, 0.0, 0.0,  │

00:00:43 #7126 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7127 [Verbose] > │ and closure100 () () : UH1 =                                                 │

00:00:43 #7128 [Verbose] > │     let v0 : (unit -> UH1) = closure101()                                    │

00:00:43 #7129 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.36000000000000004, -0.004369840163132589,  │

00:00:43 #7130 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7131 [Verbose] > │ and closure99 () () : UH1 =                                                  │

00:00:43 #7132 [Verbose] > │     let v0 : (unit -> UH1) = closure100()                                    │

00:00:43 #7133 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.35000000000000003, -0.004675081213427074,  │

00:00:43 #7134 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7135 [Verbose] > │ and closure98 () () : UH1 =                                                  │

00:00:43 #7136 [Verbose] > │     let v0 : (unit -> UH1) = closure99()                                     │

00:00:43 #7137 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.34, -0.004882205394146361, 0.0, 0.0, 0.0,  │

00:00:43 #7138 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7139 [Verbose] > │ and closure97 () () : UH1 =                                                  │

00:00:43 #7140 [Verbose] > │     let v0 : (unit -> UH1) = closure98()                                     │

00:00:43 #7141 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.33, -0.004986865748457456, 0.0, 0.0, 0.0,  │

00:00:43 #7142 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7143 [Verbose] > │ and closure96 () () : UH1 =                                                  │

00:00:43 #7144 [Verbose] > │     let v0 : (unit -> UH1) = closure97()                                     │

00:00:43 #7145 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.32, -0.004986865748457456, 0.0, 0.0, 0.0,  │

00:00:43 #7146 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7147 [Verbose] > │ and closure95 () () : UH1 =                                                  │

00:00:43 #7148 [Verbose] > │     let v0 : (unit -> UH1) = closure96()                                     │

00:00:43 #7149 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.31, -0.004882205394146359, 0.0, 0.0, 0.0,  │

00:00:43 #7150 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7151 [Verbose] > │ and closure94 () () : UH1 =                                                  │

00:00:43 #7152 [Verbose] > │     let v0 : (unit -> UH1) = closure95()                                     │

00:00:43 #7153 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.3, -0.004675081213427074, 0.0, 0.0, 0.0,   │

00:00:43 #7154 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7155 [Verbose] > │ and closure93 () () : UH1 =                                                  │

00:00:43 #7156 [Verbose] > │     let v0 : (unit -> UH1) = closure94()                                     │

00:00:43 #7157 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.29000000000000004, -0.00436984016313259,   │

00:00:43 #7158 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7159 [Verbose] > │ and closure92 () () : UH1 =                                                  │

00:00:43 #7160 [Verbose] > │     let v0 : (unit -> UH1) = closure93()                                     │

00:00:43 #7161 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.28, -0.003972888398568771, 0.0, 0.0, 0.0,  │

00:00:43 #7162 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7163 [Verbose] > │ and closure91 () () : UH1 =                                                  │

00:00:43 #7164 [Verbose] > │     let v0 : (unit -> UH1) = closure92()                                     │

00:00:43 #7165 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.27, -0.003492556826244686, 0.0, 0.0, 0.0,  │

00:00:43 #7166 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7167 [Verbose] > │ and closure90 () () : UH1 =                                                  │

00:00:43 #7168 [Verbose] > │     let v0 : (unit -> UH1) = closure91()                                     │

00:00:43 #7169 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.26, -0.0029389262614623636, 0.0, 0.0, 0.0, │

00:00:43 #7170 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7171 [Verbose] > │ and closure89 () () : UH1 =                                                  │

00:00:43 #7172 [Verbose] > │     let v0 : (unit -> UH1) = closure90()                                     │

00:00:43 #7173 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.25, -0.002323615860218842, 0.0, 0.0, 0.0,  │

00:00:43 #7174 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7175 [Verbose] > │ and closure88 () () : UH1 =                                                  │

00:00:43 #7176 [Verbose] > │     let v0 : (unit -> UH1) = closure89()                                     │

00:00:43 #7177 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.24000000000000002, -0.001659539265642642,  │

00:00:43 #7178 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7179 [Verbose] > │ and closure87 () () : UH1 =                                                  │

00:00:43 #7180 [Verbose] > │     let v0 : (unit -> UH1) = closure88()                                     │

00:00:43 #7181 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.23, -0.0009606335867685418, 0.0, 0.0, 0.0, │

00:00:43 #7182 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7183 [Verbose] > │ and closure86 () () : UH1 =                                                  │

00:00:43 #7184 [Verbose] > │     let v0 : (unit -> UH1) = closure87()                                     │

00:00:43 #7185 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.22, -0.00024156689762753317, 0.0, 0.0,     │

00:00:43 #7186 [Verbose] > │ 0.0, 0.0, 0.0, v0)                                                           │

00:00:43 #7187 [Verbose] > │ and closure85 () () : UH1 =                                                  │

00:00:43 #7188 [Verbose] > │     let v0 : (unit -> UH1) = closure86()                                     │

00:00:43 #7189 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.21000000000000002, 0.00048256960457257535, │

00:00:43 #7190 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7191 [Verbose] > │ and closure84 () () : UH1 =                                                  │

00:00:43 #7192 [Verbose] > │     let v0 : (unit -> UH1) = closure85()                                     │

00:00:43 #7193 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.2, 0.0011965783214377905, 0.0, 0.0, 0.0,   │

00:00:43 #7194 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7195 [Verbose] > │ and closure83 () () : UH1 =                                                  │

00:00:43 #7196 [Verbose] > │     let v0 : (unit -> UH1) = closure84()                                     │

00:00:43 #7197 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.19, 0.0018854742084416015, 0.0, 0.0, 0.0,  │

00:00:43 #7198 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7199 [Verbose] > │ and closure82 () () : UH1 =                                                  │

00:00:43 #7200 [Verbose] > │     let v0 : (unit -> UH1) = closure83()                                     │

00:00:43 #7201 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.18000000000000002, 0.002534799269067951,   │

00:00:43 #7202 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7203 [Verbose] > │ and closure81 () () : UH1 =                                                  │

00:00:43 #7204 [Verbose] > │     let v0 : (unit -> UH1) = closure82()                                     │

00:00:43 #7205 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.17, 0.0031309259876915697, 0.0, 0.0, 0.0,  │

00:00:43 #7206 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7207 [Verbose] > │ and closure80 () () : UH1 =                                                  │

00:00:43 #7208 [Verbose] > │     let v0 : (unit -> UH1) = closure81()                                     │

00:00:43 #7209 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.16, 0.0036613433329888666, 0.0, 0.0, 0.0,  │

00:00:43 #7210 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7211 [Verbose] > │ and closure79 () () : UH1 =                                                  │

00:00:43 #7212 [Verbose] > │     let v0 : (unit -> UH1) = closure80()                                     │

00:00:43 #7213 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.15000000000000002, 0.0041149193294682815,  │

00:00:43 #7214 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7215 [Verbose] > │ and closure78 () () : UH1 =                                                  │

00:00:43 #7216 [Verbose] > │     let v0 : (unit -> UH1) = closure79()                                     │

00:00:43 #7217 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.14, 0.004482134686478519, 0.0, 0.0, 0.0,   │

00:00:43 #7218 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7219 [Verbose] > │ and closure77 () () : UH1 =                                                  │

00:00:43 #7220 [Verbose] > │     let v0 : (unit -> UH1) = closure78()                                     │

00:00:43 #7221 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.13, 0.004755282581475768, 0.0, 0.0, 0.0,   │

00:00:43 #7222 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7223 [Verbose] > │ and closure76 () () : UH1 =                                                  │

00:00:43 #7224 [Verbose] > │     let v0 : (unit -> UH1) = closure77()                                     │

00:00:43 #7225 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.12, 0.004928630404658255, 0.0, 0.0, 0.0,   │

00:00:43 #7226 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7227 [Verbose] > │ and closure75 () () : UH1 =                                                  │

00:00:43 #7228 [Verbose] > │     let v0 : (unit -> UH1) = closure76()                                     │

00:00:43 #7229 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.11, 0.004998540070400965, 0.0, 0.0, 0.0,   │

00:00:43 #7230 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7231 [Verbose] > │ and closure74 () () : UH1 =                                                  │

00:00:43 #7232 [Verbose] > │     let v0 : (unit -> UH1) = closure75()                                     │

00:00:43 #7233 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.09999999999999999, 0.00496354437049027,    │

00:00:43 #7234 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7235 [Verbose] > │ and closure73 () () : UH1 =                                                  │

00:00:43 #7236 [Verbose] > │     let v0 : (unit -> UH1) = closure74()                                     │

00:00:43 #7237 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.09, 0.004824377766717757, 0.0, 0.0, 0.0,   │

00:00:43 #7238 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7239 [Verbose] > │ and closure72 () () : UH1 =                                                  │

00:00:43 #7240 [Verbose] > │     let v0 : (unit -> UH1) = closure73()                                     │

00:00:43 #7241 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.08, 0.004583960976582912, 0.0, 0.0, 0.0,   │

00:00:43 #7242 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7243 [Verbose] > │ and closure71 () () : UH1 =                                                  │

00:00:43 #7244 [Verbose] > │     let v0 : (unit -> UH1) = closure72()                                     │

00:00:43 #7245 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.06999999999999999, 0.004247339675607605,   │

00:00:43 #7246 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7247 [Verbose] > │ and closure70 () () : UH1 =                                                  │

00:00:43 #7248 [Verbose] > │     let v0 : (unit -> UH1) = closure71()                                     │

00:00:43 #7249 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.060000000000000005, 0.0038215786027292415, │

00:00:43 #7250 [Verbose] > │ 0.0, 0.0, 0.0, 0.0, 0.0, v0)                                                 │

00:00:43 #7251 [Verbose] > │ and closure69 () () : UH1 =                                                  │

00:00:43 #7252 [Verbose] > │     let v0 : (unit -> UH1) = closure70()                                     │

00:00:43 #7253 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.05, 0.0033156132912039757, 0.0, 0.0, 0.0,  │

00:00:43 #7254 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7255 [Verbose] > │ and closure68 () () : UH1 =                                                  │

00:00:43 #7256 [Verbose] > │     let v0 : (unit -> UH1) = closure69()                                     │

00:00:43 #7257 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.04, 0.00274006253677335, 0.0, 0.0, 0.0,    │

00:00:43 #7258 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7259 [Verbose] > │ and closure67 () () : UH1 =                                                  │

00:00:43 #7260 [Verbose] > │     let v0 : (unit -> UH1) = closure68()                                     │

00:00:43 #7261 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.03, 0.0021070055388626454, 0.0, 0.0, 0.0,  │

00:00:43 #7262 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7263 [Verbose] > │ and closure66 () () : UH1 =                                                  │

00:00:43 #7264 [Verbose] > │     let v0 : (unit -> UH1) = closure67()                                     │

00:00:43 #7265 [Verbose] > │     UH1_0(0.0, 8.422578125E-06, 0.02, 0.0014297283919934465, 0.0, 0.0, 0.0,  │

00:00:43 #7266 [Verbose] > │ 0.0, 0.0, v0)                                                                │

00:00:43 #7267 [Verbose] > │ and closure132 (v0 : (unit -> UH1), v1 : (unit -> UH3)) () : UH1 =           │

00:00:43 #7268 [Verbose] > │     let v2 : UH3 = v1 ()                                                     │

00:00:43 #7269 [Verbose] > │     let v3 : UH1 = v0 ()                                                     │

00:00:43 #7270 [Verbose] > │     match v2 with                                                            │

00:00:43 #7271 [Verbose] > │     | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *)  │

00:00:43 #7272 [Verbose] > │         match v3 with                                                        │

00:00:43 #7273 [Verbose] > │         | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (*      │

00:00:43 #7274 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7275 [Verbose] > │             let v24 : float = v9 * 1.25E-05                                  │

00:00:43 #7276 [Verbose] > │             let v25 : float = v19 + v24                                      │

00:00:43 #7277 [Verbose] > │             let v26 : float = 1.25E-05 * v6                                  │

00:00:43 #7278 [Verbose] > │             let v27 : float = 1.25E-05 * v7                                  │

00:00:43 #7279 [Verbose] > │             let v28 : float = 1.25E-05 * v8                                  │

00:00:43 #7280 [Verbose] > │             let v29 : float = v16 + v26                                      │

00:00:43 #7281 [Verbose] > │             let v30 : float = v17 + v27                                      │

00:00:43 #7282 [Verbose] > │             let v31 : float = v18 + v28                                      │

00:00:43 #7283 [Verbose] > │             let v32 : float = 1.25E-05 * v10                                 │

00:00:43 #7284 [Verbose] > │             let v33 : float = 1.25E-05 * v11                                 │

00:00:43 #7285 [Verbose] > │             let v34 : float = 1.25E-05 * v12                                 │

00:00:43 #7286 [Verbose] > │             let v35 : float = v20 + v32                                      │

00:00:43 #7287 [Verbose] > │             let v36 : float = v21 + v33                                      │

00:00:43 #7288 [Verbose] > │             let v37 : float = v22 + v34                                      │

00:00:43 #7289 [Verbose] > │             let v38 : (unit -> UH1) = closure132(v23, v13)                   │

00:00:43 #7290 [Verbose] > │             UH1_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38)          │

00:00:43 #7291 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:43 #7292 [Verbose] > │             UH1_1                                                            │

00:00:43 #7293 [Verbose] > │     | UH3_1 -> (* StreamNil *)                                               │

00:00:43 #7294 [Verbose] > │         UH1_1                                                                │

00:00:43 #7295 [Verbose] > │ and closure133 (v0 : UH1) () : UH1 =                                         │

00:00:43 #7296 [Verbose] > │     v0                                                                       │

00:00:43 #7297 [Verbose] > │ and closure134 (v0 : UH1, v1 : Mut0) () : UH1 =                              │

00:00:43 #7298 [Verbose] > │     let v2 : US0 = v1.l0                                                     │

00:00:43 #7299 [Verbose] > │     match v2 with                                                            │

00:00:43 #7300 [Verbose] > │     | US0_0(v3) -> (* Computed *)                                            │

00:00:43 #7301 [Verbose] > │         v3                                                                   │

00:00:43 #7302 [Verbose] > │     | US0_1(v4) -> (* NotComputed *)                                         │

00:00:43 #7303 [Verbose] > │         let v5 : UH1 = v4 ()                                                 │

00:00:43 #7304 [Verbose] > │         let v20 : UH1 =                                                      │

00:00:43 #7305 [Verbose] > │             match v5 with                                                    │

00:00:43 #7306 [Verbose] > │             | UH1_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) -> (*     │

00:00:43 #7307 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7308 [Verbose] > │                 let v17 : (unit -> UH1) = method3(v0, v16)                   │

00:00:43 #7309 [Verbose] > │                 UH1_0(v7, v8, v9, v10, v11, v12, v13, v14, v15, v17)         │

00:00:43 #7310 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:43 #7311 [Verbose] > │                 UH1_1                                                        │

00:00:43 #7312 [Verbose] > │         let v21 : US0 = US0_0(v20)                                           │

00:00:43 #7313 [Verbose] > │         v1.l0 <- v21                                                         │

00:00:43 #7314 [Verbose] > │         v20                                                                  │

00:00:43 #7315 [Verbose] > │ and method3 (v0 : UH1, v1 : (unit -> UH1)) : (unit -> UH1) =                 │

00:00:43 #7316 [Verbose] > │     let v2 : US0 = US0_1(v1)                                                 │

00:00:43 #7317 [Verbose] > │     let v3 : Mut0 = {l0 = v2} : Mut0                                         │

00:00:43 #7318 [Verbose] > │     closure134(v0, v3)                                                       │

00:00:43 #7319 [Verbose] > │ and closure135 (v0 : (unit -> UH1), v1 : (unit -> UH3)) () : UH1 =           │

00:00:43 #7320 [Verbose] > │     let v2 : UH3 = v1 ()                                                     │

00:00:43 #7321 [Verbose] > │     let v3 : UH1 = v0 ()                                                     │

00:00:43 #7322 [Verbose] > │     match v2 with                                                            │

00:00:43 #7323 [Verbose] > │     | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *)  │

00:00:43 #7324 [Verbose] > │         match v3 with                                                        │

00:00:43 #7325 [Verbose] > │         | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (*      │

00:00:43 #7326 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7327 [Verbose] > │             let v24 : float = v9 * 2.5E-05                                   │

00:00:43 #7328 [Verbose] > │             let v25 : float = v19 + v24                                      │

00:00:43 #7329 [Verbose] > │             let v26 : float = 2.5E-05 * v6                                   │

00:00:43 #7330 [Verbose] > │             let v27 : float = 2.5E-05 * v7                                   │

00:00:43 #7331 [Verbose] > │             let v28 : float = 2.5E-05 * v8                                   │

00:00:43 #7332 [Verbose] > │             let v29 : float = v16 + v26                                      │

00:00:43 #7333 [Verbose] > │             let v30 : float = v17 + v27                                      │

00:00:43 #7334 [Verbose] > │             let v31 : float = v18 + v28                                      │

00:00:43 #7335 [Verbose] > │             let v32 : float = 2.5E-05 * v10                                  │

00:00:43 #7336 [Verbose] > │             let v33 : float = 2.5E-05 * v11                                  │

00:00:43 #7337 [Verbose] > │             let v34 : float = 2.5E-05 * v12                                  │

00:00:43 #7338 [Verbose] > │             let v35 : float = v20 + v32                                      │

00:00:43 #7339 [Verbose] > │             let v36 : float = v21 + v33                                      │

00:00:43 #7340 [Verbose] > │             let v37 : float = v22 + v34                                      │

00:00:43 #7341 [Verbose] > │             let v38 : (unit -> UH1) = closure135(v23, v13)                   │

00:00:43 #7342 [Verbose] > │             UH1_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38)          │

00:00:43 #7343 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:43 #7344 [Verbose] > │             UH1_1                                                            │

00:00:43 #7345 [Verbose] > │     | UH3_1 -> (* StreamNil *)                                               │

00:00:43 #7346 [Verbose] > │         UH1_1                                                                │

00:00:43 #7347 [Verbose] > │ and closure136 (v0 : (unit -> UH3), v1 : (unit -> UH3)) () : UH3 =           │

00:00:43 #7348 [Verbose] > │     let v2 : UH3 = v1 ()                                                     │

00:00:43 #7349 [Verbose] > │     let v3 : UH3 = v0 ()                                                     │

00:00:43 #7350 [Verbose] > │     match v2 with                                                            │

00:00:43 #7351 [Verbose] > │     | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *)  │

00:00:43 #7352 [Verbose] > │         match v3 with                                                        │

00:00:43 #7353 [Verbose] > │         | UH3_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (*      │

00:00:43 #7354 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7355 [Verbose] > │             let v24 : float = v4 + v14                                       │

00:00:43 #7356 [Verbose] > │             let v25 : float = v5 + v15                                       │

00:00:43 #7357 [Verbose] > │             let v26 : float = v9 + v19                                       │

00:00:43 #7358 [Verbose] > │             let v27 : float = v6 + v16                                       │

00:00:43 #7359 [Verbose] > │             let v28 : float = v7 + v17                                       │

00:00:43 #7360 [Verbose] > │             let v29 : float = v8 + v18                                       │

00:00:43 #7361 [Verbose] > │             let v30 : float = v10 + v20                                      │

00:00:43 #7362 [Verbose] > │             let v31 : float = v11 + v21                                      │

00:00:43 #7363 [Verbose] > │             let v32 : float = v12 + v22                                      │

00:00:43 #7364 [Verbose] > │             let v33 : (unit -> UH3) = closure136(v23, v13)                   │

00:00:43 #7365 [Verbose] > │             UH3_0(v24, v25, v27, v28, v29, v26, v30, v31, v32, v33)          │

00:00:43 #7366 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7367 [Verbose] > │             UH3_1                                                            │

00:00:43 #7368 [Verbose] > │     | UH3_1 -> (* StreamNil *)                                               │

00:00:43 #7369 [Verbose] > │         UH3_1                                                                │

00:00:43 #7370 [Verbose] > │ and closure137 (v0 : (unit -> UH1), v1 : (unit -> UH3)) () : UH1 =           │

00:00:43 #7371 [Verbose] > │     let v2 : UH3 = v1 ()                                                     │

00:00:43 #7372 [Verbose] > │     let v3 : UH1 = v0 ()                                                     │

00:00:43 #7373 [Verbose] > │     match v2 with                                                            │

00:00:43 #7374 [Verbose] > │     | UH3_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) -> (* StreamCons *)  │

00:00:43 #7375 [Verbose] > │         match v3 with                                                        │

00:00:43 #7376 [Verbose] > │         | UH1_0(v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) -> (*      │

00:00:43 #7377 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7378 [Verbose] > │             let v24 : float = v9 * 4.166666666666667E-06                     │

00:00:43 #7379 [Verbose] > │             let v25 : float = v19 + v24                                      │

00:00:43 #7380 [Verbose] > │             let v26 : float = 4.166666666666667E-06 * v6                     │

00:00:43 #7381 [Verbose] > │             let v27 : float = 4.166666666666667E-06 * v7                     │

00:00:43 #7382 [Verbose] > │             let v28 : float = 4.166666666666667E-06 * v8                     │

00:00:43 #7383 [Verbose] > │             let v29 : float = v16 + v26                                      │

00:00:43 #7384 [Verbose] > │             let v30 : float = v17 + v27                                      │

00:00:43 #7385 [Verbose] > │             let v31 : float = v18 + v28                                      │

00:00:43 #7386 [Verbose] > │             let v32 : float = 4.166666666666667E-06 * v10                    │

00:00:43 #7387 [Verbose] > │             let v33 : float = 4.166666666666667E-06 * v11                    │

00:00:43 #7388 [Verbose] > │             let v34 : float = 4.166666666666667E-06 * v12                    │

00:00:43 #7389 [Verbose] > │             let v35 : float = v20 + v32                                      │

00:00:43 #7390 [Verbose] > │             let v36 : float = v21 + v33                                      │

00:00:43 #7391 [Verbose] > │             let v37 : float = v22 + v34                                      │

00:00:43 #7392 [Verbose] > │             let v38 : (unit -> UH1) = closure137(v23, v13)                   │

00:00:43 #7393 [Verbose] > │             UH1_0(v14, v15, v29, v30, v31, v25, v35, v36, v37, v38)          │

00:00:43 #7394 [Verbose] > │         | UH1_1 -> (* StreamNil *)                                           │

00:00:43 #7395 [Verbose] > │             UH1_1                                                            │

00:00:43 #7396 [Verbose] > │     | UH3_1 -> (* StreamNil *)                                               │

00:00:43 #7397 [Verbose] > │         UH1_1                                                                │

00:00:43 #7398 [Verbose] > │ and closure131 (v0 : (UH1 -> UH3)) (v1 : UH1) : UH1 =                        │

00:00:43 #7399 [Verbose] > │     let v2 : UH3 = v0 v1                                                     │

00:00:43 #7400 [Verbose] > │     let v44 : UH1 =                                                          │

00:00:43 #7401 [Verbose] > │         match v2 with                                                        │

00:00:43 #7402 [Verbose] > │         | UH3_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons  │

00:00:43 #7403 [Verbose] > │ *)                                                                           │

00:00:43 #7404 [Verbose] > │             match v1 with                                                    │

00:00:43 #7405 [Verbose] > │             | UH1_0(v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) -> (*  │

00:00:43 #7406 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7407 [Verbose] > │                 let v23 : float = v8 * 1.25E-05                              │

00:00:43 #7408 [Verbose] > │                 let v24 : float = v18 + v23                                  │

00:00:43 #7409 [Verbose] > │                 let v25 : float = 1.25E-05 * v5                              │

00:00:43 #7410 [Verbose] > │                 let v26 : float = 1.25E-05 * v6                              │

00:00:43 #7411 [Verbose] > │                 let v27 : float = 1.25E-05 * v7                              │

00:00:43 #7412 [Verbose] > │                 let v28 : float = v15 + v25                                  │

00:00:43 #7413 [Verbose] > │                 let v29 : float = v16 + v26                                  │

00:00:43 #7414 [Verbose] > │                 let v30 : float = v17 + v27                                  │

00:00:43 #7415 [Verbose] > │                 let v31 : float = 1.25E-05 * v9                              │

00:00:43 #7416 [Verbose] > │                 let v32 : float = 1.25E-05 * v10                             │

00:00:43 #7417 [Verbose] > │                 let v33 : float = 1.25E-05 * v11                             │

00:00:43 #7418 [Verbose] > │                 let v34 : float = v19 + v31                                  │

00:00:43 #7419 [Verbose] > │                 let v35 : float = v20 + v32                                  │

00:00:43 #7420 [Verbose] > │                 let v36 : float = v21 + v33                                  │

00:00:43 #7421 [Verbose] > │                 let v37 : (unit -> UH1) = closure132(v22, v12)               │

00:00:43 #7422 [Verbose] > │                 UH1_0(v13, v14, v28, v29, v30, v24, v34, v35, v36, v37)      │

00:00:43 #7423 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:43 #7424 [Verbose] > │                 UH1_1                                                        │

00:00:43 #7425 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7426 [Verbose] > │             UH1_1                                                            │

00:00:43 #7427 [Verbose] > │     let v45 : (unit -> UH1) = closure133(v44)                                │

00:00:43 #7428 [Verbose] > │     let v46 : (unit -> UH1) = method3(v44, v45)                              │

00:00:43 #7429 [Verbose] > │     let v47 : UH1 = v46 ()                                                   │

00:00:43 #7430 [Verbose] > │     let v48 : UH3 = v0 v47                                                   │

00:00:43 #7431 [Verbose] > │     let v90 : UH1 =                                                          │

00:00:43 #7432 [Verbose] > │         match v48 with                                                       │

00:00:43 #7433 [Verbose] > │         | UH3_0(v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) -> (*      │

00:00:43 #7434 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7435 [Verbose] > │             match v1 with                                                    │

00:00:43 #7436 [Verbose] > │             | UH1_0(v59, v60, v61, v62, v63, v64, v65, v66, v67, v68) -> (*  │

00:00:43 #7437 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7438 [Verbose] > │                 let v69 : float = v54 * 1.25E-05                             │

00:00:43 #7439 [Verbose] > │                 let v70 : float = v64 + v69                                  │

00:00:43 #7440 [Verbose] > │                 let v71 : float = 1.25E-05 * v51                             │

00:00:43 #7441 [Verbose] > │                 let v72 : float = 1.25E-05 * v52                             │

00:00:43 #7442 [Verbose] > │                 let v73 : float = 1.25E-05 * v53                             │

00:00:43 #7443 [Verbose] > │                 let v74 : float = v61 + v71                                  │

00:00:43 #7444 [Verbose] > │                 let v75 : float = v62 + v72                                  │

00:00:43 #7445 [Verbose] > │                 let v76 : float = v63 + v73                                  │

00:00:43 #7446 [Verbose] > │                 let v77 : float = 1.25E-05 * v55                             │

00:00:43 #7447 [Verbose] > │                 let v78 : float = 1.25E-05 * v56                             │

00:00:43 #7448 [Verbose] > │                 let v79 : float = 1.25E-05 * v57                             │

00:00:43 #7449 [Verbose] > │                 let v80 : float = v65 + v77                                  │

00:00:43 #7450 [Verbose] > │                 let v81 : float = v66 + v78                                  │

00:00:43 #7451 [Verbose] > │                 let v82 : float = v67 + v79                                  │

00:00:43 #7452 [Verbose] > │                 let v83 : (unit -> UH1) = closure132(v68, v58)               │

00:00:43 #7453 [Verbose] > │                 UH1_0(v59, v60, v74, v75, v76, v70, v80, v81, v82, v83)      │

00:00:43 #7454 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:43 #7455 [Verbose] > │                 UH1_1                                                        │

00:00:43 #7456 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7457 [Verbose] > │             UH1_1                                                            │

00:00:43 #7458 [Verbose] > │     let v91 : (unit -> UH1) = closure133(v90)                                │

00:00:43 #7459 [Verbose] > │     let v92 : (unit -> UH1) = method3(v90, v91)                              │

00:00:43 #7460 [Verbose] > │     let v93 : UH1 = v92 ()                                                   │

00:00:43 #7461 [Verbose] > │     let v94 : UH3 = v0 v93                                                   │

00:00:43 #7462 [Verbose] > │     let v136 : UH1 =                                                         │

00:00:43 #7463 [Verbose] > │         match v94 with                                                       │

00:00:43 #7464 [Verbose] > │         | UH3_0(v95, v96, v97, v98, v99, v100, v101, v102, v103, v104) -> (* │

00:00:43 #7465 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7466 [Verbose] > │             match v1 with                                                    │

00:00:43 #7467 [Verbose] > │             | UH1_0(v105, v106, v107, v108, v109, v110, v111, v112, v113,    │

00:00:43 #7468 [Verbose] > │ v114) -> (* StreamCons *)                                                    │

00:00:43 #7469 [Verbose] > │                 let v115 : float = v100 * 2.5E-05                            │

00:00:43 #7470 [Verbose] > │                 let v116 : float = v110 + v115                               │

00:00:43 #7471 [Verbose] > │                 let v117 : float = 2.5E-05 * v97                             │

00:00:43 #7472 [Verbose] > │                 let v118 : float = 2.5E-05 * v98                             │

00:00:43 #7473 [Verbose] > │                 let v119 : float = 2.5E-05 * v99                             │

00:00:43 #7474 [Verbose] > │                 let v120 : float = v107 + v117                               │

00:00:43 #7475 [Verbose] > │                 let v121 : float = v108 + v118                               │

00:00:43 #7476 [Verbose] > │                 let v122 : float = v109 + v119                               │

00:00:43 #7477 [Verbose] > │                 let v123 : float = 2.5E-05 * v101                            │

00:00:43 #7478 [Verbose] > │                 let v124 : float = 2.5E-05 * v102                            │

00:00:43 #7479 [Verbose] > │                 let v125 : float = 2.5E-05 * v103                            │

00:00:43 #7480 [Verbose] > │                 let v126 : float = v111 + v123                               │

00:00:43 #7481 [Verbose] > │                 let v127 : float = v112 + v124                               │

00:00:43 #7482 [Verbose] > │                 let v128 : float = v113 + v125                               │

00:00:43 #7483 [Verbose] > │                 let v129 : (unit -> UH1) = closure135(v114, v104)            │

00:00:43 #7484 [Verbose] > │                 UH1_0(v105, v106, v120, v121, v122, v116, v126, v127, v128,  │

00:00:43 #7485 [Verbose] > │ v129)                                                                        │

00:00:43 #7486 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:43 #7487 [Verbose] > │                 UH1_1                                                        │

00:00:43 #7488 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7489 [Verbose] > │             UH1_1                                                            │

00:00:43 #7490 [Verbose] > │     let v137 : (unit -> UH1) = closure133(v136)                              │

00:00:43 #7491 [Verbose] > │     let v138 : (unit -> UH1) = method3(v136, v137)                           │

00:00:43 #7492 [Verbose] > │     let v139 : UH1 = v138 ()                                                 │

00:00:43 #7493 [Verbose] > │     let v140 : UH3 = v0 v139                                                 │

00:00:43 #7494 [Verbose] > │     let v177 : UH3 =                                                         │

00:00:43 #7495 [Verbose] > │         match v2 with                                                        │

00:00:43 #7496 [Verbose] > │         | UH3_0(v141, v142, v143, v144, v145, v146, v147, v148, v149, v150)  │

00:00:43 #7497 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:43 #7498 [Verbose] > │             match v48 with                                                   │

00:00:43 #7499 [Verbose] > │             | UH3_0(v151, v152, v153, v154, v155, v156, v157, v158, v159,    │

00:00:43 #7500 [Verbose] > │ v160) -> (* StreamCons *)                                                    │

00:00:43 #7501 [Verbose] > │                 let v161 : float = v141 + v151                               │

00:00:43 #7502 [Verbose] > │                 let v162 : float = v142 + v152                               │

00:00:43 #7503 [Verbose] > │                 let v163 : float = v146 + v156                               │

00:00:43 #7504 [Verbose] > │                 let v164 : float = v143 + v153                               │

00:00:43 #7505 [Verbose] > │                 let v165 : float = v144 + v154                               │

00:00:43 #7506 [Verbose] > │                 let v166 : float = v145 + v155                               │

00:00:43 #7507 [Verbose] > │                 let v167 : float = v147 + v157                               │

00:00:43 #7508 [Verbose] > │                 let v168 : float = v148 + v158                               │

00:00:43 #7509 [Verbose] > │                 let v169 : float = v149 + v159                               │

00:00:43 #7510 [Verbose] > │                 let v170 : (unit -> UH3) = closure136(v160, v150)            │

00:00:43 #7511 [Verbose] > │                 UH3_0(v161, v162, v164, v165, v166, v163, v167, v168, v169,  │

00:00:43 #7512 [Verbose] > │ v170)                                                                        │

00:00:43 #7513 [Verbose] > │             | UH3_1 -> (* StreamNil *)                                       │

00:00:43 #7514 [Verbose] > │                 UH3_1                                                        │

00:00:43 #7515 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7516 [Verbose] > │             UH3_1                                                            │

00:00:43 #7517 [Verbose] > │     let v214 : UH3 =                                                         │

00:00:43 #7518 [Verbose] > │         match v177 with                                                      │

00:00:43 #7519 [Verbose] > │         | UH3_0(v178, v179, v180, v181, v182, v183, v184, v185, v186, v187)  │

00:00:43 #7520 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:43 #7521 [Verbose] > │             match v48 with                                                   │

00:00:43 #7522 [Verbose] > │             | UH3_0(v188, v189, v190, v191, v192, v193, v194, v195, v196,    │

00:00:43 #7523 [Verbose] > │ v197) -> (* StreamCons *)                                                    │

00:00:43 #7524 [Verbose] > │                 let v198 : float = v178 + v188                               │

00:00:43 #7525 [Verbose] > │                 let v199 : float = v179 + v189                               │

00:00:43 #7526 [Verbose] > │                 let v200 : float = v183 + v193                               │

00:00:43 #7527 [Verbose] > │                 let v201 : float = v180 + v190                               │

00:00:43 #7528 [Verbose] > │                 let v202 : float = v181 + v191                               │

00:00:43 #7529 [Verbose] > │                 let v203 : float = v182 + v192                               │

00:00:43 #7530 [Verbose] > │                 let v204 : float = v184 + v194                               │

00:00:43 #7531 [Verbose] > │                 let v205 : float = v185 + v195                               │

00:00:43 #7532 [Verbose] > │                 let v206 : float = v186 + v196                               │

00:00:43 #7533 [Verbose] > │                 let v207 : (unit -> UH3) = closure136(v197, v187)            │

00:00:43 #7534 [Verbose] > │                 UH3_0(v198, v199, v201, v202, v203, v200, v204, v205, v206,  │

00:00:43 #7535 [Verbose] > │ v207)                                                                        │

00:00:43 #7536 [Verbose] > │             | UH3_1 -> (* StreamNil *)                                       │

00:00:43 #7537 [Verbose] > │                 UH3_1                                                        │

00:00:43 #7538 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7539 [Verbose] > │             UH3_1                                                            │

00:00:43 #7540 [Verbose] > │     let v251 : UH3 =                                                         │

00:00:43 #7541 [Verbose] > │         match v214 with                                                      │

00:00:43 #7542 [Verbose] > │         | UH3_0(v215, v216, v217, v218, v219, v220, v221, v222, v223, v224)  │

00:00:43 #7543 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:43 #7544 [Verbose] > │             match v94 with                                                   │

00:00:43 #7545 [Verbose] > │             | UH3_0(v225, v226, v227, v228, v229, v230, v231, v232, v233,    │

00:00:43 #7546 [Verbose] > │ v234) -> (* StreamCons *)                                                    │

00:00:43 #7547 [Verbose] > │                 let v235 : float = v215 + v225                               │

00:00:43 #7548 [Verbose] > │                 let v236 : float = v216 + v226                               │

00:00:43 #7549 [Verbose] > │                 let v237 : float = v220 + v230                               │

00:00:43 #7550 [Verbose] > │                 let v238 : float = v217 + v227                               │

00:00:43 #7551 [Verbose] > │                 let v239 : float = v218 + v228                               │

00:00:43 #7552 [Verbose] > │                 let v240 : float = v219 + v229                               │

00:00:43 #7553 [Verbose] > │                 let v241 : float = v221 + v231                               │

00:00:43 #7554 [Verbose] > │                 let v242 : float = v222 + v232                               │

00:00:43 #7555 [Verbose] > │                 let v243 : float = v223 + v233                               │

00:00:43 #7556 [Verbose] > │                 let v244 : (unit -> UH3) = closure136(v234, v224)            │

00:00:43 #7557 [Verbose] > │                 UH3_0(v235, v236, v238, v239, v240, v237, v241, v242, v243,  │

00:00:43 #7558 [Verbose] > │ v244)                                                                        │

00:00:43 #7559 [Verbose] > │             | UH3_1 -> (* StreamNil *)                                       │

00:00:43 #7560 [Verbose] > │                 UH3_1                                                        │

00:00:43 #7561 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7562 [Verbose] > │             UH3_1                                                            │

00:00:43 #7563 [Verbose] > │     let v288 : UH3 =                                                         │

00:00:43 #7564 [Verbose] > │         match v251 with                                                      │

00:00:43 #7565 [Verbose] > │         | UH3_0(v252, v253, v254, v255, v256, v257, v258, v259, v260, v261)  │

00:00:43 #7566 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:43 #7567 [Verbose] > │             match v94 with                                                   │

00:00:43 #7568 [Verbose] > │             | UH3_0(v262, v263, v264, v265, v266, v267, v268, v269, v270,    │

00:00:43 #7569 [Verbose] > │ v271) -> (* StreamCons *)                                                    │

00:00:43 #7570 [Verbose] > │                 let v272 : float = v252 + v262                               │

00:00:43 #7571 [Verbose] > │                 let v273 : float = v253 + v263                               │

00:00:43 #7572 [Verbose] > │                 let v274 : float = v257 + v267                               │

00:00:43 #7573 [Verbose] > │                 let v275 : float = v254 + v264                               │

00:00:43 #7574 [Verbose] > │                 let v276 : float = v255 + v265                               │

00:00:43 #7575 [Verbose] > │                 let v277 : float = v256 + v266                               │

00:00:43 #7576 [Verbose] > │                 let v278 : float = v258 + v268                               │

00:00:43 #7577 [Verbose] > │                 let v279 : float = v259 + v269                               │

00:00:43 #7578 [Verbose] > │                 let v280 : float = v260 + v270                               │

00:00:43 #7579 [Verbose] > │                 let v281 : (unit -> UH3) = closure136(v271, v261)            │

00:00:43 #7580 [Verbose] > │                 UH3_0(v272, v273, v275, v276, v277, v274, v278, v279, v280,  │

00:00:43 #7581 [Verbose] > │ v281)                                                                        │

00:00:43 #7582 [Verbose] > │             | UH3_1 -> (* StreamNil *)                                       │

00:00:43 #7583 [Verbose] > │                 UH3_1                                                        │

00:00:43 #7584 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7585 [Verbose] > │             UH3_1                                                            │

00:00:43 #7586 [Verbose] > │     let v325 : UH3 =                                                         │

00:00:43 #7587 [Verbose] > │         match v288 with                                                      │

00:00:43 #7588 [Verbose] > │         | UH3_0(v289, v290, v291, v292, v293, v294, v295, v296, v297, v298)  │

00:00:43 #7589 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:43 #7590 [Verbose] > │             match v140 with                                                  │

00:00:43 #7591 [Verbose] > │             | UH3_0(v299, v300, v301, v302, v303, v304, v305, v306, v307,    │

00:00:43 #7592 [Verbose] > │ v308) -> (* StreamCons *)                                                    │

00:00:43 #7593 [Verbose] > │                 let v309 : float = v289 + v299                               │

00:00:43 #7594 [Verbose] > │                 let v310 : float = v290 + v300                               │

00:00:43 #7595 [Verbose] > │                 let v311 : float = v294 + v304                               │

00:00:43 #7596 [Verbose] > │                 let v312 : float = v291 + v301                               │

00:00:43 #7597 [Verbose] > │                 let v313 : float = v292 + v302                               │

00:00:43 #7598 [Verbose] > │                 let v314 : float = v293 + v303                               │

00:00:43 #7599 [Verbose] > │                 let v315 : float = v295 + v305                               │

00:00:43 #7600 [Verbose] > │                 let v316 : float = v296 + v306                               │

00:00:43 #7601 [Verbose] > │                 let v317 : float = v297 + v307                               │

00:00:43 #7602 [Verbose] > │                 let v318 : (unit -> UH3) = closure136(v308, v298)            │

00:00:43 #7603 [Verbose] > │                 UH3_0(v309, v310, v312, v313, v314, v311, v315, v316, v317,  │

00:00:43 #7604 [Verbose] > │ v318)                                                                        │

00:00:43 #7605 [Verbose] > │             | UH3_1 -> (* StreamNil *)                                       │

00:00:43 #7606 [Verbose] > │                 UH3_1                                                        │

00:00:43 #7607 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7608 [Verbose] > │             UH3_1                                                            │

00:00:43 #7609 [Verbose] > │     let v367 : UH1 =                                                         │

00:00:43 #7610 [Verbose] > │         match v325 with                                                      │

00:00:43 #7611 [Verbose] > │         | UH3_0(v326, v327, v328, v329, v330, v331, v332, v333, v334, v335)  │

00:00:43 #7612 [Verbose] > │ -> (* StreamCons *)                                                          │

00:00:43 #7613 [Verbose] > │             match v1 with                                                    │

00:00:43 #7614 [Verbose] > │             | UH1_0(v336, v337, v338, v339, v340, v341, v342, v343, v344,    │

00:00:43 #7615 [Verbose] > │ v345) -> (* StreamCons *)                                                    │

00:00:43 #7616 [Verbose] > │                 let v346 : float = v331 * 4.166666666666667E-06              │

00:00:43 #7617 [Verbose] > │                 let v347 : float = v341 + v346                               │

00:00:43 #7618 [Verbose] > │                 let v348 : float = 4.166666666666667E-06 * v328              │

00:00:43 #7619 [Verbose] > │                 let v349 : float = 4.166666666666667E-06 * v329              │

00:00:43 #7620 [Verbose] > │                 let v350 : float = 4.166666666666667E-06 * v330              │

00:00:43 #7621 [Verbose] > │                 let v351 : float = v338 + v348                               │

00:00:43 #7622 [Verbose] > │                 let v352 : float = v339 + v349                               │

00:00:43 #7623 [Verbose] > │                 let v353 : float = v340 + v350                               │

00:00:43 #7624 [Verbose] > │                 let v354 : float = 4.166666666666667E-06 * v332              │

00:00:43 #7625 [Verbose] > │                 let v355 : float = 4.166666666666667E-06 * v333              │

00:00:43 #7626 [Verbose] > │                 let v356 : float = 4.166666666666667E-06 * v334              │

00:00:43 #7627 [Verbose] > │                 let v357 : float = v342 + v354                               │

00:00:43 #7628 [Verbose] > │                 let v358 : float = v343 + v355                               │

00:00:43 #7629 [Verbose] > │                 let v359 : float = v344 + v356                               │

00:00:43 #7630 [Verbose] > │                 let v360 : (unit -> UH1) = closure137(v345, v335)            │

00:00:43 #7631 [Verbose] > │                 UH1_0(v336, v337, v351, v352, v353, v347, v357, v358, v359,  │

00:00:43 #7632 [Verbose] > │ v360)                                                                        │

00:00:43 #7633 [Verbose] > │             | UH1_1 -> (* StreamNil *)                                       │

00:00:43 #7634 [Verbose] > │                 UH1_1                                                        │

00:00:43 #7635 [Verbose] > │         | UH3_1 -> (* StreamNil *)                                           │

00:00:43 #7636 [Verbose] > │             UH1_1                                                            │

00:00:43 #7637 [Verbose] > │     let v368 : (unit -> UH1) = closure133(v367)                              │

00:00:43 #7638 [Verbose] > │     let v369 : (unit -> UH1) = method3(v367, v368)                           │

00:00:43 #7639 [Verbose] > │     let v370 : UH1 = v369 ()                                                 │

00:00:43 #7640 [Verbose] > │     v370                                                                     │

00:00:43 #7641 [Verbose] > │ and closure130 () (v0 : (UH1 -> UH3)) : (UH1 -> UH1) =                       │

00:00:43 #7642 [Verbose] > │     closure131(v0)                                                           │

00:00:43 #7643 [Verbose] > │ and method2 () : ((UH1 -> UH3) -> (UH1 -> UH1)) =                            │

00:00:43 #7644 [Verbose] > │     closure130()                                                             │

00:00:43 #7645 [Verbose] > │ and closure138 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │

00:00:43 #7646 [Verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *   │

00:00:43 #7647 [Verbose] > │ float * float) =                                                             │

00:00:43 #7648 [Verbose] > │     let v9 : float = v2 * v2                                                 │

00:00:43 #7649 [Verbose] > │     let v10 : float = v3 * v3                                                │

00:00:43 #7650 [Verbose] > │     let v11 : float = v9 + v10                                               │

00:00:43 #7651 [Verbose] > │     let v12 : float = v4 * v4                                                │

00:00:43 #7652 [Verbose] > │     let v13 : float = v11 + v12                                              │

00:00:43 #7653 [Verbose] > │     let v14 : float = sqrt v13                                               │

00:00:43 #7654 [Verbose] > │     let v15 : float = -5384.0 * v14                                          │

00:00:43 #7655 [Verbose] > │     let v16 : float = v15 * v2                                               │

00:00:43 #7656 [Verbose] > │     let v17 : float = v15 * v3                                               │

00:00:43 #7657 [Verbose] > │     let v18 : float = v15 * v4                                               │

00:00:43 #7658 [Verbose] > │     let v19 : float = v16 / v14                                              │

00:00:43 #7659 [Verbose] > │     let v20 : float = v17 / v14                                              │

00:00:43 #7660 [Verbose] > │     let v21 : float = v18 / v14                                              │

00:00:43 #7661 [Verbose] > │     struct (v19, v20, v21)                                                   │

00:00:43 #7662 [Verbose] > │ and closure139 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │

00:00:43 #7663 [Verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *   │

00:00:43 #7664 [Verbose] > │ float * float) =                                                             │

00:00:43 #7665 [Verbose] > │     let v9 : float = v2 + -0.65                                              │

00:00:43 #7666 [Verbose] > │     let v10 : float = v9 * v9                                                │

00:00:43 #7667 [Verbose] > │     let v11 : float = v3 * v3                                                │

00:00:43 #7668 [Verbose] > │     let v12 : float = v10 + v11                                              │

00:00:43 #7669 [Verbose] > │     let v13 : float = v4 * v4                                                │

00:00:43 #7670 [Verbose] > │     let v14 : float = v12 + v13                                              │

00:00:43 #7671 [Verbose] > │     let v15 : float = sqrt v14                                               │

00:00:43 #7672 [Verbose] > │     let v16 : float = -5384.0 * v15                                          │

00:00:43 #7673 [Verbose] > │     let v17 : float = v16 * v9                                               │

00:00:43 #7674 [Verbose] > │     let v18 : float = v16 * v3                                               │

00:00:43 #7675 [Verbose] > │     let v19 : float = v16 * v4                                               │

00:00:43 #7676 [Verbose] > │     let v20 : float = v17 / v15                                              │

00:00:43 #7677 [Verbose] > │     let v21 : float = v18 / v15                                              │

00:00:43 #7678 [Verbose] > │     let v22 : float = v19 / v15                                              │

00:00:43 #7679 [Verbose] > │     struct (v20, v21, v22)                                                   │

00:00:43 #7680 [Verbose] > │ and closure141 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float,  │

00:00:43 #7681 [Verbose] > │ v5 : float, v6 : float, v7 : float, v8 : float) struct (v9 : float, v10 :    │

00:00:43 #7682 [Verbose] > │ float, v11 : float, v12 : float, v13 : float, v14 : float, v15 : float, v16  │

00:00:43 #7683 [Verbose] > │ : float, v17 : float) : struct (float * float * float) =                     │

00:00:43 #7684 [Verbose] > │     let v18 : float = -1.0 * v2                                              │

00:00:43 #7685 [Verbose] > │     let v19 : float = -1.0 * v3                                              │

00:00:43 #7686 [Verbose] > │     let v20 : float = -1.0 * v4                                              │

00:00:43 #7687 [Verbose] > │     let v21 : float = v11 + v18                                              │

00:00:43 #7688 [Verbose] > │     let v22 : float = v12 + v19                                              │

00:00:43 #7689 [Verbose] > │     let v23 : float = v13 + v20                                              │

00:00:43 #7690 [Verbose] > │     let v24 : float = v21 * v21                                              │

00:00:43 #7691 [Verbose] > │     let v25 : float = v22 * v22                                              │

00:00:43 #7692 [Verbose] > │     let v26 : float = v24 + v25                                              │

00:00:43 #7693 [Verbose] > │     let v27 : float = v23 * v23                                              │

00:00:43 #7694 [Verbose] > │     let v28 : float = v26 + v27                                              │

00:00:43 #7695 [Verbose] > │     let v29 : float = sqrt v28                                               │

00:00:43 #7696 [Verbose] > │     let v30 : float = -5384.0 * v29                                          │

00:00:43 #7697 [Verbose] > │     let v31 : float = v30 * v21                                              │

00:00:43 #7698 [Verbose] > │     let v32 : float = v30 * v22                                              │

00:00:43 #7699 [Verbose] > │     let v33 : float = v30 * v23                                              │

00:00:43 #7700 [Verbose] > │     let v34 : float = v31 / v29                                              │

00:00:43 #7701 [Verbose] > │     let v35 : float = v32 / v29                                              │

00:00:43 #7702 [Verbose] > │     let v36 : float = v33 / v29                                              │

00:00:43 #7703 [Verbose] > │     struct (v34, v35, v36)                                                   │

00:00:43 #7704 [Verbose] > │ and closure140 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │

00:00:43 #7705 [Verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : (struct (float *  │

00:00:43 #7706 [Verbose] > │ float * float * float * float * float * float * float * float) -> struct     │

00:00:43 #7707 [Verbose] > │ (float * float * float)) =                                                   │

00:00:43 #7708 [Verbose] > │     closure141(v0, v1, v2, v3, v4, v5, v6, v7, v8)                           │

00:00:43 #7709 [Verbose] > │ and method4 () : UH4 =                                                       │

00:00:43 #7710 [Verbose] > │     let v0 : (struct (float * float * float * float * float * float * float  │

00:00:43 #7711 [Verbose] > │ * float * float) -> struct (float * float * float)) = closure138()           │

00:00:43 #7712 [Verbose] > │     let v1 : US1 = US1_0(0, v0)                                              │

00:00:43 #7713 [Verbose] > │     let v2 : (struct (float * float * float * float * float * float * float  │

00:00:43 #7714 [Verbose] > │ * float * float) -> struct (float * float * float)) = closure139()           │

00:00:43 #7715 [Verbose] > │     let v3 : US1 = US1_0(63, v2)                                             │

00:00:43 #7716 [Verbose] > │     let v4 : (struct (float * float * float * float * float * float * float  │

00:00:43 #7717 [Verbose] > │ * float * float) -> (struct (float * float * float * float * float * float * │

00:00:43 #7718 [Verbose] > │ float * float * float) -> struct (float * float * float))) = closure140()    │

00:00:43 #7719 [Verbose] > │     let v5 : US1 = US1_1(0, 1, v4)                                           │

00:00:43 #7720 [Verbose] > │     let v6 : US1 = US1_1(1, 2, v4)                                           │

00:00:43 #7721 [Verbose] > │     let v7 : US1 = US1_1(2, 3, v4)                                           │

00:00:43 #7722 [Verbose] > │     let v8 : US1 = US1_1(3, 4, v4)                                           │

00:00:43 #7723 [Verbose] > │     let v9 : US1 = US1_1(4, 5, v4)                                           │

00:00:43 #7724 [Verbose] > │     let v10 : US1 = US1_1(5, 6, v4)                                          │

00:00:43 #7725 [Verbose] > │     let v11 : US1 = US1_1(6, 7, v4)                                          │

00:00:43 #7726 [Verbose] > │     let v12 : US1 = US1_1(7, 8, v4)                                          │

00:00:43 #7727 [Verbose] > │     let v13 : US1 = US1_1(8, 9, v4)                                          │

00:00:43 #7728 [Verbose] > │     let v14 : US1 = US1_1(9, 10, v4)                                         │

00:00:43 #7729 [Verbose] > │     let v15 : US1 = US1_1(10, 11, v4)                                        │

00:00:43 #7730 [Verbose] > │     let v16 : US1 = US1_1(11, 12, v4)                                        │

00:00:43 #7731 [Verbose] > │     let v17 : US1 = US1_1(12, 13, v4)                                        │

00:00:43 #7732 [Verbose] > │     let v18 : US1 = US1_1(13, 14, v4)                                        │

00:00:43 #7733 [Verbose] > │     let v19 : US1 = US1_1(14, 15, v4)                                        │

00:00:43 #7734 [Verbose] > │     let v20 : US1 = US1_1(15, 16, v4)                                        │

00:00:43 #7735 [Verbose] > │     let v21 : US1 = US1_1(16, 17, v4)                                        │

00:00:43 #7736 [Verbose] > │     let v22 : US1 = US1_1(17, 18, v4)                                        │

00:00:43 #7737 [Verbose] > │     let v23 : US1 = US1_1(18, 19, v4)                                        │

00:00:43 #7738 [Verbose] > │     let v24 : US1 = US1_1(19, 20, v4)                                        │

00:00:43 #7739 [Verbose] > │     let v25 : US1 = US1_1(20, 21, v4)                                        │

00:00:43 #7740 [Verbose] > │     let v26 : US1 = US1_1(21, 22, v4)                                        │

00:00:43 #7741 [Verbose] > │     let v27 : US1 = US1_1(22, 23, v4)                                        │

00:00:43 #7742 [Verbose] > │     let v28 : US1 = US1_1(23, 24, v4)                                        │

00:00:43 #7743 [Verbose] > │     let v29 : US1 = US1_1(24, 25, v4)                                        │

00:00:43 #7744 [Verbose] > │     let v30 : US1 = US1_1(25, 26, v4)                                        │

00:00:43 #7745 [Verbose] > │     let v31 : US1 = US1_1(26, 27, v4)                                        │

00:00:43 #7746 [Verbose] > │     let v32 : US1 = US1_1(27, 28, v4)                                        │

00:00:43 #7747 [Verbose] > │     let v33 : US1 = US1_1(28, 29, v4)                                        │

00:00:43 #7748 [Verbose] > │     let v34 : US1 = US1_1(29, 30, v4)                                        │

00:00:43 #7749 [Verbose] > │     let v35 : US1 = US1_1(30, 31, v4)                                        │

00:00:43 #7750 [Verbose] > │     let v36 : US1 = US1_1(31, 32, v4)                                        │

00:00:43 #7751 [Verbose] > │     let v37 : US1 = US1_1(32, 33, v4)                                        │

00:00:43 #7752 [Verbose] > │     let v38 : US1 = US1_1(33, 34, v4)                                        │

00:00:43 #7753 [Verbose] > │     let v39 : US1 = US1_1(34, 35, v4)                                        │

00:00:43 #7754 [Verbose] > │     let v40 : US1 = US1_1(35, 36, v4)                                        │

00:00:43 #7755 [Verbose] > │     let v41 : US1 = US1_1(36, 37, v4)                                        │

00:00:43 #7756 [Verbose] > │     let v42 : US1 = US1_1(37, 38, v4)                                        │

00:00:43 #7757 [Verbose] > │     let v43 : US1 = US1_1(38, 39, v4)                                        │

00:00:43 #7758 [Verbose] > │     let v44 : US1 = US1_1(39, 40, v4)                                        │

00:00:43 #7759 [Verbose] > │     let v45 : US1 = US1_1(40, 41, v4)                                        │

00:00:43 #7760 [Verbose] > │     let v46 : US1 = US1_1(41, 42, v4)                                        │

00:00:43 #7761 [Verbose] > │     let v47 : US1 = US1_1(42, 43, v4)                                        │

00:00:43 #7762 [Verbose] > │     let v48 : US1 = US1_1(43, 44, v4)                                        │

00:00:43 #7763 [Verbose] > │     let v49 : US1 = US1_1(44, 45, v4)                                        │

00:00:43 #7764 [Verbose] > │     let v50 : US1 = US1_1(45, 46, v4)                                        │

00:00:43 #7765 [Verbose] > │     let v51 : US1 = US1_1(46, 47, v4)                                        │

00:00:43 #7766 [Verbose] > │     let v52 : US1 = US1_1(47, 48, v4)                                        │

00:00:43 #7767 [Verbose] > │     let v53 : US1 = US1_1(48, 49, v4)                                        │

00:00:43 #7768 [Verbose] > │     let v54 : US1 = US1_1(49, 50, v4)                                        │

00:00:43 #7769 [Verbose] > │     let v55 : US1 = US1_1(50, 51, v4)                                        │

00:00:43 #7770 [Verbose] > │     let v56 : US1 = US1_1(51, 52, v4)                                        │

00:00:43 #7771 [Verbose] > │     let v57 : US1 = US1_1(52, 53, v4)                                        │

00:00:43 #7772 [Verbose] > │     let v58 : US1 = US1_1(53, 54, v4)                                        │

00:00:43 #7773 [Verbose] > │     let v59 : US1 = US1_1(54, 55, v4)                                        │

00:00:43 #7774 [Verbose] > │     let v60 : US1 = US1_1(55, 56, v4)                                        │

00:00:43 #7775 [Verbose] > │     let v61 : US1 = US1_1(56, 57, v4)                                        │

00:00:43 #7776 [Verbose] > │     let v62 : US1 = US1_1(57, 58, v4)                                        │

00:00:43 #7777 [Verbose] > │     let v63 : US1 = US1_1(58, 59, v4)                                        │

00:00:43 #7778 [Verbose] > │     let v64 : US1 = US1_1(59, 60, v4)                                        │

00:00:43 #7779 [Verbose] > │     let v65 : UH4 = UH4_1                                                    │

00:00:43 #7780 [Verbose] > │     let v66 : UH4 = UH4_0(v64, v65)                                          │

00:00:43 #7781 [Verbose] > │     let v67 : UH4 = UH4_0(v63, v66)                                          │

00:00:43 #7782 [Verbose] > │     let v68 : UH4 = UH4_0(v62, v67)                                          │

00:00:43 #7783 [Verbose] > │     let v69 : UH4 = UH4_0(v61, v68)                                          │

00:00:43 #7784 [Verbose] > │     let v70 : UH4 = UH4_0(v60, v69)                                          │

00:00:43 #7785 [Verbose] > │     let v71 : UH4 = UH4_0(v59, v70)                                          │

00:00:43 #7786 [Verbose] > │     let v72 : UH4 = UH4_0(v58, v71)                                          │

00:00:43 #7787 [Verbose] > │     let v73 : UH4 = UH4_0(v57, v72)                                          │

00:00:43 #7788 [Verbose] > │     let v74 : UH4 = UH4_0(v56, v73)                                          │

00:00:43 #7789 [Verbose] > │     let v75 : UH4 = UH4_0(v55, v74)                                          │

00:00:43 #7790 [Verbose] > │     let v76 : UH4 = UH4_0(v54, v75)                                          │

00:00:43 #7791 [Verbose] > │     let v77 : UH4 = UH4_0(v53, v76)                                          │

00:00:43 #7792 [Verbose] > │     let v78 : UH4 = UH4_0(v52, v77)                                          │

00:00:43 #7793 [Verbose] > │     let v79 : UH4 = UH4_0(v51, v78)                                          │

00:00:43 #7794 [Verbose] > │     let v80 : UH4 = UH4_0(v50, v79)                                          │

00:00:43 #7795 [Verbose] > │     let v81 : UH4 = UH4_0(v49, v80)                                          │

00:00:43 #7796 [Verbose] > │     let v82 : UH4 = UH4_0(v48, v81)                                          │

00:00:43 #7797 [Verbose] > │     let v83 : UH4 = UH4_0(v47, v82)                                          │

00:00:43 #7798 [Verbose] > │     let v84 : UH4 = UH4_0(v46, v83)                                          │

00:00:43 #7799 [Verbose] > │     let v85 : UH4 = UH4_0(v45, v84)                                          │

00:00:43 #7800 [Verbose] > │     let v86 : UH4 = UH4_0(v44, v85)                                          │

00:00:43 #7801 [Verbose] > │     let v87 : UH4 = UH4_0(v43, v86)                                          │

00:00:43 #7802 [Verbose] > │     let v88 : UH4 = UH4_0(v42, v87)                                          │

00:00:43 #7803 [Verbose] > │     let v89 : UH4 = UH4_0(v41, v88)                                          │

00:00:43 #7804 [Verbose] > │     let v90 : UH4 = UH4_0(v40, v89)                                          │

00:00:43 #7805 [Verbose] > │     let v91 : UH4 = UH4_0(v39, v90)                                          │

00:00:43 #7806 [Verbose] > │     let v92 : UH4 = UH4_0(v38, v91)                                          │

00:00:43 #7807 [Verbose] > │     let v93 : UH4 = UH4_0(v37, v92)                                          │

00:00:43 #7808 [Verbose] > │     let v94 : UH4 = UH4_0(v36, v93)                                          │

00:00:43 #7809 [Verbose] > │     let v95 : UH4 = UH4_0(v35, v94)                                          │

00:00:43 #7810 [Verbose] > │     let v96 : UH4 = UH4_0(v34, v95)                                          │

00:00:43 #7811 [Verbose] > │     let v97 : UH4 = UH4_0(v33, v96)                                          │

00:00:43 #7812 [Verbose] > │     let v98 : UH4 = UH4_0(v32, v97)                                          │

00:00:43 #7813 [Verbose] > │     let v99 : UH4 = UH4_0(v31, v98)                                          │

00:00:43 #7814 [Verbose] > │     let v100 : UH4 = UH4_0(v30, v99)                                         │

00:00:43 #7815 [Verbose] > │     let v101 : UH4 = UH4_0(v29, v100)                                        │

00:00:43 #7816 [Verbose] > │     let v102 : UH4 = UH4_0(v28, v101)                                        │

00:00:43 #7817 [Verbose] > │     let v103 : UH4 = UH4_0(v27, v102)                                        │

00:00:43 #7818 [Verbose] > │     let v104 : UH4 = UH4_0(v26, v103)                                        │

00:00:43 #7819 [Verbose] > │     let v105 : UH4 = UH4_0(v25, v104)                                        │

00:00:43 #7820 [Verbose] > │     let v106 : UH4 = UH4_0(v24, v105)                                        │

00:00:43 #7821 [Verbose] > │     let v107 : UH4 = UH4_0(v23, v106)                                        │

00:00:43 #7822 [Verbose] > │     let v108 : UH4 = UH4_0(v22, v107)                                        │

00:00:43 #7823 [Verbose] > │     let v109 : UH4 = UH4_0(v21, v108)                                        │

00:00:43 #7824 [Verbose] > │     let v110 : UH4 = UH4_0(v20, v109)                                        │

00:00:43 #7825 [Verbose] > │     let v111 : UH4 = UH4_0(v19, v110)                                        │

00:00:43 #7826 [Verbose] > │     let v112 : UH4 = UH4_0(v18, v111)                                        │

00:00:43 #7827 [Verbose] > │     let v113 : UH4 = UH4_0(v17, v112)                                        │

00:00:43 #7828 [Verbose] > │     let v114 : UH4 = UH4_0(v16, v113)                                        │

00:00:43 #7829 [Verbose] > │     let v115 : UH4 = UH4_0(v15, v114)                                        │

00:00:43 #7830 [Verbose] > │     let v116 : UH4 = UH4_0(v14, v115)                                        │

00:00:43 #7831 [Verbose] > │     let v117 : UH4 = UH4_0(v13, v116)                                        │

00:00:43 #7832 [Verbose] > │     let v118 : UH4 = UH4_0(v12, v117)                                        │

00:00:43 #7833 [Verbose] > │     let v119 : UH4 = UH4_0(v11, v118)                                        │

00:00:43 #7834 [Verbose] > │     let v120 : UH4 = UH4_0(v10, v119)                                        │

00:00:43 #7835 [Verbose] > │     let v121 : UH4 = UH4_0(v9, v120)                                         │

00:00:43 #7836 [Verbose] > │     let v122 : UH4 = UH4_0(v8, v121)                                         │

00:00:43 #7837 [Verbose] > │     let v123 : UH4 = UH4_0(v7, v122)                                         │

00:00:43 #7838 [Verbose] > │     let v124 : UH4 = UH4_0(v6, v123)                                         │

00:00:43 #7839 [Verbose] > │     let v125 : UH4 = UH4_0(v5, v124)                                         │

00:00:43 #7840 [Verbose] > │     let v126 : UH4 = UH4_0(v3, v125)                                         │

00:00:43 #7841 [Verbose] > │     UH4_0(v1, v126)                                                          │

00:00:43 #7842 [Verbose] > │ and closure143 (v0 : UH5) () : UH5 =                                         │

00:00:43 #7843 [Verbose] > │     v0                                                                       │

00:00:43 #7844 [Verbose] > │ and method5 (v0 : UH1, v1 : UH5, v2 : int32) : struct (UH5 * int32) =        │

00:00:43 #7845 [Verbose] > │     match v0 with                                                            │

00:00:43 #7846 [Verbose] > │     | UH1_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons *)   │

00:00:43 #7847 [Verbose] > │         let v13 : int32 = v2 + 1                                             │

00:00:43 #7848 [Verbose] > │         let v14 : UH1 = v12 ()                                               │

00:00:43 #7849 [Verbose] > │         let v15 : (unit -> UH5) = closure143(v1)                             │

00:00:43 #7850 [Verbose] > │         let v16 : UH5 = UH5_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v15) │

00:00:43 #7851 [Verbose] > │         method5(v14, v16, v13)                                               │

00:00:43 #7852 [Verbose] > │     | UH1_1 -> (* StreamNil *)                                               │

00:00:43 #7853 [Verbose] > │         struct (v1, v2)                                                      │

00:00:43 #7854 [Verbose] > │ and closure144 (v0 : UH5) () : UH5 =                                         │

00:00:43 #7855 [Verbose] > │     v0                                                                       │

00:00:43 #7856 [Verbose] > │ and method6 (v0 : UH5, v1 : UH5) : UH5 =                                     │

00:00:43 #7857 [Verbose] > │     match v0 with                                                            │

00:00:43 #7858 [Verbose] > │     | UH5_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) -> (* StreamCons  │

00:00:43 #7859 [Verbose] > │ *)                                                                           │

00:00:43 #7860 [Verbose] > │         let v13 : UH5 = v12 ()                                               │

00:00:43 #7861 [Verbose] > │         let v14 : (unit -> UH5) = closure144(v1)                             │

00:00:43 #7862 [Verbose] > │         let v15 : UH5 = UH5_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v14) │

00:00:43 #7863 [Verbose] > │         method6(v13, v15)                                                    │

00:00:43 #7864 [Verbose] > │     | UH5_1 -> (* StreamNil *)                                               │

00:00:43 #7865 [Verbose] > │         v1                                                                   │

00:00:43 #7866 [Verbose] > │ and closure145 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │

00:00:43 #7867 [Verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *   │

00:00:43 #7868 [Verbose] > │ float * float) =                                                             │

00:00:43 #7869 [Verbose] > │     struct (0.0, 0.0, 0.0)                                                   │

00:00:43 #7870 [Verbose] > │ and method9 (v0 : int32, v1 : UH1) : US3 =                                   │

00:00:43 #7871 [Verbose] > │     match v1 with                                                            │

00:00:43 #7872 [Verbose] > │     | UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *)    │

00:00:43 #7873 [Verbose] > │         let v12 : bool = v0 <= 0                                             │

00:00:43 #7874 [Verbose] > │         if v12 then                                                          │

00:00:43 #7875 [Verbose] > │             US3_1(v2, v3, v4, v5, v6, v7, v8, v9, v10)                       │

00:00:43 #7876 [Verbose] > │         else                                                                 │

00:00:43 #7877 [Verbose] > │             let v14 : int32 = v0 - 1                                         │

00:00:43 #7878 [Verbose] > │             let v15 : UH1 = v11 ()                                           │

00:00:43 #7879 [Verbose] > │             method9(v14, v15)                                                │

00:00:43 #7880 [Verbose] > │     | UH1_1 -> (* StreamNil *)                                               │

00:00:43 #7881 [Verbose] > │         US3_0                                                                │

00:00:43 #7882 [Verbose] > │ and closure146 () struct (v0 : float, v1 : float, v2 : float, v3 : float, v4 │

00:00:43 #7883 [Verbose] > │ : float, v5 : float, v6 : float, v7 : float, v8 : float) : struct (float *   │

00:00:43 #7884 [Verbose] > │ float * float) =                                                             │

00:00:43 #7885 [Verbose] > │     struct (0.0, 0.0, 0.0)                                                   │

00:00:43 #7886 [Verbose] > │ and method8 (v0 : int32, v1 : UH1, v2 : UH4, v3 : UH6) : UH6 =               │

00:00:43 #7887 [Verbose] > │     match v2 with                                                            │

00:00:43 #7888 [Verbose] > │     | UH4_0(v4, v5) -> (* Cons *)                                            │

00:00:43 #7889 [Verbose] > │         let v6 : UH6 = method8(v0, v1, v5, v3)                               │

00:00:43 #7890 [Verbose] > │         let v55 : (struct (float * float * float * float * float * float *   │

00:00:43 #7891 [Verbose] > │ float * float * float) -> struct (float * float * float)) =                  │

00:00:43 #7892 [Verbose] > │             match v4 with                                                    │

00:00:43 #7893 [Verbose] > │             | US1_0(v7, v8) -> (* ExternalForce *)                           │

00:00:43 #7894 [Verbose] > │                 let v9 : bool = v0 = v7                                      │

00:00:43 #7895 [Verbose] > │                 if v9 then                                                   │

00:00:43 #7896 [Verbose] > │                     v8                                                       │

00:00:43 #7897 [Verbose] > │                 else                                                         │

00:00:43 #7898 [Verbose] > │                     closure145()                                             │

00:00:43 #7899 [Verbose] > │             | US1_1(v12, v13, v14) -> (* InternalForce *)                    │

00:00:43 #7900 [Verbose] > │                 let v15 : bool = v0 = v12                                    │

00:00:43 #7901 [Verbose] > │                 let v49 : US2 =                                              │

00:00:43 #7902 [Verbose] > │                     if v15 then                                              │

00:00:43 #7903 [Verbose] > │                         let v16 : US3 = method9(v13, v1)                     │

00:00:43 #7904 [Verbose] > │                         match v16 with                                       │

00:00:43 #7905 [Verbose] > │                         | US3_0 -> (* None *)                                │

00:00:43 #7906 [Verbose] > │                             US2_0                                            │

00:00:43 #7907 [Verbose] > │                         | US3_1(v17, v18, v19, v20, v21, v22, v23, v24, v25) │

00:00:43 #7908 [Verbose] > │ -> (* Some *)                                                                │

00:00:43 #7909 [Verbose] > │                             let v26 : (struct (float * float * float * float │

00:00:43 #7910 [Verbose] > │ * float * float * float * float * float) -> struct (float * float * float))  │

00:00:43 #7911 [Verbose] > │ = v14 struct (v17, v18, v19, v20, v21, v22, v23, v24, v25)                   │

00:00:43 #7912 [Verbose] > │                             US2_1(v26)                                       │

00:00:43 #7913 [Verbose] > │                     else                                                     │

00:00:43 #7914 [Verbose] > │                         let v31 : bool = v0 = v13                            │

00:00:43 #7915 [Verbose] > │                         if v31 then                                          │

00:00:43 #7916 [Verbose] > │                             let v32 : US3 = method9(v12, v1)                 │

00:00:43 #7917 [Verbose] > │                             match v32 with                                   │

00:00:43 #7918 [Verbose] > │                             | US3_0 -> (* None *)                            │

00:00:43 #7919 [Verbose] > │                                 US2_0                                        │

00:00:43 #7920 [Verbose] > │                             | US3_1(v33, v34, v35, v36, v37, v38, v39, v40,  │

00:00:43 #7921 [Verbose] > │ v41) -> (* Some *)                                                           │

00:00:43 #7922 [Verbose] > │                                 let v42 : (struct (float * float * float *   │

00:00:43 #7923 [Verbose] > │ float * float * float * float * float * float) -> struct (float * float *    │

00:00:43 #7924 [Verbose] > │ float)) = v14 struct (v33, v34, v35, v36, v37, v38, v39, v40, v41)           │

00:00:43 #7925 [Verbose] > │                                 US2_1(v42)                                   │

00:00:43 #7926 [Verbose] > │                         else                                                 │

00:00:43 #7927 [Verbose] > │                             US2_0                                            │

00:00:43 #7928 [Verbose] > │                 match v49 with                                               │

00:00:43 #7929 [Verbose] > │                 | US2_0 -> (* None *)                                        │

00:00:43 #7930 [Verbose] > │                     closure146()                                             │

00:00:43 #7931 [Verbose] > │                 | US2_1(v50) -> (* Some *)                                   │

00:00:43 #7932 [Verbose] > │                     v50                                                      │

00:00:43 #7933 [Verbose] > │         UH6_0(v55, v6)                                                       │

00:00:43 #7934 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:43 #7935 [Verbose] > │         v3                                                                   │

00:00:43 #7936 [Verbose] > │ and method10 (v0 : float, v1 : float, v2 : float, v3 : float, v4 : float, v5 │

00:00:43 #7937 [Verbose] > │ : float, v6 : float, v7 : float, v8 : float, v9 : UH6, v10 : UH7) : UH7 =    │

00:00:43 #7938 [Verbose] > │     match v9 with                                                            │

00:00:43 #7939 [Verbose] > │     | UH6_0(v11, v12) -> (* Cons *)                                          │

00:00:43 #7940 [Verbose] > │         let v13 : UH7 = method10(v0, v1, v2, v3, v4, v5, v6, v7, v8, v12,    │

00:00:43 #7941 [Verbose] > │ v10)                                                                         │

00:00:43 #7942 [Verbose] > │         let struct (v14 : float, v15 : float, v16 : float) = v11 struct (v0, │

00:00:43 #7943 [Verbose] > │ v1, v2, v3, v4, v5, v6, v7, v8)                                              │

00:00:43 #7944 [Verbose] > │         UH7_0(v14, v15, v16, v13)                                            │

00:00:43 #7945 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:43 #7946 [Verbose] > │         v10                                                                  │

00:00:43 #7947 [Verbose] > │ and method11 (v0 : UH7, v1 : float, v2 : float, v3 : float) : struct (float  │

00:00:43 #7948 [Verbose] > │ * float * float) =                                                           │

00:00:43 #7949 [Verbose] > │     match v0 with                                                            │

00:00:43 #7950 [Verbose] > │     | UH7_0(v4, v5, v6, v7) -> (* Cons *)                                    │

00:00:43 #7951 [Verbose] > │         let v8 : float = v1 + v4                                             │

00:00:43 #7952 [Verbose] > │         let v9 : float = v2 + v5                                             │

00:00:43 #7953 [Verbose] > │         let v10 : float = v3 + v6                                            │

00:00:43 #7954 [Verbose] > │         method11(v7, v8, v9, v10)                                            │

00:00:43 #7955 [Verbose] > │     | UH7_1 -> (* Nil *)                                                     │

00:00:43 #7956 [Verbose] > │         struct (v1, v2, v3)                                                  │

00:00:43 #7957 [Verbose] > │ and closure147 (v0 : UH3) () : UH3 =                                         │

00:00:43 #7958 [Verbose] > │     v0                                                                       │

00:00:43 #7959 [Verbose] > │ and method7 (v0 : UH4, v1 : UH1, v2 : UH5, v3 : UH3) : UH3 =                 │

00:00:43 #7960 [Verbose] > │     match v2 with                                                            │

00:00:43 #7961 [Verbose] > │     | UH5_0(v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) -> (*           │

00:00:43 #7962 [Verbose] > │ StreamCons *)                                                                │

00:00:43 #7963 [Verbose] > │         let v15 : UH5 = v14 ()                                               │

00:00:43 #7964 [Verbose] > │         let v16 : UH3 = method7(v0, v1, v15, v3)                             │

00:00:43 #7965 [Verbose] > │         let v17 : UH6 = UH6_1                                                │

00:00:43 #7966 [Verbose] > │         let v18 : UH6 = method8(v4, v1, v0, v17)                             │

00:00:43 #7967 [Verbose] > │         let v19 : UH7 = UH7_1                                                │

00:00:43 #7968 [Verbose] > │         let v20 : UH7 = method10(v5, v6, v7, v8, v9, v10, v11, v12, v13,     │

00:00:43 #7969 [Verbose] > │ v18, v19)                                                                    │

00:00:43 #7970 [Verbose] > │         let v21 : float = 0.0                                                │

00:00:43 #7971 [Verbose] > │         let v22 : float = 0.0                                                │

00:00:43 #7972 [Verbose] > │         let v23 : float = 0.0                                                │

00:00:43 #7973 [Verbose] > │         let struct (v24 : float, v25 : float, v26 : float) = method11(v20,   │

00:00:43 #7974 [Verbose] > │ v21, v22, v23)                                                               │

00:00:43 #7975 [Verbose] > │         let v27 : float = v24 / v6                                           │

00:00:43 #7976 [Verbose] > │         let v28 : float = v25 / v6                                           │

00:00:43 #7977 [Verbose] > │         let v29 : float = v26 / v6                                           │

00:00:43 #7978 [Verbose] > │         let v30 : (unit -> UH3) = closure147(v16)                            │

00:00:43 #7979 [Verbose] > │         UH3_0(0.0, 0.0, v11, v12, v13, 1.0, v27, v28, v29, v30)              │

00:00:43 #7980 [Verbose] > │     | UH5_1 -> (* StreamNil *)                                               │

00:00:43 #7981 [Verbose] > │         v3                                                                   │

00:00:43 #7982 [Verbose] > │ and closure142 (v0 : UH4) (v1 : UH1) : UH3 =                                 │

00:00:43 #7983 [Verbose] > │     let v2 : UH5 = UH5_1                                                     │

00:00:43 #7984 [Verbose] > │     let v3 : int32 = 0                                                       │

00:00:43 #7985 [Verbose] > │     let struct (v4 : UH5, v5 : int32) = method5(v1, v2, v3)                  │

00:00:43 #7986 [Verbose] > │     let v6 : UH5 = UH5_1                                                     │

00:00:43 #7987 [Verbose] > │     let v7 : UH5 = method6(v4, v6)                                           │

00:00:43 #7988 [Verbose] > │     let v8 : UH3 = UH3_1                                                     │

00:00:43 #7989 [Verbose] > │     let v9 : UH3 = method7(v0, v1, v7, v8)                                   │

00:00:43 #7990 [Verbose] > │     v9                                                                       │

00:00:43 #7991 [Verbose] > │ and closure148 (v0 : (UH1 -> UH1), v1 : UH1, v2 : UH1) () : UH8 =            │

00:00:43 #7992 [Verbose] > │     let v3 : UH1 = v0 v2                                                     │

00:00:43 #7993 [Verbose] > │     let v4 : (unit -> UH8) = closure148(v0, v1, v3)                          │

00:00:43 #7994 [Verbose] > │     UH8_0(v2, v4)                                                            │

00:00:43 #7995 [Verbose] > │ and method12 (v0 : float, v1 : UH8) : US4 =                                  │

00:00:43 #7996 [Verbose] > │     match v1 with                                                            │

00:00:43 #7997 [Verbose] > │     | UH8_0(v2, v3) -> (* StreamCons *)                                      │

00:00:43 #7998 [Verbose] > │         let v4 : bool = v0 <= 0.0                                            │

00:00:43 #7999 [Verbose] > │         if v4 then                                                           │

00:00:43 #8000 [Verbose] > │             US4_1(v2)                                                        │

00:00:43 #8001 [Verbose] > │         else                                                                 │

00:00:43 #8002 [Verbose] > │             let v6 : float = v0 - 1.0                                        │

00:00:43 #8003 [Verbose] > │             let v7 : UH8 = v3 ()                                             │

00:00:43 #8004 [Verbose] > │             method12(v6, v7)                                                 │

00:00:43 #8005 [Verbose] > │     | UH8_1 -> (* StreamNil *)                                               │

00:00:43 #8006 [Verbose] > │         US4_0                                                                │

00:00:43 #8007 [Verbose] > │ and closure149 (v0 : UH9) () : UH9 =                                         │

00:00:44 #8008 [Verbose] > │     v0                                                                       │

00:00:44 #8009 [Verbose] > │ and method13 (v0 : UH1, v1 : UH9) : UH9 =                                    │

00:00:44 #8010 [Verbose] > │     match v0 with                                                            │

00:00:44 #8011 [Verbose] > │     | UH1_0(v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) -> (* StreamCons *)    │

00:00:44 #8012 [Verbose] > │         let v12 : UH1 = v11 ()                                               │

00:00:44 #8013 [Verbose] > │         let v13 : UH9 = method13(v12, v1)                                    │

00:00:44 #8014 [Verbose] > │         let v14 : (unit -> UH9) = closure149(v13)                            │

00:00:44 #8015 [Verbose] > │         UH9_0(v4, v5, v6, v14)                                               │

00:00:44 #8016 [Verbose] > │     | UH1_1 -> (* StreamNil *)                                               │

00:00:44 #8017 [Verbose] > │         v1                                                                   │

00:00:44 #8018 [Verbose] > │ and method14 (v0 : UH9, v1 : UH7) : UH7 =                                    │

00:00:44 #8019 [Verbose] > │     match v0 with                                                            │

00:00:44 #8020 [Verbose] > │     | UH9_0(v2, v3, v4, v5) -> (* StreamCons *)                              │

00:00:44 #8021 [Verbose] > │         let v6 : UH9 = v5 ()                                                 │

00:00:44 #8022 [Verbose] > │         let v7 : UH7 = method14(v6, v1)                                      │

00:00:44 #8023 [Verbose] > │         UH7_0(v2, v3, v4, v7)                                                │

00:00:44 #8024 [Verbose] > │     | UH9_1 -> (* StreamNil *)                                               │

00:00:44 #8025 [Verbose] > │         v1                                                                   │

00:00:44 #8026 [Verbose] > │ and method15 (v0 : UH7, v1 : UH7) : UH7 =                                    │

00:00:44 #8027 [Verbose] > │     match v0 with                                                            │

00:00:44 #8028 [Verbose] > │     | UH7_0(v2, v3, v4, v5) -> (* Cons *)                                    │

00:00:44 #8029 [Verbose] > │         let v6 : UH7 = method15(v5, v1)                                      │

00:00:44 #8030 [Verbose] > │         UH7_0(v2, v3, v4, v6)                                                │

00:00:44 #8031 [Verbose] > │     | UH7_1 -> (* Nil *)                                                     │

00:00:44 #8032 [Verbose] > │         v1                                                                   │

00:00:44 #8033 [Verbose] > │ and method16 (v0 : UH7, v1 : UH10) : UH10 =                                  │

00:00:44 #8034 [Verbose] > │     match v0 with                                                            │

00:00:44 #8035 [Verbose] > │     | UH7_0(v2, v3, v4, v5) -> (* Cons *)                                    │

00:00:44 #8036 [Verbose] > │         let v6 : UH10 = method16(v5, v1)                                     │

00:00:44 #8037 [Verbose] > │         UH10_0(v2, v3, v6)                                                   │

00:00:44 #8038 [Verbose] > │     | UH7_1 -> (* Nil *)                                                     │

00:00:44 #8039 [Verbose] > │         v1                                                                   │

00:00:44 #8040 [Verbose] > │ and closure150 (v0 : UH11) () : UH11 =                                       │

00:00:44 #8041 [Verbose] > │     v0                                                                       │

00:00:44 #8042 [Verbose] > │ and method17 (v0 : UH10, v1 : UH11) : UH11 =                                 │

00:00:44 #8043 [Verbose] > │     match v0 with                                                            │

00:00:44 #8044 [Verbose] > │     | UH10_0(v2, v3, v4) -> (* Cons *)                                       │

00:00:44 #8045 [Verbose] > │         let v5 : UH11 = method17(v4, v1)                                     │

00:00:44 #8046 [Verbose] > │         let v6 : (unit -> UH11) = closure150(v5)                             │

00:00:44 #8047 [Verbose] > │         UH11_0(v2, v3, v6)                                                   │

00:00:44 #8048 [Verbose] > │     | UH10_1 -> (* Nil *)                                                    │

00:00:44 #8049 [Verbose] > │         v1                                                                   │

00:00:44 #8050 [Verbose] > │ and closure151 (v0 : UH0) () : UH0 =                                         │

00:00:44 #8051 [Verbose] > │     v0                                                                       │

00:00:44 #8052 [Verbose] > │ and closure152 (v0 : UH0) () : UH0 =                                         │

00:00:44 #8053 [Verbose] > │     v0                                                                       │

00:00:44 #8054 [Verbose] > │ and method18 (v0 : UH11) : struct (UH0 * UH0) =                              │

00:00:44 #8055 [Verbose] > │     match v0 with                                                            │

00:00:44 #8056 [Verbose] > │     | UH11_0(v1, v2, v3) -> (* StreamCons *)                                 │

00:00:44 #8057 [Verbose] > │         let v4 : UH11 = v3 ()                                                │

00:00:44 #8058 [Verbose] > │         let struct (v5 : UH0, v6 : UH0) = method18(v4)                       │

00:00:44 #8059 [Verbose] > │         let v7 : (unit -> UH0) = closure151(v5)                              │

00:00:44 #8060 [Verbose] > │         let v8 : UH0 = UH0_0(v1, v7)                                         │

00:00:44 #8061 [Verbose] > │         let v9 : (unit -> UH0) = closure152(v6)                              │

00:00:44 #8062 [Verbose] > │         let v10 : UH0 = UH0_0(v2, v9)                                        │

00:00:44 #8063 [Verbose] > │         struct (v8, v10)                                                     │

00:00:44 #8064 [Verbose] > │     | UH11_1 -> (* StreamNil *)                                              │

00:00:44 #8065 [Verbose] > │         let v11 : UH0 = UH0_1                                                │

00:00:44 #8066 [Verbose] > │         let v12 : UH0 = UH0_1                                                │

00:00:44 #8067 [Verbose] > │         struct (v11, v12)                                                    │

00:00:44 #8068 [Verbose] > │ and method19 (v0 : UH0, v1 : UH12) : UH12 =                                  │

00:00:44 #8069 [Verbose] > │     match v0 with                                                            │

00:00:44 #8070 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:44 #8071 [Verbose] > │         let v4 : UH0 = v3 ()                                                 │

00:00:44 #8072 [Verbose] > │         let v5 : UH12 = method19(v4, v1)                                     │

00:00:44 #8073 [Verbose] > │         UH12_0(v2, v5)                                                       │

00:00:44 #8074 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:44 #8075 [Verbose] > │         v1                                                                   │

00:00:44 #8076 [Verbose] > │ and method21 (v0 : UH12, v1 : int32) : int32 =                               │

00:00:44 #8077 [Verbose] > │     match v0 with                                                            │

00:00:44 #8078 [Verbose] > │     | UH12_0(v2, v3) -> (* Cons *)                                           │

00:00:44 #8079 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:44 #8080 [Verbose] > │         method21(v3, v4)                                                     │

00:00:44 #8081 [Verbose] > │     | UH12_1 -> (* Nil *)                                                    │

00:00:44 #8082 [Verbose] > │         v1                                                                   │

00:00:44 #8083 [Verbose] > │ and method22 (v0 : (float []), v1 : UH12, v2 : int32) : int32 =              │

00:00:44 #8084 [Verbose] > │     match v1 with                                                            │

00:00:44 #8085 [Verbose] > │     | UH12_0(v3, v4) -> (* Cons *)                                           │

00:00:44 #8086 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:44 #8087 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:44 #8088 [Verbose] > │         method22(v0, v4, v5)                                                 │

00:00:44 #8089 [Verbose] > │     | UH12_1 -> (* Nil *)                                                    │

00:00:44 #8090 [Verbose] > │         v2                                                                   │

00:00:44 #8091 [Verbose] > │ and method20 (v0 : UH12) : (float []) =                                      │

00:00:44 #8092 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:44 #8093 [Verbose] > │     let v2 : int32 = method21(v0, v1)                                        │

00:00:44 #8094 [Verbose] > │     let v3 : (float []) = Array.zeroCreate<float> (v2)                       │

00:00:44 #8095 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:44 #8096 [Verbose] > │     let v5 : int32 = method22(v3, v0, v4)                                    │

00:00:44 #8097 [Verbose] > │     v3                                                                       │

00:00:44 #8098 [Verbose] > │ and closure153 (v0 : UH2) () : UH2 =                                         │

00:00:44 #8099 [Verbose] > │     v0                                                                       │

00:00:44 #8100 [Verbose] > │ and method1 (v0 : UH1, v1 : UH0, v2 : UH2) : UH2 =                           │

00:00:44 #8101 [Verbose] > │     match v1 with                                                            │

00:00:44 #8102 [Verbose] > │     | UH0_0(v3, v4) -> (* StreamCons *)                                      │

00:00:44 #8103 [Verbose] > │         let v5 : UH0 = v4 ()                                                 │

00:00:44 #8104 [Verbose] > │         let v6 : UH2 = method1(v0, v5, v2)                                   │

00:00:44 #8105 [Verbose] > │         let v7 : ((UH1 -> UH3) -> (UH1 -> UH1)) = method2()                  │

00:00:44 #8106 [Verbose] > │         let v8 : UH4 = method4()                                             │

00:00:44 #8107 [Verbose] > │         let v9 : (UH1 -> UH3) = closure142(v8)                               │

00:00:44 #8108 [Verbose] > │         let v10 : (UH1 -> UH1) = v7 v9                                       │

00:00:44 #8109 [Verbose] > │         let v11 : UH1 = v10 v0                                               │

00:00:44 #8110 [Verbose] > │         let v12 : (unit -> UH8) = closure148(v10, v0, v11)                   │

00:00:44 #8111 [Verbose] > │         let v13 : UH8 = UH8_0(v0, v12)                                       │

00:00:44 #8112 [Verbose] > │         let v14 : US4 = method12(v3, v13)                                    │

00:00:44 #8113 [Verbose] > │         let v18 : UH1 =                                                      │

00:00:44 #8114 [Verbose] > │             match v14 with                                                   │

00:00:44 #8115 [Verbose] > │             | US4_0 -> (* None *)                                            │

00:00:44 #8116 [Verbose] > │                 failwith<UH1> "Option does not have a value."                │

00:00:44 #8117 [Verbose] > │             | US4_1(v15) -> (* Some *)                                       │

00:00:44 #8118 [Verbose] > │                 v15                                                          │

00:00:44 #8119 [Verbose] > │         let v19 : UH9 = UH9_1                                                │

00:00:44 #8120 [Verbose] > │         let v20 : UH9 = method13(v18, v19)                                   │

00:00:44 #8121 [Verbose] > │         let v21 : UH7 = UH7_1                                                │

00:00:44 #8122 [Verbose] > │         let v22 : UH7 = method14(v20, v21)                                   │

00:00:44 #8123 [Verbose] > │         let v23 : float = 0.65                                               │

00:00:44 #8124 [Verbose] > │         let v24 : float = 0.0                                                │

00:00:44 #8125 [Verbose] > │         let v25 : float = 0.0                                                │

00:00:44 #8126 [Verbose] > │         let v26 : UH7 = UH7_1                                                │

00:00:44 #8127 [Verbose] > │         let v27 : UH7 = UH7_0(v23, v24, v25, v26)                            │

00:00:44 #8128 [Verbose] > │         let v28 : UH7 = method15(v22, v27)                                   │

00:00:44 #8129 [Verbose] > │         let v29 : UH10 = UH10_1                                              │

00:00:44 #8130 [Verbose] > │         let v30 : UH10 = method16(v28, v29)                                  │

00:00:44 #8131 [Verbose] > │         let v31 : UH11 = UH11_1                                              │

00:00:44 #8132 [Verbose] > │         let v32 : UH11 = method17(v30, v31)                                  │

00:00:44 #8133 [Verbose] > │         let struct (v33 : UH0, v34 : UH0) = method18(v32)                    │

00:00:44 #8134 [Verbose] > │         let v35 : UH12 = UH12_1                                              │

00:00:44 #8135 [Verbose] > │         let v36 : UH12 = method19(v33, v35)                                  │

00:00:44 #8136 [Verbose] > │         let v37 : float = 0.0                                                │

00:00:44 #8137 [Verbose] > │         let v38 : UH12 = UH12_0(v37, v36)                                    │

00:00:44 #8138 [Verbose] > │         let v39 : (float []) = method20(v38)                                 │

00:00:44 #8139 [Verbose] > │         let v40 : UH12 = UH12_1                                              │

00:00:44 #8140 [Verbose] > │         let v41 : UH12 = method19(v34, v40)                                  │

00:00:44 #8141 [Verbose] > │         let v42 : float = 0.0                                                │

00:00:44 #8142 [Verbose] > │         let v43 : UH12 = UH12_0(v42, v41)                                    │

00:00:44 #8143 [Verbose] > │         let v44 : (float []) = method20(v43)                                 │

00:00:44 #8144 [Verbose] > │         let v45 : (unit -> UH2) = closure153(v6)                             │

00:00:44 #8145 [Verbose] > │         UH2_0(v39, v44, v45)                                                 │

00:00:44 #8146 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:44 #8147 [Verbose] > │         v2                                                                   │

00:00:44 #8148 [Verbose] > │ and closure154 (v0 : UH13) () : UH13 =                                       │

00:00:44 #8149 [Verbose] > │     v0                                                                       │

00:00:44 #8150 [Verbose] > │ and method23 (v0 : UH2, v1 : UH13, v2 : int32) : struct (UH13 * int32) =     │

00:00:44 #8151 [Verbose] > │     match v0 with                                                            │

00:00:44 #8152 [Verbose] > │     | UH2_0(v3, v4, v5) -> (* StreamCons *)                                  │

00:00:44 #8153 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:44 #8154 [Verbose] > │         let v7 : UH2 = v5 ()                                                 │

00:00:44 #8155 [Verbose] > │         let v8 : (unit -> UH13) = closure154(v1)                             │

00:00:44 #8156 [Verbose] > │         let v9 : UH13 = UH13_0(v2, v3, v4, v8)                               │

00:00:44 #8157 [Verbose] > │         method23(v7, v9, v6)                                                 │

00:00:44 #8158 [Verbose] > │     | UH2_1 -> (* StreamNil *)                                               │

00:00:44 #8159 [Verbose] > │         struct (v1, v2)                                                      │

00:00:44 #8160 [Verbose] > │ and closure155 (v0 : UH13) () : UH13 =                                       │

00:00:44 #8161 [Verbose] > │     v0                                                                       │

00:00:44 #8162 [Verbose] > │ and method24 (v0 : UH13, v1 : UH13) : UH13 =                                 │

00:00:44 #8163 [Verbose] > │     match v0 with                                                            │

00:00:44 #8164 [Verbose] > │     | UH13_0(v2, v3, v4, v5) -> (* StreamCons *)                             │

00:00:44 #8165 [Verbose] > │         let v6 : UH13 = v5 ()                                                │

00:00:44 #8166 [Verbose] > │         let v7 : (unit -> UH13) = closure155(v1)                             │

00:00:44 #8167 [Verbose] > │         let v8 : UH13 = UH13_0(v2, v3, v4, v7)                               │

00:00:44 #8168 [Verbose] > │         method24(v6, v8)                                                     │

00:00:44 #8169 [Verbose] > │     | UH13_1 -> (* StreamNil *)                                              │

00:00:44 #8170 [Verbose] > │         v1                                                                   │

00:00:44 #8171 [Verbose] > │ and closure156 (v0 : UH14) () : UH14 =                                       │

00:00:44 #8172 [Verbose] > │     v0                                                                       │

00:00:44 #8173 [Verbose] > │ and method25 (v0 : UH13, v1 : UH14) : UH14 =                                 │

00:00:44 #8174 [Verbose] > │     match v0 with                                                            │

00:00:44 #8175 [Verbose] > │     | UH13_0(v2, v3, v4, v5) -> (* StreamCons *)                             │

00:00:44 #8176 [Verbose] > │         let v6 : UH13 = v5 ()                                                │

00:00:44 #8177 [Verbose] > │         let v7 : UH14 = method25(v6, v1)                                     │

00:00:44 #8178 [Verbose] > │         let v8 : string = $"{v2}"                                            │

00:00:44 #8179 [Verbose] > │         let v9 : (struct (string * (float []) * (float [])) []) = [|struct   │

00:00:44 #8180 [Verbose] > │ (v8, v3, v4)|]                                                               │

00:00:44 #8181 [Verbose] > │         let v10 : string = "wave"                                            │

00:00:44 #8182 [Verbose] > │         let v11 : string = "position (m)"                                    │

00:00:44 #8183 [Verbose] > │         let v12 : string = "displacement (m)"                                │

00:00:44 #8184 [Verbose] > │         let v13 : (unit -> UH14) = closure156(v7)                            │

00:00:44 #8185 [Verbose] > │         UH14_0(v10, v11, v12, v9, v13)                                       │

00:00:44 #8186 [Verbose] > │     | UH13_1 -> (* StreamNil *)                                              │

00:00:44 #8187 [Verbose] > │         v1                                                                   │

00:00:44 #8188 [Verbose] > │ and method26 (v0 : UH14, v1 : UH15) : UH15 =                                 │

00:00:44 #8189 [Verbose] > │     match v0 with                                                            │

00:00:44 #8190 [Verbose] > │     | UH14_0(v2, v3, v4, v5, v6) -> (* StreamCons *)                         │

00:00:44 #8191 [Verbose] > │         let v7 : UH14 = v6 ()                                                │

00:00:44 #8192 [Verbose] > │         let v8 : UH15 = method26(v7, v1)                                     │

00:00:44 #8193 [Verbose] > │         UH15_0(v2, v3, v4, v5, v8)                                           │

00:00:44 #8194 [Verbose] > │     | UH14_1 -> (* StreamNil *)                                              │

00:00:44 #8195 [Verbose] > │         v1                                                                   │

00:00:44 #8196 [Verbose] > │ and method28 (v0 : UH15, v1 : int32) : int32 =                               │

00:00:44 #8197 [Verbose] > │     match v0 with                                                            │

00:00:44 #8198 [Verbose] > │     | UH15_0(v2, v3, v4, v5, v6) -> (* Cons *)                               │

00:00:44 #8199 [Verbose] > │         let v7 : int32 = v1 + 1                                              │

00:00:44 #8200 [Verbose] > │         method28(v6, v7)                                                     │

00:00:44 #8201 [Verbose] > │     | UH15_1 -> (* Nil *)                                                    │

00:00:44 #8202 [Verbose] > │         v1                                                                   │

00:00:44 #8203 [Verbose] > │ and method29 (v0 : (struct (string * string * string * (struct (string *     │

00:00:44 #8204 [Verbose] > │ (float []) * (float [])) [])) []), v1 : UH15, v2 : int32) : int32 =          │

00:00:44 #8205 [Verbose] > │     match v1 with                                                            │

00:00:44 #8206 [Verbose] > │     | UH15_0(v3, v4, v5, v6, v7) -> (* Cons *)                               │

00:00:44 #8207 [Verbose] > │         v0.[int v2] <- struct (v3, v4, v5, v6)                               │

00:00:44 #8208 [Verbose] > │         let v8 : int32 = v2 + 1                                              │

00:00:44 #8209 [Verbose] > │         method29(v0, v7, v8)                                                 │

00:00:44 #8210 [Verbose] > │     | UH15_1 -> (* Nil *)                                                    │

00:00:44 #8211 [Verbose] > │         v2                                                                   │

00:00:44 #8212 [Verbose] > │ and method27 (v0 : UH15) : (struct (string * string * string * (struct       │

00:00:44 #8213 [Verbose] > │ (string * (float []) * (float [])) [])) []) =                                │

00:00:44 #8214 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:44 #8215 [Verbose] > │     let v2 : int32 = method28(v0, v1)                                        │

00:00:44 #8216 [Verbose] > │     let v3 : (struct (string * string * string * (struct (string * (float [  │

00:00:44 #8217 [Verbose] > │ ]) * (float [])) [])) []) = Array.zeroCreate<struct (string * string *       │

00:00:44 #8218 [Verbose] > │ string * (struct (string * (float []) * (float [])) []))> (v2)               │

00:00:44 #8219 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:44 #8220 [Verbose] > │     let v5 : int32 = method29(v3, v0, v4)                                    │

00:00:44 #8221 [Verbose] > │     v3                                                                       │

00:00:44 #8222 [Verbose] > │ and method0 () : (struct (string * string * string * (struct (string *       │

00:00:44 #8223 [Verbose] > │ (float []) * (float [])) [])) []) =                                          │

00:00:44 #8224 [Verbose] > │     let v0 : float = 0.0                                                     │

00:00:44 #8225 [Verbose] > │     let v1 : (unit -> UH0) = closure0()                                      │

00:00:44 #8226 [Verbose] > │     let v2 : UH0 = UH0_0(v0, v1)                                             │

00:00:44 #8227 [Verbose] > │     let v3 : float = 0.0                                                     │

00:00:44 #8228 [Verbose] > │     let v4 : float = 8.422578125E-06                                         │

00:00:44 #8229 [Verbose] > │     let v5 : float = 0.01                                                    │

00:00:44 #8230 [Verbose] > │     let v6 : float = 0.0007224452478461068                                   │

00:00:44 #8231 [Verbose] > │     let v7 : float = 0.0                                                     │

00:00:44 #8232 [Verbose] > │     let v8 : float = 0.0                                                     │

00:00:44 #8233 [Verbose] > │     let v9 : float = 0.0                                                     │

00:00:44 #8234 [Verbose] > │     let v10 : float = 0.0                                                    │

00:00:44 #8235 [Verbose] > │     let v11 : float = 0.0                                                    │

00:00:44 #8236 [Verbose] > │     let v12 : (unit -> UH1) = closure66()                                    │

00:00:44 #8237 [Verbose] > │     let v13 : UH1 = UH1_0(v3, v4, v5, v6, v7, v8, v9, v10, v11, v12)         │

00:00:44 #8238 [Verbose] > │     let v14 : UH2 = UH2_1                                                    │

00:00:44 #8239 [Verbose] > │     let v15 : UH2 = method1(v13, v2, v14)                                    │

00:00:44 #8240 [Verbose] > │     let v16 : UH13 = UH13_1                                                  │

00:00:44 #8241 [Verbose] > │     let v17 : int32 = 0                                                      │

00:00:44 #8242 [Verbose] > │     let struct (v18 : UH13, v19 : int32) = method23(v15, v16, v17)           │

00:00:44 #8243 [Verbose] > │     let v20 : UH13 = UH13_1                                                  │

00:00:44 #8244 [Verbose] > │     let v21 : UH13 = method24(v18, v20)                                      │

00:00:44 #8245 [Verbose] > │     let v22 : UH14 = UH14_1                                                  │

00:00:44 #8246 [Verbose] > │     let v23 : UH14 = method25(v21, v22)                                      │

00:00:44 #8247 [Verbose] > │     let v24 : UH15 = UH15_1                                                  │

00:00:44 #8248 [Verbose] > │     let v25 : UH15 = method26(v23, v24)                                      │

00:00:44 #8249 [Verbose] > │     method27(v25)                                                            │

00:00:44 #8250 [Verbose] > │ method0()                                                                    │

00:00:44 #8251 [Verbose] > │                                                                              │

00:00:44 #8252 [Verbose] > │                                                                              │

00:00:44 #8253 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:44 #8254 [Verbose] >

00:00:44 #8255 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:44 #8256 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:44 #8257 [Verbose] > │ ## end                                                                       │

00:00:44 #8258 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:45 #8259 [Verbose] > [NbConvertApp] Converting notebook physics.dib.ipynb to html

00:00:45 #8260 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:45 #8261 [Verbose] >   validate(nb)

00:00:46 #8262 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:46 #8263 [Verbose] >   return _pygments_highlight(

00:00:49 #8264 [Verbose] > [NbConvertApp] Writing 2727747 bytes to physics.dib.html

00:00:50 #8265 [Debug] executeAsync / exitCode: 0 / output.Length: 563450

00:00:50 #8266 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: am'.dib

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: console.dib

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: math.dib

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: optionm'.dib

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: listm'.dib

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: testing.dib

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: common.dib

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: benchmark.dib

00:00:00 #4 [Debug] parseDibCode / output: Spi / file: console.dib

00:00:00 #4 [Debug] parseDibCode / output: Spi / file: am'.dib

00:00:00 #9 [Debug] parseDibCode / output: Spi / file: benchmark.dib

00:00:00 #8 [Debug] parseDibCode / output: Spi / file: common.dib

00:00:00 #4 [Debug] parseDibCode / output: Spi / file: math.dib

00:00:00 #7 [Debug] parseDibCode / output: Spi / file: testing.dib

00:00:00 #6 [Debug] parseDibCode / output: Spi / file: listm'.dib

00:00:00 #5 [Debug] parseDibCode / output: Spi / file: optionm'.dib

00:00:00 #10 [Debug] writeDibCode / output: Spi / path: physics.dib

00:00:00 #10 [Debug] writeDibCode / output: Spi / path: stream.dib

00:00:00 #10 [Debug] writeDibCode / output: Spi / path: util.dib

00:00:00 #10 [Debug] writeDibCode / output: Spi / path: seq.dib

00:00:00 #13 [Debug] parseDibCode / output: Spi / file: util.dib

00:00:00 #14 [Debug] parseDibCode / output: Spi / file: seq.dib

00:00:00 #11 [Debug] parseDibCode / output: Spi / file: physics.dib

00:00:00 #12 [Debug] parseDibCode / output: Spi / file: stream.dib

In [ ]:
# { . "$ScriptDir/../apps/spiral/temp/cli/build.ps1" } | Invoke-Block
In [ ]:
{ . "$ScriptDir/../apps/spiral/temp/test/build.ps1" } | Invoke-Block

── pwsh ────────────────────────────────────────────────────────────────────────

. ../../../../scripts/nbs_header.ps1

. ../../../../scripts/core.ps1



── pwsh ────────────────────────────────────────────────────────────────────────

{ . ../../../../apps/spiral/dist/Supervisor$(GetExecutableSuffix) --buildfile 

test.spi test.fsx --timeout 10000 } | Invoke-Block



╭─[ 4.42s - stdout ]───────────────────────────────────────────────────────────╮

│ 00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60                        │

│ 00:00:00 #2 [Debug] executeAsync / options: { Command =                      │

│    "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral         │

│ Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll"           │

│ port=13805"                                                                  │

│   WorkingDirectory = None                                                    │

│   CancellationToken = Some System.Threading.CancellationToken                │

│   OnLine = Some <fun:main@411-297> }                                         │

│ 00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\apps\spiral\temp\test      │

│ 00:00:00 #4 [Verbose] > dll_path:                                            │

│ C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language            │

│ 2\artifacts\bin\The Spiral Language 2\release                                │

│ 00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500                       │

│ 00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0             │

│ 00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} /           │

│ result.Length:                                                               │

│ 00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port:      │

│ 13805 / retry: 0                                                             │

│ 00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805              │

│ 00:00:01 #10 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:01 #11 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:01 #12 [Debug] sendJson / port: 13805 / json:                          │

│ {"FileOpen":{"spiText":"inl app () =\n    \u0022test\u0022 |\u003E           │

│ console.write_line\n    0i32\n\ninl main () =\n    print_static              │

│ \u0022\u003Ctest\u003E\u0022\n\n    app\n    |\u003E dyn\n    |\u003E        │

│ ignore\n\n    print_static                                                   │

│ \u0022\u003C/test\u003E\u0022\n","uri":"file:///C:\\home\\git\\polyglot\\app │

│ s\\spiral\\temp\\test\\test.spi"}} / result.Length:                          │

│ 00:00:01 #13 [Debug] sendJson / port: 13805 / json:                          │

│ {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\home\\git\\polyglot\\app │

│ s\\spiral\\temp\\test\\test.spi"}} / result.Length:                          │

│ 00:00:02 #14 [Verbose] > Building                                            │

│ C:\home\git\polyglot\apps\spiral\temp\test\test.spi                          │

│ 00:00:02 #15 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: │

│ [] / typeErrorCount: 0                                                       │

│ 00:00:03 #16 [Verbose] > <test>                                              │

│ 00:00:03 #17 [Verbose] > </test>                                             │

│ 00:00:03 #18 [Debug] buildFile / takeWhileInclusive / fsxContent: Some(let   │

│ rec closure0 () () : int32 =                                                 │

│     let v0 : string = "test"                                                 │

│     System.Console.WriteLine v0                                              │

│     0                                                                        │

│ let v0 : (unit -> int32) = closure0()                                        │

│ ()                                                                           │

│ ) / errors: [] / typeErrorCount: 0                                           │

│ 00:00:03 #19 [Debug] watchWithFilter / Disposing watch stream / filter:      │

│ FileName, LastWrite                                                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── pwsh ────────────────────────────────────────────────────────────────────────

dotnet fable --optimize --lang rs --extension .rs



╭─[ 3.85s - stdout ]───────────────────────────────────────────────────────────╮

│ Fable 4.2.2: F# to Rust compiler (status: alpha)                             │

│                                                                              │

│ Thanks to the contributor! @alfonsogarciacaro                                │

│ Stand with Ukraine! https://standwithukraine.com.ua/                         │

│                                                                              │

│ Parsing test.fsproj...                                                       │

│ Retrieving project options from cache, in case of issues run `dotnet fable   │

│ clean` or try `--noCache` option.                                            │

│ Project and references (1 source files) parsed in 217ms                      │

│                                                                              │

│ Started Fable compilation...                                                 │

│ Fable compilation finished in 1634ms                                         │

│                                                                              │

│ .\test.fsx(6,0): (6,2) warning FABLE: For Rust, support for F# static and    │

│ module do bindings is disabled by default. It can be enabled with the        │

│ 'static_do_bindings' feature. Use at your own risk!                          │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── pwsh ────────────────────────────────────────────────────────────────────────

cargo fmt --



── pwsh ────────────────────────────────────────────────────────────────────────

cargo build --release



╭─[ 4.91s - stdout ]───────────────────────────────────────────────────────────╮

│ warning: C:\home\git\polyglot\Cargo.toml: unused manifest key:          │

│ lib.members                                                                │

│    Compiling test v0.0.1 (C:\home\git\polyglot\apps\spiral\temp\test) │

│ warning: unused import: `info`                                        │

│    --> apps\spiral\temp\test\./main.rs:190:15                         │

│     |                                                                 │

│ 190 | use tracing::{info, Level};                                     │

│     |               ^^^^                                              │

│     |                                                                 │

│     = note: `#[warn(unused_imports)]` on by default                   │

│                                                                       │

│ warning: associated items `new`, `add_item`, and `remove_item` are      │

│ never used                                                                 │

│   --> apps\spiral\temp\test\./main.rs:46:8                            │

│    |                                                                  │

│ 45 | impl Cart {                                                      │

│    | --------- associated items in this implementation                │

│ 46 |     fn new() -> Cart {                                           │

│    |        ^^^                                                       │

│ ...                                                                   │

│ 50 |     fn add_item(&mut self, item: Item) {                         │

│    |        ^^^^^^^^                                                  │

│ ...                                                                   │

│ 56 |     fn remove_item(&mut self, item: &Item) {                     │

│    |        ^^^^^^^^^^^                                               │

│    |                                                                  │

│    = note: `#[warn(dead_code)]` on by default                         │

│                                                                       │

│ warning: function `parse_comment` is never used                       │

│    --> apps\spiral\temp\test\./main.rs:124:4                          │

│     |                                                                 │

│ 124 | fn parse_comment(input: &str) -> IResult<&str, SpiralToken> {   │

│     |    ^^^^^^^^^^^^^                                                │

│                                                                       │

│ warning: function `parse_string` is never used                        │

│    --> apps\spiral\temp\test\./main.rs:130:4                          │

│     |                                                                 │

│ 130 | fn parse_string(input: &str) -> IResult<&str, SpiralToken> {    │

│     |    ^^^^^^^^^^^^                                                 │

│                                                                       │

│ warning: function `parse_identifier` is never used                    │

│    --> apps\spiral\temp\test\./main.rs:145:4                          │

│     |                                                                 │

│ 145 | fn parse_identifier(input: &str) -> IResult<&str, SpiralToken> {[  │

│ 0m                                                                           │

│     |    ^^^^^^^^^^^^^^^^                                             │

│                                                                       │

│ warning: function `parse_integer` is never used                       │

│    --> apps\spiral\temp\test\./main.rs:157:4                          │

│     |                                                                 │

│ 157 | fn parse_integer(input: &str) -> IResult<&str, SpiralToken> {   │

│     |    ^^^^^^^^^^^^^                                                │

│                                                                       │

│ warning: function `parse_operator` is never used                      │

│    --> apps\spiral\temp\test\./main.rs:165:4                          │

│     |                                                                 │

│ 165 | fn parse_operator(input: &str) -> IResult<&str, SpiralToken> {  │

│     |    ^^^^^^^^^^^^^^                                               │

│                                                                       │

│ warning: function `parse_token` is never used                         │

│    --> apps\spiral\temp\test\./main.rs:170:4                          │

│     |                                                                 │

│ 170 | fn parse_token(input: &str) -> IResult<&str, SpiralToken> {     │

│     |    ^^^^^^^^^^^                                                  │

│                                                                       │

│ warning: function `format_token` is never used                        │

│    --> apps\spiral\temp\test\./main.rs:180:4                          │

│     |                                                                 │

│ 180 | fn format_token(token: &SpiralToken) -> String {                │

│     |    ^^^^^^^^^^^^                                                 │

│                                                                       │

│ warning: function `parse_expression` is never used                    │

│    --> apps\spiral\temp\test\./main.rs:213:4                          │

│     |                                                                 │

│ 213 | fn parse_expression(input: &str) -> IResult<&str, SpiralToken> {[  │

│ 0m                                                                           │

│     |    ^^^^^^^^^^^^^^^^                                             │

│                                                                       │

│ warning: `test` (bin "test") generated 10 warnings (run `cargo fix      │

│ --bin "test"` to apply 1 suggestion)                                       │

│     Finished release [optimized] target(s) in 4.73s                   │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── pwsh ────────────────────────────────────────────────────────────────────────

$env:RUST_LOG="info"

{ cargo test --release } | Invoke-Block



╭─[ 4.84s - stdout ]───────────────────────────────────────────────────────────╮

│ warning: C:\home\git\polyglot\Cargo.toml: unused manifest key:          │

│ lib.members                                                                │

│    Compiling test v0.0.1 (C:\home\git\polyglot\apps\spiral\temp\test) │

│     Finished release [optimized] target(s) in 4.45s                   │

│      Running unittests main.rs                                          │

│ (C:\home\git\polyglot\target\release\deps\test-b67d1a14605393f6.exe)       │

│                                                                              │

│ running 3 tests                                                              │

│ test test_parse_number ... ok                                                │

│ 2023-10-29T17:05:49.148167Z  INFO test:                     │

│ input=Integer(-5580301218599500907)                                          │

│ 2023-10-29T17:05:49.148277Z  INFO test:                     │

│ input=StringLiteral("")                                                      │

│ 2023-10-29T17:05:49.148361Z  INFO test:                     │

│ input=Integer(75587542348299603)                                             │

│ 2023-10-29T17:05:49.148451Z  INFO test:                     │

│ input=StringLiteral("")                                                      │

│ 2023-10-29T17:05:49.148513Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.148577Z  INFO test:                     │

│ input=Identifier("Fi3DcEykGHD")                                              │

│ 2023-10-29T17:05:49.148617Z  INFO test:                     │

│ input=Identifier("sW4XX")                                                    │

│ 2023-10-29T17:05:49.148688Z  INFO test:                     │

│ input=Identifier("CPoBVZ11u1t8D6ixwxmaCArqKR")                               │

│ 2023-10-29T17:05:49.148755Z  INFO test:                     │

│ input=StringLiteral("=|?%JX.y{J/#E{$mme3e-&q?")                              │

│ 2023-10-29T17:05:49.148779Z  INFO test:                     │

│ input=Integer(-7859921008217824628)                                          │

│ 2023-10-29T17:05:49.148811Z  INFO test:                     │

│ input=StringLiteral("T")                                                     │

│ 2023-10-29T17:05:49.148852Z  INFO test:                     │

│ input=Identifier("z3Hu1h")                                                   │

│ 2023-10-29T17:05:49.148944Z  INFO test:                     │

│ input=Comment("`X?=`Z*{/$")                                                  │

│ 2023-10-29T17:05:49.148985Z  INFO test:                     │

│ input=StringLiteral("W")                                                     │

│ 2023-10-29T17:05:49.149048Z  INFO test: input=Operator("-") │

│ 2023-10-29T17:05:49.149107Z  INFO test:                     │

│ input=Identifier("AEbh5Lt24gOgrHP")                                          │

│ 2023-10-29T17:05:49.149159Z  INFO test:                     │

│ input=Comment("T<`'8$Q';fA31.,&#t<E'")                                       │

│ 2023-10-29T17:05:49.149235Z  INFO test:                     │

│ input=Identifier("oDqoEhubP3Wu3")                                            │

│ 2023-10-29T17:05:49.149277Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.149317Z  INFO test:                     │

│ input=Integer(-5855871582213770742)                                          │

│ 2023-10-29T17:05:49.149391Z  INFO test:                     │

│ input=Identifier("K4D6l2IukVX4E063165mQcF6Z6Uli2H1y")                        │

│ 2023-10-29T17:05:49.149461Z  INFO test:                     │

│ input=StringLiteral("'Yyrg&7-<")                                             │

│ 2023-10-29T17:05:49.149496Z  INFO test:                     │

│ input=StringLiteral("&Y8n%lJ&.&$~*b&T!`")                                    │

│ 2023-10-29T17:05:49.149578Z  INFO test:                     │

│ input=Integer(8612588420827732514)                                           │

│ 2023-10-29T17:05:49.149636Z  INFO test:                     │

│ input=StringLiteral(":(<z=DQpgO'(?,ZrpX]_9bKn(8>*$-{")                       │

│ 2023-10-29T17:05:49.149689Z  INFO test:                     │

│ input=Identifier("l16WV0I75wTaUrgY")                                         │

│ 2023-10-29T17:05:49.149731Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.149771Z  INFO test:                     │

│ input=Integer(7395238780078597110)                                           │

│ 2023-10-29T17:05:49.149832Z  INFO test:                     │

│ input=StringLiteral("k%PJ{hh`n={/`:*]/?3%7`,fB7&T")                          │

│ 2023-10-29T17:05:49.149893Z  INFO test:                     │

│ input=Identifier("ckGi77a94uMI8o")                                           │

│ 2023-10-29T17:05:49.149960Z  INFO test:                     │

│ input=StringLiteral(")%<C8+'[ =mbq`J.&gNk~On/")                              │

│ 2023-10-29T17:05:49.150012Z  INFO test: input=Comment("'sD2 │

│ U%Qg>^]&S\\uSX{2")                                                           │

│ 2023-10-29T17:05:49.150053Z  INFO test:                     │

│ input=Integer(7860030631022721253)                                           │

│ 2023-10-29T17:05:49.150100Z  INFO test:                     │

│ input=Integer(7646064054071463181)                                           │

│ 2023-10-29T17:05:49.150127Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.150156Z  INFO test:                     │

│ input=Integer(-6472223489280257120)                                          │

│ 2023-10-29T17:05:49.150198Z  INFO test:                     │

│ input=Identifier("fvL6lck8R41kEY")                                           │

│ 2023-10-29T17:05:49.150227Z  INFO test:                     │

│ input=Integer(8594313998685455064)                                           │

│ 2023-10-29T17:05:49.150249Z  INFO test:                     │

│ input=Identifier("oM0Cc2R")                                                  │

│ 2023-10-29T17:05:49.150277Z  INFO test:                     │

│ input=Integer(1492936816894316624)                                           │

│ 2023-10-29T17:05:49.150314Z  INFO test: input=Operator("/") │

│ 2023-10-29T17:05:49.150363Z  INFO test:                     │

│ input=StringLiteral(".[!`4<&m&/&o}cBr&$F.")                                  │

│ 2023-10-29T17:05:49.150411Z  INFO test:                     │

│ input=StringLiteral("/{*c%Lk[V$/<%")                                         │

│ 2023-10-29T17:05:49.150460Z  INFO test: input=Operator("=") │

│ 2023-10-29T17:05:49.150506Z  INFO test:                     │

│ input=StringLiteral("B]*'@.L','c?h1")                                        │

│ 2023-10-29T17:05:49.150593Z  INFO test:                     │

│ input=Identifier("rB6fwCaOZt8Wp6vyLQYyY28bHw")                               │

│ 2023-10-29T17:05:49.150640Z  INFO test:                     │

│ input=Identifier("akbde9")                                                   │

│ 2023-10-29T17:05:49.150684Z  INFO test:                     │

│ input=Integer(8387140973137104600)                                           │

│ 2023-10-29T17:05:49.150716Z  INFO test:                     │

│ input=Identifier("Iq2611dzrB6NESuCf")                                        │

│ 2023-10-29T17:05:49.150767Z  INFO test:                     │

│ input=Integer(-1651918986433470201)                                          │

│ 2023-10-29T17:05:49.150824Z  INFO test: input=Operator("*") │

│ 2023-10-29T17:05:49.150876Z  INFO test:                     │

│ input=Comment("7*wh7`")                                                      │

│ 2023-10-29T17:05:49.150929Z  INFO test:                     │

│ input=Integer(-6222424765330990199)                                          │

│ 2023-10-29T17:05:49.150979Z  INFO test:                     │

│ input=Identifier("mXaV2Mu6X2pijHc")                                          │

│ 2023-10-29T17:05:49.151019Z  INFO test:                     │

│ input=Identifier("l0b")                                                      │

│ 2023-10-29T17:05:49.151066Z  INFO test: input=Comment("Zv") │

│ 2023-10-29T17:05:49.151115Z  INFO test:                     │

│ input=Identifier("SG8NP")                                                    │

│ 2023-10-29T17:05:49.151173Z  INFO test:                     │

│ input=Identifier("sU14nVge243ZFoJ5858J")                                     │

│ 2023-10-29T17:05:49.151240Z  INFO test:                     │

│ input=StringLiteral("M${&B?)MUvog(?r$&&=ESUb/'QR*`?")                        │

│ 2023-10-29T17:05:49.151284Z  INFO test:                     │

│ input=Integer(-7841244442870361125)                                          │

│ 2023-10-29T17:05:49.151344Z  INFO test:                     │

│ input=Integer(-655301648514856146)                                           │

│ 2023-10-29T17:05:49.151404Z  INFO test: input=Comment("T{`j │

│ [c@W%.Y pV|e'L\"*cgHZM<8e")                                                  │

│ 2023-10-29T17:05:49.151444Z  INFO test:                     │

│ input=Integer(5737074244554087723)                                           │

│ 2023-10-29T17:05:49.151484Z  INFO test: input=Comment("")   │

│ 2023-10-29T17:05:49.151518Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.151544Z  INFO test:                     │

│ input=StringLiteral(",(k}%-ek<.$Ct2mc")                                      │

│ 2023-10-29T17:05:49.151581Z  INFO test:                     │

│ input=StringLiteral("PL<")                                                   │

│ 2023-10-29T17:05:49.151640Z  INFO test:                     │

│ input=Identifier("hMSOAABD0DPDO5kc31ASYr")                                   │

│ 2023-10-29T17:05:49.151712Z  INFO test:                     │

│ input=StringLiteral("B)7_|`=P<B*Dy|$:gQv&")                                  │

│ 2023-10-29T17:05:49.151760Z  INFO test:                     │

│ input=Identifier("XcK14")                                                    │

│ 2023-10-29T17:05:49.151837Z  INFO test:                     │

│ input=Identifier("M1ZnJ2NQs4JGj071uXVPQtUUdk")                               │

│ 2023-10-29T17:05:49.151882Z  INFO test: input=Operator("=") │

│ 2023-10-29T17:05:49.151927Z  INFO test: input=Operator("-") │

│ 2023-10-29T17:05:49.152034Z  INFO test:                     │

│ input=StringLiteral("ly6.xR?.?=3*4h?/g'")                                    │

│ 2023-10-29T17:05:49.152081Z  INFO test: input=Operator("/") │

│ 2023-10-29T17:05:49.152113Z  INFO test:                     │

│ input=StringLiteral("idIw(5+z>.fN)XfSFK%[kT*f")                              │

│ 2023-10-29T17:05:49.152154Z  INFO test:                     │

│ input=StringLiteral("sMj*w9H(pVX&")                                          │

│ 2023-10-29T17:05:49.152202Z  INFO test: input=Operator("*") │

│ 2023-10-29T17:05:49.152253Z  INFO test:                     │

│ input=Identifier("eKJgMiEl0Nz6KXxv")                                         │

│ 2023-10-29T17:05:49.152311Z  INFO test:                     │

│ input=Comment("W&:;Lw)u`")                                                   │

│ 2023-10-29T17:05:49.152349Z  INFO test: input=Operator("*") │

│ 2023-10-29T17:05:49.152416Z  INFO test:                     │

│ input=StringLiteral("+J'NCA~:BaWu&6u&R?E5*")                                 │

│ 2023-10-29T17:05:49.152481Z  INFO test: input=Operator("*") │

│ 2023-10-29T17:05:49.152528Z  INFO test:                     │

│ input=Integer(-8839139730498089572)                                          │

│ 2023-10-29T17:05:49.152583Z  INFO test:                     │

│ input=Comment("Z`xn<?\\P*auC$/`$:`")                                         │

│ 2023-10-29T17:05:49.152632Z  INFO test: input=Operator("(") │

│ 2023-10-29T17:05:49.152676Z  INFO test:                     │

│ input=Integer(-8043135101381940686)                                          │

│ 2023-10-29T17:05:49.152728Z  INFO test:                     │

│ input=Identifier("otlUsfxfs5DGArKJ2F150tqV")                                 │

│ 2023-10-29T17:05:49.152781Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.152852Z  INFO test:                     │

│ input=StringLiteral("{*/N%=bc/`<=;.]H.D`+*0SE<o&")                           │

│ 2023-10-29T17:05:49.152910Z  INFO test:                     │

│ input=StringLiteral("/d&:'T5%B{n<yK`&Pk:W<I9HlmXew0T")                       │

│ 2023-10-29T17:05:49.152949Z  INFO test:                     │

│ input=Integer(-998180149906125327)                                           │

│ 2023-10-29T17:05:49.152986Z  INFO test:                     │

│ input=Integer(8017588088449004150)                                           │

│ 2023-10-29T17:05:49.153017Z  INFO test: input=Operator("/") │

│ 2023-10-29T17:05:49.153037Z  INFO test:                     │

│ input=Integer(-381900183993280207)                                           │

│ 2023-10-29T17:05:49.153072Z  INFO test:                     │

│ input=Comment("%u.}h*")                                                      │

│ 2023-10-29T17:05:49.153117Z  INFO test: input=Comment("")   │

│ 2023-10-29T17:05:49.153159Z  INFO test:                     │

│ input=Integer(-3443846227843807998)                                          │

│ 2023-10-29T17:05:49.153200Z  INFO test:                     │

│ input=Integer(-181286549710292941)                                           │

│ 2023-10-29T17:05:49.153255Z  INFO test:                     │

│ input=StringLiteral("ozno/gFvn8/O,!8S")                                      │

│ 2023-10-29T17:05:49.153306Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.153343Z  INFO test:                     │

│ input=StringLiteral("d0De(isHypIn=:*36IKH**&&")                              │

│ 2023-10-29T17:05:49.153391Z  INFO test: input=Comment("`y") │

│ 2023-10-29T17:05:49.153460Z  INFO test:                     │

│ input=StringLiteral(".@$?_%_{eC?rz?/`<6^&uP_r(v")                            │

│ 2023-10-29T17:05:49.153513Z  INFO test:                     │

│ input=StringLiteral(".&SvdwNr0&`x:lD$.g(~y&l//SQ")                           │

│ 2023-10-29T17:05:49.153552Z  INFO test:                     │

│ input=Integer(-703290177110557457)                                           │

│ 2023-10-29T17:05:49.153596Z  INFO test:                     │

│ input=Integer(954401005193214304)                                            │

│ 2023-10-29T17:05:49.153642Z  INFO test:                     │

│ input=Identifier("vcVYkA57tsB")                                              │

│ 2023-10-29T17:05:49.153692Z  INFO test:                     │

│ input=Identifier("eOrG0N")                                                   │

│ 2023-10-29T17:05:49.153738Z  INFO test:                     │

│ input=StringLiteral("=<U #:&byA/F.")                                         │

│ 2023-10-29T17:05:49.153786Z  INFO test: input=Operator("-") │

│ 2023-10-29T17:05:49.153847Z  INFO test:                     │

│ input=StringLiteral("^3xK&n0ht)=mR={Q =&luQ!',h*)pb:")                       │

│ 2023-10-29T17:05:49.153904Z  INFO test: input=Operator("*") │

│ 2023-10-29T17:05:49.153977Z  INFO test:                     │

│ input=Comment("V/Cv>DR67%%ms.k\\&\\U 4:/{WZ")                                │

│ 2023-10-29T17:05:49.154050Z  INFO test:                     │

│ input=Comment("01yKbJ*+$no=$B.'\"D/^::{FV,\\<")                              │

│ 2023-10-29T17:05:49.154135Z  INFO test: input=Operator("/") │

│ 2023-10-29T17:05:49.154172Z  INFO test:                     │

│ input=Integer(-8451579772202481257)                                          │

│ 2023-10-29T17:05:49.154220Z  INFO test:                     │

│ input=StringLiteral("bZ$@H%:%te{bgq]&6.")                                    │

│ 2023-10-29T17:05:49.154254Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.154274Z  INFO test:                     │

│ input=Integer(7887177579551768786)                                           │

│ 2023-10-29T17:05:49.154304Z  INFO test:                     │

│ input=Identifier("Ia8ScWN95iXpAtNTrR6pwxrC")                                 │

│ 2023-10-29T17:05:49.154381Z  INFO test:                     │

│ input=Comment("%2$IE}$%&M*./$")                                              │

│ 2023-10-29T17:05:49.154422Z  INFO test: input=Comment("=?") │

│ 2023-10-29T17:05:49.154456Z  INFO test: input=Comment("*2R[ │

│ R~Z=JE:k}$$<\\9% ")                                                          │

│ 2023-10-29T17:05:49.154476Z  INFO test: input=Operator("(") │

│ 2023-10-29T17:05:49.154495Z  INFO test:                     │

│ input=Identifier("h8y")                                                      │

│ 2023-10-29T17:05:49.154551Z  INFO test:                     │

│ input=Identifier("Dkx0ZSY3hVGYCVJC7nPD9")                                    │

│ 2023-10-29T17:05:49.154648Z  INFO test:                     │

│ input=Identifier("le5iX4PQUgDoovHPqXKnp")                                    │

│ 2023-10-29T17:05:49.154673Z  INFO test: input=Operator("*") │

│ 2023-10-29T17:05:49.154766Z  INFO test:                     │

│ input=StringLiteral("t`'%u+TM%.~pN/'")                                       │

│ 2023-10-29T17:05:49.154801Z  INFO test:                     │

│ input=StringLiteral("ujyY/=|<']")                                            │

│ 2023-10-29T17:05:49.154828Z  INFO test:                     │

│ input=Comment("x~I\\2=GR<=d8Cp`(\\h?`'sXDE(W")                               │

│ 2023-10-29T17:05:49.154847Z  INFO test:                     │

│ input=Integer(2348176854289405747)                                           │

│ 2023-10-29T17:05:49.154865Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.154889Z  INFO test:                     │

│ input=StringLiteral("j:V`?/{)+.~O")                                          │

│ 2023-10-29T17:05:49.154911Z  INFO test:                     │

│ input=Identifier("EmGU0r4")                                                  │

│ 2023-10-29T17:05:49.154941Z  INFO test:                     │

│ input=Identifier("Puy8owY34sg5z3qe7398uwRV0TboTs")                           │

│ 2023-10-29T17:05:49.154966Z  INFO test:                     │

│ input=StringLiteral("?x{~`ioA']%jQOtl>")                                     │

│ 2023-10-29T17:05:49.154985Z  INFO test:                     │

│ input=Integer(-4701785535799041610)                                          │

│ 2023-10-29T17:05:49.155002Z  INFO test:                     │

│ input=Integer(2598368816405228654)                                           │

│ 2023-10-29T17:05:49.155021Z  INFO test:                     │

│ input=Comment("H/Q.2")                                                       │

│ 2023-10-29T17:05:49.155040Z  INFO test:                     │

│ input=StringLiteral("Kk4Y9u")                                                │

│ 2023-10-29T17:05:49.155064Z  INFO test:                     │

│ input=Comment("D~{E~`F&:{%]")                                                │

│ 2023-10-29T17:05:49.155090Z  INFO test:                     │

│ input=Identifier("PQwqum1d1oRp6U64f60U452sM")                                │

│ 2023-10-29T17:05:49.155109Z  INFO test:                     │

│ input=Integer(-4098931835607731157)                                          │

│ 2023-10-29T17:05:49.155134Z  INFO test:                     │

│ input=StringLiteral("%^{?7L?,O)jovWgmkjv6p]")                                │

│ 2023-10-29T17:05:49.155155Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.155172Z  INFO test:                     │

│ input=Integer(858648303382201869)                                            │

│ 2023-10-29T17:05:49.155198Z  INFO test:                     │

│ input=Comment("{{rXE7\\V`'*N<+L")                                            │

│ 2023-10-29T17:05:49.155220Z  INFO test:                     │

│ input=StringLiteral("{i:.l")                                                 │

│ 2023-10-29T17:05:49.155238Z  INFO test: input=Operator("-") │

│ 2023-10-29T17:05:49.155264Z  INFO test:                     │

│ input=StringLiteral("JkRk&Ci&N5$B+^Mi8*GF")                                  │

│ 2023-10-29T17:05:49.155282Z  INFO test:                     │

│ input=Integer(3964528613077541978)                                           │

│ 2023-10-29T17:05:49.155300Z  INFO test: input=Operator("(") │

│ 2023-10-29T17:05:49.155325Z  INFO test:                     │

│ input=Identifier("Tv3QLLqX5Ms4x9m8jSCeE2")                                   │

│ 2023-10-29T17:05:49.155346Z  INFO test:                     │

│ input=Comment("%m*o%")                                                       │

│ 2023-10-29T17:05:49.155366Z  INFO test: input=Operator("=") │

│ 2023-10-29T17:05:49.155384Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.155410Z  INFO test:                     │

│ input=StringLiteral("%$c*i?<1EH3?'Emp")                                      │

│ 2023-10-29T17:05:49.155458Z  INFO test:                     │

│ input=Comment("&&'X1%:9}\\j@u/\\xq+<K`Y{Z\"{Z")                              │

│ 2023-10-29T17:05:49.158120Z  INFO test:                     │

│ input=Comment("Wi'")                                                         │

│ 2023-10-29T17:05:49.158175Z  INFO test:                     │

│ input=StringLiteral("v?`<")                                                  │

│ 2023-10-29T17:05:49.158225Z  INFO test:                     │

│ input=StringLiteral("a+?`*d:^&")                                             │

│ 2023-10-29T17:05:49.158276Z  INFO test: input=Operator("(") │

│ 2023-10-29T17:05:49.158349Z  INFO test:                     │

│ input=Comment("L.+%C2:DV|WH_5)<(=wZea<J1PeC&oo")                             │

│ 2023-10-29T17:05:49.158389Z  INFO test:                     │

│ input=Integer(-7447478777715447174)                                          │

│ 2023-10-29T17:05:49.158435Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.158478Z  INFO test:                     │

│ input=Integer(8557593598150553516)                                           │

│ 2023-10-29T17:05:49.158523Z  INFO test: input=Operator("(") │

│ 2023-10-29T17:05:49.158587Z  INFO test:                     │

│ input=Comment("]?$A_jh8ep'm.|[8Q/B!`t`>T=i35")                               │

│ 2023-10-29T17:05:49.158663Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.158726Z  INFO test:                     │

│ input=Integer(-8590753922115723147)                                          │

│ 2023-10-29T17:05:49.158783Z  INFO test:                     │

│ input=StringLiteral("c<$~Uy91]A<`z?lpM%=")                                   │

│ 2023-10-29T17:05:49.158852Z  INFO test:                     │

│ input=Comment("-#`'n{FLD.{fteN5&`'??FBa:%j.<G")                              │

│ 2023-10-29T17:05:49.158899Z  INFO test:                     │

│ input=StringLiteral("/iw4$'/<")                                              │

│ 2023-10-29T17:05:49.158956Z  INFO test:                     │

│ input=Comment("-I?Xz<EF\",W")                                                │

│ 2023-10-29T17:05:49.159016Z  INFO test:                     │

│ input=StringLiteral("PW?;%yVr>Ao|2THZ#}#?13q~&@")                            │

│ 2023-10-29T17:05:49.159062Z  INFO test: input=Operator("*") │

│ 2023-10-29T17:05:49.159111Z  INFO test:                     │

│ input=Comment("X]+>w")                                                       │

│ 2023-10-29T17:05:49.159172Z  INFO test:                     │

│ input=Comment("z]do?Mr%_OIrn$")                                              │

│ 2023-10-29T17:05:49.159242Z  INFO test:                     │

│ input=Comment("/P3Y$5`e'Z}Ze=&tiej^H")                                       │

│ 2023-10-29T17:05:49.159324Z  INFO test: input=Operator("=") │

│ 2023-10-29T17:05:49.159401Z  INFO test:                     │

│ input=StringLiteral(";U.U")                                                  │

│ 2023-10-29T17:05:49.159447Z  INFO test:                     │

│ input=Integer(-9004391467375579405)                                          │

│ 2023-10-29T17:05:49.159487Z  INFO test:                     │

│ input=Integer(7151751651409871016)                                           │

│ 2023-10-29T17:05:49.159534Z  INFO test:                     │

│ input=Comment("`{/F>*")                                                      │

│ 2023-10-29T17:05:49.159584Z  INFO test:                     │

│ input=Identifier("DpdYVx")                                                   │

│ 2023-10-29T17:05:49.159636Z  INFO test:                     │

│ input=StringLiteral("2U?)]")                                                 │

│ 2023-10-29T17:05:49.159701Z  INFO test:                     │

│ input=Identifier("qtuFd6Ld4HP4L6WiRf")                                       │

│ 2023-10-29T17:05:49.159755Z  INFO test:                     │

│ input=Comment("h`xN^Q/?d\";{\"d{{&%G#I")                                     │

│ 2023-10-29T17:05:49.159810Z  INFO test:                     │

│ input=Comment("e:PH*#{&xPOM+%f=t%\"%\"{`{\\^")                               │

│ 2023-10-29T17:05:49.159853Z  INFO test: input=Operator("/") │

│ 2023-10-29T17:05:49.159900Z  INFO test:                     │

│ input=Integer(1441783235518298008)                                           │

│ 2023-10-29T17:05:49.159955Z  INFO test:                     │

│ input=StringLiteral(".6e='&*]$am8A*IPd&.b$(")                                │

│ 2023-10-29T17:05:49.159999Z  INFO test: input=Operator("=") │

│ 2023-10-29T17:05:49.160048Z  INFO test:                     │

│ input=Comment("1?i")                                                         │

│ 2023-10-29T17:05:49.160102Z  INFO test:                     │

│ input=StringLiteral(">P")                                                    │

│ 2023-10-29T17:05:49.160160Z  INFO test:                     │

│ input=Identifier("B0YIxOA1BgUP")                                             │

│ 2023-10-29T17:05:49.160223Z  INFO test:                     │

│ input=Comment("t/$.)v\"`@\"/f?${6}N\"9")                                     │

│ 2023-10-29T17:05:49.160269Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.160312Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.160356Z  INFO test:                     │

│ input=Integer(6376101136300756650)                                           │

│ 2023-10-29T17:05:49.160397Z  INFO test:                     │

│ input=Comment("7{`%")                                                        │

│ 2023-10-29T17:05:49.160442Z  INFO test:                     │

│ input=Identifier("f")                                                        │

│ 2023-10-29T17:05:49.160504Z  INFO test:                     │

│ input=Comment("$?u)H.?`U}G")                                                 │

│ 2023-10-29T17:05:49.160549Z  INFO test:                     │

│ input=Integer(-8343888375695287248)                                          │

│ 2023-10-29T17:05:49.160591Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.160637Z  INFO test: input=Operator("(") │

│ 2023-10-29T17:05:49.160680Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.160725Z  INFO test:                     │

│ input=Integer(5364523325953120160)                                           │

│ 2023-10-29T17:05:49.160776Z  INFO test:                     │

│ input=Identifier("Mkf1j1KD")                                                 │

│ 2023-10-29T17:05:49.160827Z  INFO test: input=Operator("(") │

│ 2023-10-29T17:05:49.160868Z  INFO test:                     │

│ input=Integer(-6844669512172194237)                                          │

│ 2023-10-29T17:05:49.160914Z  INFO test: input=Operator("=") │

│ 2023-10-29T17:05:49.160958Z  INFO test:                     │

│ input=Integer(6292365424173458442)                                           │

│ 2023-10-29T17:05:49.160998Z  INFO test:                     │

│ input=Integer(3245696989635304525)                                           │

│ 2023-10-29T17:05:49.161045Z  INFO test:                     │

│ input=StringLiteral("?O.Ow6r-A9W/.Dg")                                       │

│ 2023-10-29T17:05:49.161086Z  INFO test:                     │

│ input=Integer(-8177241264260535866)                                          │

│ 2023-10-29T17:05:49.161131Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.161201Z  INFO test:                     │

│ input=Identifier("J9948vaVI7eJb49Jt2qTFYmPf510TOj")                          │

│ 2023-10-29T17:05:49.161266Z  INFO test:                     │

│ input=StringLiteral("{4$s( S.&vLB+L^:|Vhiu ES:'")                            │

│ 2023-10-29T17:05:49.161413Z  INFO test:                     │

│ input=Identifier("Vv8csvlToOyhWTrDhxVz90ePqvg70W0")                          │

│ 2023-10-29T17:05:49.161499Z  INFO test:                     │

│ input=StringLiteral("*FL[:&:]kfoQWP?3G=.&Xa.1FQ")                            │

│ 2023-10-29T17:05:49.161548Z  INFO test:                     │

│ input=StringLiteral("&chw(=e:#a:W>]>;&=%<OZ")                                │

│ 2023-10-29T17:05:49.161580Z  INFO test:                     │

│ input=Integer(-5932043382927485606)                                          │

│ 2023-10-29T17:05:49.161616Z  INFO test:                     │

│ input=StringLiteral("17=`l*.E9y=5N&")                                        │

│ 2023-10-29T17:05:49.161663Z  INFO test:                     │

│ input=Identifier("ucwLlypmsncRIGv43bHxE28")                                  │

│ 2023-10-29T17:05:49.161706Z  INFO test: input=Operator("-") │

│ 2023-10-29T17:05:49.161757Z  INFO test:                     │

│ input=Identifier("xPWz3eFXk62avrgqsC2Fe1o9hi2")                              │

│ 2023-10-29T17:05:49.161787Z  INFO test:                     │

│ input=Integer(-5301380538285774704)                                          │

│ 2023-10-29T17:05:49.161817Z  INFO test:                     │

│ input=Comment("-%9w<Z")                                                      │

│ 2023-10-29T17:05:49.161850Z  INFO test:                     │

│ input=StringLiteral("JRP")                                                   │

│ 2023-10-29T17:05:49.161883Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.161927Z  INFO test:                     │

│ input=Identifier("jYeL0u9VDPIPRNtDeifM")                                     │

│ 2023-10-29T17:05:49.161972Z  INFO test:                     │

│ input=Identifier("p1F0Xr5PN5zPfGNCM2")                                       │

│ 2023-10-29T17:05:49.162004Z  INFO test: input=Operator("+") │

│ 2023-10-29T17:05:49.162031Z  INFO test:                     │

│ input=Identifier("R")                                                        │

│ 2023-10-29T17:05:49.162058Z  INFO test:                     │

│ input=Identifier("F1iB")                                                     │

│ 2023-10-29T17:05:49.162099Z  INFO test: input=Comment("     │

│ =?4=We/5]w]``[q\"?")                                                         │

│ 2023-10-29T17:05:49.162134Z  INFO test:                     │

│ input=Identifier("vc3h1en")                                                  │

│ 2023-10-29T17:05:49.162168Z  INFO test: input=Comment("FU-d │

│ :e'")                                                                        │

│ 2023-10-29T17:05:49.162210Z  INFO test:                     │

│ input=Comment("%sK}xQ!8r/Mo`\"2aZ^<?")                                       │

│ 2023-10-29T17:05:49.162261Z  INFO test:                     │

│ input=Comment("\"jmse&3C*\\/M`*]ef~upXBMS>\"}%?@`\\")                        │

│ 2023-10-29T17:05:49.162295Z  INFO test:                     │

│ input=Integer(6650538756315738321)                                           │

│ 2023-10-29T17:05:49.162321Z  INFO test:                     │

│ input=Integer(5075855346670752391)                                           │

│ 2023-10-29T17:05:49.162365Z  INFO test: input=Comment("H    │

│ >^R\\Bj9%>y*\"~/^e3*QJE{s{&")                                                │

│ 2023-10-29T17:05:49.162400Z  INFO test: input=Comment(":")  │

│ 2023-10-29T17:05:49.162447Z  INFO test:                     │

│ input=Comment("C}D<wd\\%PZd2\\|-G Pdr.&$?[$U;$:")                            │

│ 2023-10-29T17:05:49.162485Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.162512Z  INFO test: input=Operator("-") │

│ 2023-10-29T17:05:49.162548Z  INFO test:                     │

│ input=Comment("Xe'<<@\"`")                                                   │

│ 2023-10-29T17:05:49.162591Z  INFO test:                     │

│ input=Identifier("wc8tkD5XBNV74Nf")                                          │

│ 2023-10-29T17:05:49.162623Z  INFO test:                     │

│ input=Integer(-1540343019234515085)                                          │

│ 2023-10-29T17:05:49.162704Z  INFO test:                     │

│ input=Identifier("zzrpXXF038ptQRYFLos8lESLOzwfZ2")                           │

│ 2023-10-29T17:05:49.162764Z  INFO test: input=Operator(")") │

│ 2023-10-29T17:05:49.162819Z  INFO test: input=Operator(")") │

│ test prop_parse_format_idempotent ... ok                                     │

│ test                                                                         │

│ adding_and_then_removing_an_item_from_the_cart_leaves_the_cart_unchanged ... │

│ ok                                                                           │

│                                                                              │

│ test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out;  │

│ finished in 0.09s                                                            │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── pwsh ────────────────────────────────────────────────────────────────────────

{ . $ScriptDir/../../../../target/release/test$(GetExecutableSuffix) } | 

Invoke-Block



╭─[ 75.63ms - stdout ]─────────────────────────────────────────────────────────╮

│ app=test                                                                     │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook build.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 315380 bytes to build.dib.html

In [ ]:
{ . "$ScriptDir/../apps/spiral/temp/extension/build.ps1" } | Invoke-Block
Lockfile is up to date, resolution step is skipped

Already up to date



Done in 2.1s

[INFO]: 🎯  Checking for the Wasm target...

[INFO]: 🌀  Compiling to Wasm...

warning: C:\home\git\polyglot\Cargo.toml: unused manifest key: lib.members

    Finished dev [unoptimized + debuginfo] target(s) in 0.37s

[INFO]: ⬇️  Installing wasm-bindgen...

[INFO]: Optional fields missing from Cargo.toml: 'description', 'repository', and 'license'. These are not necessary, but recommended

[INFO]: ✨   Done in 1.16s

[INFO]: 📦   Your wasm pkg is ready to publish at C:\home\git\polyglot\apps\spiral\temp\extension\pkg.

▲ [WARNING] Cannot find base config file "../../tsconfig.json" [tsconfig.json]



    tsconfig.json:5:13:

      5 │   "extends": "../../tsconfig.json"

        ╵              ~~~~~~~~~~~~~~~~~~~~~



▲ [WARNING] "import.meta" is not available with the "iife" output format and will be empty [empty-import-meta]



    pkg/extension.js:451:45:

      451 │         input = new URL('extension_bg.wasm', import.meta.url);

          ╵                                              ~~~~~~~~~~~



  You need to set the output format to "esm" for "import.meta" to work correctly.



2 warnings



  dist\extension_bg-XHJANPGH.wasm  146.4kb

  dist\content_script.js             7.4kb

  dist\service_worker.js             1.6kb



⚡ Done in 36ms



> polyglot@ test:e2e C:\home\git\polyglot\apps\spiral\temp\extension

> playwright test



 INFO  Accepting connections at http://localhost:3000

 HTTP  10/29/2023 1:06:14 PM 127.0.0.1 GET /

 HTTP  10/29/2023 1:06:14 PM 127.0.0.1 Returned 200 in 114 ms



Running 3 tests using 3 workers



[1/3] [Desktop Chrome] › extension.spec.ts:13:5 › libgen

[2/3] [Desktop Chrome] › extension.spec.ts:8:5 › popup extension

[3/3] [Desktop Chrome] › extension.spec.ts:3:5 › popup localhost

 HTTP  10/29/2023 1:06:20 PM ::1 GET /popup

 HTTP  10/29/2023 1:06:20 PM ::1 Returned 200 in 31 ms

 HTTP  10/29/2023 1:06:20 PM ::1 GET /popup.js

 HTTP  10/29/2023 1:06:20 PM ::1 GET /content_script.js

 HTTP  10/29/2023 1:06:20 PM ::1 Returned 200 in 5 ms

 HTTP  10/29/2023 1:06:20 PM ::1 Returned 200 in 8 ms

 HTTP  10/29/2023 1:06:20 PM ::1 GET /extension_bg-XHJANPGH.wasm

 HTTP  10/29/2023 1:06:20 PM ::1 Returned 200 in 8 ms

 HTTP  10/29/2023 1:06:20 PM ::1 GET /favicon.ico

 HTTP  10/29/2023 1:06:20 PM ::1 Returned 404 in 6 ms

  3 passed (11.3s)



To open last HTML report run:



  npx playwright show-report



In [ ]:
{ . "$ScriptDir/../apps/chat/build.ps1" } | Invoke-Block
    Finished release [optimized] target(s) in 2.48s

## 7

    Finished release [optimized] target(s) in 21.84s

     Running `target/release/chat_contract_tests`





new: ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 5296605557370,

    },

    transaction: ExecutionOutcome {

        transaction_hash: vamZJgZ8GM8xGmLo17op1f8HZJNJWopt91e7CJKNs43,

        block_hash: 5j5TussJqtVUCMWHFt7rLK9egpxNxuTfqsDu8UZbybHd,

        logs: [],

        receipt_ids: [

            6DPWrdaXyV7zmXHiYgVmcpTfRfjuCW29SSQYfEkDJyKG,

        ],

        gas_burnt: NearGas {

            inner: 2427927707802,

        },

        tokens_burnt: 242792770780200000000,

        executor_id: AccountId(

            "dev-20231029170701-75469099887688",

        ),

        status: SuccessReceiptId(6DPWrdaXyV7zmXHiYgVmcpTfRfjuCW29SSQYfEkDJyKG),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: 6DPWrdaXyV7zmXHiYgVmcpTfRfjuCW29SSQYfEkDJyKG,

            block_hash: 5j5TussJqtVUCMWHFt7rLK9egpxNxuTfqsDu8UZbybHd,

            logs: [],

            receipt_ids: [

                NKzJWyBWiUofbirjoJMmWm4nKF9J1vbpt3FCDAAwPA4,

            ],

            gas_burnt: NearGas {

                inner: 2645495287068,

            },

            tokens_burnt: 264549528706800000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: NKzJWyBWiUofbirjoJMmWm4nKF9J1vbpt3FCDAAwPA4,

            block_hash: AtrCTzkE5CySxqf9mnra75BNWfstiZaC7YrHELuzoMDy,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.00353813251232316

outcome (success: true):

  outcome_gas_burnt_usd: 0.001621855708811736

  outcome_tokens_burnt_usd: 0.001621855708811736

outcome (success: true):

  outcome_gas_burnt_usd: 0.001767190851761424

  outcome_tokens_burnt_usd: 0.001767190851761424

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





claim_alias(contract, ''): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 5293307489320,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 5bedbXVB1K3jR1BUADJ56Fhj4kKkrYNc6qfeCPcj6RM2,

        block_hash: 3g636rauWqfs1FPdJ3v7oGoYQqtdb9WWqEwWiQKcwwPp,

        logs: [],

        receipt_ids: [

            FKaCQeEsgj4Yn6wWM5vMLvwSa71vKNA4CPNGrRHFWUv2,

        ],

        gas_burnt: NearGas {

            inner: 2427972426482,

        },

        tokens_burnt: 242797242648200000000,

        executor_id: AccountId(

            "dev-20231029170701-75469099887688",

        ),

        status: SuccessReceiptId(FKaCQeEsgj4Yn6wWM5vMLvwSa71vKNA4CPNGrRHFWUv2),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: FKaCQeEsgj4Yn6wWM5vMLvwSa71vKNA4CPNGrRHFWUv2,

            block_hash: 3g636rauWqfs1FPdJ3v7oGoYQqtdb9WWqEwWiQKcwwPp,

            logs: [

                "claim_alias / alias: \"\" / account_id: AccountId(\n    \"dev-20231029170701-75469099887688\",\n) / timestamp: 1698599223177245580",

            ],

            receipt_ids: [

                DoZcw8Hac39M1S1Ca6QcZrVBcoKzAgqyBt91pKrfpzAX,

            ],

            gas_burnt: NearGas {

                inner: 2642152500338,

            },

            tokens_burnt: 264215250033800000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: Failure(ActionError(ActionError { index: Some(0), kind: FunctionCallError(ExecutionError("Smart contract panicked: Invalid alias")) })),

        },

        ExecutionOutcome {

            transaction_hash: DoZcw8Hac39M1S1Ca6QcZrVBcoKzAgqyBt91pKrfpzAX,

            block_hash: 31VrhvNi5P7oA57bReimPKv2ui5YsQkobR7B7q23WQcG,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

    ],

    status: Failure(ActionError(ActionError { index: Some(0), kind: FunctionCallError(ExecutionError("Smart contract panicked: Invalid alias")) })),

}

total_gas_burnt_usd: 0.00353592940286576

outcome (success: true):

  outcome_gas_burnt_usd: 0.001621885580889976

  outcome_tokens_burnt_usd: 0.0016218855808899759

outcome (success: false):

  outcome_gas_burnt_usd: 0.0017649578702257842

  outcome_tokens_burnt_usd: 0.0017649578702257837

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





dev_create_account(account1): Account {

    id: AccountId(

        "dev-20231029170703-15731046320883",

    ),

}





generate_cid_borsh(account1): ViewResultDetails {

    result: [

        59,

        0,

        0,

        0,

        98,

        97,

        102,

        107,

        114,

        101,

        105,

        104,

        100,

        119,

        100,

        99,

        101,

        102,

        103,

        104,

        52,

        100,

        113,

        107,

        106,

        118,

        54,

        55,

        117,

        122,

        99,

        109,

        119,

        55,

        111,

        106,

        101,

        101,

        54,

        120,

        101,

        100,

        122,

        100,

        101,

        116,

        111,

        106,

        117,

        122,

        106,

        101,

        118,

        116,

        101,

        110,

        120,

        113,

        117,

        118,

        121,

        107,

        117,

    ],

    logs: [],

}





claim_alias(account1, alias1): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 5920999705861,

    },

    transaction: ExecutionOutcome {

        transaction_hash: DVMg3i2ihERUo8oZk6wSVfUmLKhRTx683FZgEqsV48Qs,

        block_hash: 6jPtczXmwtwLQQnswPA1hU6PmJD6wUfq1CnBUUmXV72C,

        logs: [],

        receipt_ids: [

            Hopm262rrorYaavzdSvedifZ8Zc3AjYcW97ni7Sv1nWT,

        ],

        gas_burnt: NearGas {

            inner: 2427985842086,

        },

        tokens_burnt: 242798584208600000000,

        executor_id: AccountId(

            "dev-20231029170703-15731046320883",

        ),

        status: SuccessReceiptId(Hopm262rrorYaavzdSvedifZ8Zc3AjYcW97ni7Sv1nWT),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: Hopm262rrorYaavzdSvedifZ8Zc3AjYcW97ni7Sv1nWT,

            block_hash: 248sRufYi1LxEpuLXFuhwj21B8FWcMGp5Lt6yFFZHK5a,

            logs: [

                "claim_alias / alias: \"alias1\" / account_id: AccountId(\n    \"dev-20231029170703-15731046320883\",\n) / timestamp: 1698599225002038233",

            ],

            receipt_ids: [

                EVRJnLcZBFULUr9zycNhDre6xyAiZsQirVxJ4e5wG9kP,

            ],

            gas_burnt: NearGas {

                inner: 3269831301275,

            },

            tokens_burnt: 326983130127500000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: EVRJnLcZBFULUr9zycNhDre6xyAiZsQirVxJ4e5wG9kP,

            block_hash: 72HkhsaiS7Jdw7FQvu2RqL1y6ScdUf1KZM5A3cZkZGFV,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170703-15731046320883",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.003955227803515148

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016218945425134478

  outcome_tokens_burnt_usd: 0.001621894542513448

outcome (success: true):

  outcome_gas_burnt_usd: 0.0021842473092517

  outcome_tokens_burnt_usd: 0.0021842473092517

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





claim_alias(account1, alias1): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 5562755887684,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 9LDpf8rwVvNMMKNwXgMGPFdCfVCnbQ7sobKcULaKvkhK,

        block_hash: DqTdyzK58ZLtkYJFrgJWbCASLu1DFk4LsP9E3o3924oL,

        logs: [],

        receipt_ids: [

            DuujWXrto39Qq155XjoGfcDDeLNEeKBkypPEfCWxnkWK,

        ],

        gas_burnt: NearGas {

            inner: 2427985842086,

        },

        tokens_burnt: 242798584208600000000,

        executor_id: AccountId(

            "dev-20231029170703-15731046320883",

        ),

        status: SuccessReceiptId(DuujWXrto39Qq155XjoGfcDDeLNEeKBkypPEfCWxnkWK),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: DuujWXrto39Qq155XjoGfcDDeLNEeKBkypPEfCWxnkWK,

            block_hash: 98Czf2KMtpiQKnYXVC8aVrqtdMmqXgpu7mBiqDqAwhPq,

            logs: [

                "claim_alias / alias: \"alias1\" / account_id: AccountId(\n    \"dev-20231029170703-15731046320883\",\n) / timestamp: 1698599226015581671",

                "Alias already claimed",

            ],

            receipt_ids: [

                Cef93yT5dpVPP6rGNU6o6vdZJSyqgir2GFqaejQcz9g9,

            ],

            gas_burnt: NearGas {

                inner: 2911587483098,

            },

            tokens_burnt: 291158748309800000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: Cef93yT5dpVPP6rGNU6o6vdZJSyqgir2GFqaejQcz9g9,

            block_hash: DyEvP1EVsBs3kAz8gFcS92xBseayiDu2tNCyTst7SSZN,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170703-15731046320883",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.0037159209329729118

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016218945425134478

  outcome_tokens_burnt_usd: 0.001621894542513448

outcome (success: true):

  outcome_gas_burnt_usd: 0.001944940438709464

  outcome_tokens_burnt_usd: 0.001944940438709464

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





get_account_info(account1): Some(

    (

        "alias1",

        (

            1698599225002038233,

            0,

        ),

    ),

)





get_alias_map(account1, alias1): Some(

    {

        AccountId(

            "dev-20231029170703-15731046320883",

        ): (

            1698599225002038233,

            0,

        ),

    },

)





dev_create_account(account2): Account {

    id: AccountId(

        "dev-20231029170706-24101043804481",

    ),

}





claim_alias(alias2): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 6045113397343,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 8Uvhs4BHPekCp6NKtGfMa6uEJHhdEinzboWL3Mru6nc5,

        block_hash: A9nvPyizGi7CnwW2VsuVbXzFWGEvytXg2KH5iYULJhZd,

        logs: [],

        receipt_ids: [

            JBingKjgoVwuzsZ5kEh98xoABYVQwM6diHCp8fKi1JRH,

        ],

        gas_burnt: NearGas {

            inner: 2427985842086,

        },

        tokens_burnt: 242798584208600000000,

        executor_id: AccountId(

            "dev-20231029170706-24101043804481",

        ),

        status: SuccessReceiptId(JBingKjgoVwuzsZ5kEh98xoABYVQwM6diHCp8fKi1JRH),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: JBingKjgoVwuzsZ5kEh98xoABYVQwM6diHCp8fKi1JRH,

            block_hash: BkTgg2B7a3sUwSVtntctw68pUEJBkS7r9e9UmpAA9yMt,

            logs: [

                "claim_alias / alias: \"alias2\" / account_id: AccountId(\n    \"dev-20231029170706-24101043804481\",\n) / timestamp: 1698599228044905829",

            ],

            receipt_ids: [

                GdvpTeZSyCMbp3Mb8JS5cgJGiFBkqRXP7c65KAm2Edon,

            ],

            gas_burnt: NearGas {

                inner: 3393944992757,

            },

            tokens_burnt: 339394499275700000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: GdvpTeZSyCMbp3Mb8JS5cgJGiFBkqRXP7c65KAm2Edon,

            block_hash: CpdQEL1ccWyhoeCxLqZXZXjwkLE5wPpgEK23apFC6yhE,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170706-24101043804481",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.0040381357494251235

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016218945425134478

  outcome_tokens_burnt_usd: 0.001621894542513448

outcome (success: true):

  outcome_gas_burnt_usd: 0.002267155255161676

  outcome_tokens_burnt_usd: 0.0022671552551616755

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





get_account_info(account2): Some(

    (

        "alias2",

        (

            1698599228044905829,

            0,

        ),

    ),

)





get_alias_map_borsh(alias2): Some(

    {

        AccountId(

            "dev-20231029170706-24101043804481",

        ): (

            1698599228044905829,

            0,

        ),

    },

)





claim_alias(account2, alias1): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 6108668020402,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 7FoLUVA9pdskx3gaeavQyZ2n5DghfNfhEQsafc8gHYus,

        block_hash: G58bHBVh3u8PNaRzoWrrhftr7UMBg2iaWvNSiAj9ADjd,

        logs: [],

        receipt_ids: [

            BWvUn31JSjv4K8VbzTskBRDzvUJimgmN7BkccFH2bs8o,

        ],

        gas_burnt: NearGas {

            inner: 2427985842086,

        },

        tokens_burnt: 242798584208600000000,

        executor_id: AccountId(

            "dev-20231029170706-24101043804481",

        ),

        status: SuccessReceiptId(BWvUn31JSjv4K8VbzTskBRDzvUJimgmN7BkccFH2bs8o),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: BWvUn31JSjv4K8VbzTskBRDzvUJimgmN7BkccFH2bs8o,

            block_hash: 91sJS2Ue8tmyQzYtr4GNkCUFDunTMrvtSd8FMdg9q44z,

            logs: [

                "claim_alias / alias: \"alias1\" / account_id: AccountId(\n    \"dev-20231029170706-24101043804481\",\n) / timestamp: 1698599229061392826",

            ],

            receipt_ids: [

                7Ebbpm3WdkCezaSA1Je1Lo9u3dqCtFaUdVN6in3rbpXC,

            ],

            gas_burnt: NearGas {

                inner: 3457499615816,

            },

            tokens_burnt: 345749961581600000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: 7Ebbpm3WdkCezaSA1Je1Lo9u3dqCtFaUdVN6in3rbpXC,

            block_hash: BdHwNUkq5M1EqJfWxmeoTXAV7uEDutzi6XWeYNrL1V6N,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170706-24101043804481",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.004080590237628536

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016218945425134478

  outcome_tokens_burnt_usd: 0.001621894542513448

outcome (success: true):

  outcome_gas_burnt_usd: 0.002309609743365088

  outcome_tokens_burnt_usd: 0.002309609743365088

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





get_account_info(account2): Some(

    (

        "alias1",

        (

            1698599229061392826,

            1,

        ),

    ),

)





get_alias_map(account2, alias1): Some(

    {

        AccountId(

            "dev-20231029170703-15731046320883",

        ): (

            1698599225002038233,

            0,

        ),

        AccountId(

            "dev-20231029170706-24101043804481",

        ): (

            1698599229061392826,

            1,

        ),

    },

)





get_alias_map(account2, alias2): Some(

    {},

)





claim_alias(account1, alias2): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 6104439054562,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 57gRwPqvbdH7NPZcd7FDArgUYR6CrHzu3YaCR5Xajmd3,

        block_hash: 49Mk61jW4YmfJKzHPqVXCwsiRJDUpqobHNaXsxqUXzsa,

        logs: [],

        receipt_ids: [

            HfogmrEcphxhTXTkeEuydXn5hGMFi1ACw2mt5Dr812rk,

        ],

        gas_burnt: NearGas {

            inner: 2427985842086,

        },

        tokens_burnt: 242798584208600000000,

        executor_id: AccountId(

            "dev-20231029170703-15731046320883",

        ),

        status: SuccessReceiptId(HfogmrEcphxhTXTkeEuydXn5hGMFi1ACw2mt5Dr812rk),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: HfogmrEcphxhTXTkeEuydXn5hGMFi1ACw2mt5Dr812rk,

            block_hash: EQBrVh3oT6k5u7KThgjy9GzXRAJxtk1w4KTv3WaJHHL5,

            logs: [

                "claim_alias / alias: \"alias2\" / account_id: AccountId(\n    \"dev-20231029170703-15731046320883\",\n) / timestamp: 1698599230078143121",

            ],

            receipt_ids: [

                BFxfxXQF2XjLYNf4QhEeEWP7dJXWbNj4Lsz4k2mQiXGH,

            ],

            gas_burnt: NearGas {

                inner: 3453270649976,

            },

            tokens_burnt: 345327064997600000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: BFxfxXQF2XjLYNf4QhEeEWP7dJXWbNj4Lsz4k2mQiXGH,

            block_hash: ETi1gqF1L1kiMqTETvMiU6Ab54k1YSCcHgiuB3WvMiUv,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170703-15731046320883",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.004077765288447416

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016218945425134478

  outcome_tokens_burnt_usd: 0.001621894542513448

outcome (success: true):

  outcome_gas_burnt_usd: 0.002306784794183968

  outcome_tokens_burnt_usd: 0.0023067847941839674

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





get_account_info(account1): Some(

    (

        "alias2",

        (

            1698599230078143121,

            0,

        ),

    ),

)





get_alias_map(account1, alias2): Some(

    {

        AccountId(

            "dev-20231029170703-15731046320883",

        ): (

            1698599230078143121,

            0,

        ),

    },

)





get_alias_map(account1, alias1): Some(

    {

        AccountId(

            "dev-20231029170706-24101043804481",

        ): (

            1698599229061392826,

            1,

        ),

    },

)





claim_alias(account1, alias1): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 6108668020402,

    },

    transaction: ExecutionOutcome {

        transaction_hash: DZQH69vnZhg2fGxivj2TrZ3BUfsCi9nRojxoRXVSivQU,

        block_hash: CTwZyuzYN2dvQdHjPQ3oci3npk8adXiw5mDALz8FyWB1,

        logs: [],

        receipt_ids: [

            31xn4s32V7TE3oUDEoSqfXVFzTDPzYWm8dJBzM1mV5dn,

        ],

        gas_burnt: NearGas {

            inner: 2427985842086,

        },

        tokens_burnt: 242798584208600000000,

        executor_id: AccountId(

            "dev-20231029170703-15731046320883",

        ),

        status: SuccessReceiptId(31xn4s32V7TE3oUDEoSqfXVFzTDPzYWm8dJBzM1mV5dn),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: 31xn4s32V7TE3oUDEoSqfXVFzTDPzYWm8dJBzM1mV5dn,

            block_hash: 4FCPgNnC7zWigqdcwKxtceKvsNHJiC2Tt6mkhwGVRcCH,

            logs: [

                "claim_alias / alias: \"alias1\" / account_id: AccountId(\n    \"dev-20231029170703-15731046320883\",\n) / timestamp: 1698599231296819594",

            ],

            receipt_ids: [

                FPd9wkdYQCgHZsmtFjmwbSQP2wFaLMmtjVyzhvbBvsC4,

            ],

            gas_burnt: NearGas {

                inner: 3457499615816,

            },

            tokens_burnt: 345749961581600000000,

            executor_id: AccountId(

                "dev-20231029170701-75469099887688",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: FPd9wkdYQCgHZsmtFjmwbSQP2wFaLMmtjVyzhvbBvsC4,

            block_hash: HQaN2VPbfmYSqvyTFN37UmL2qbJEGmHeDdy9vswcUFcA,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029170703-15731046320883",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.004080590237628536

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016218945425134478

  outcome_tokens_burnt_usd: 0.001621894542513448

outcome (success: true):

  outcome_gas_burnt_usd: 0.002309609743365088

  outcome_tokens_burnt_usd: 0.002309609743365088

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





get_account_info(account1): Some(

    (

        "alias1",

        (

            1698599231296819594,

            1,

        ),

    ),

)





get_alias_map(account1, alias1): Some(

    {

        AccountId(

            "dev-20231029170703-15731046320883",

        ): (

            1698599231296819594,

            1,

        ),

        AccountId(

            "dev-20231029170706-24101043804481",

        ): (

            1698599229061392826,

            0,

        ),

    },

)





get_alias_map(account1, alias2): Some(

    {},

)



Rebuilding...



Done in 343ms.

2023-10-29T17:07:23.962448Z  INFO 📦 starting build

2023-10-29T17:07:23.963324Z  INFO spawning asset pipelines

2023-10-29T17:07:24.970060Z  INFO building chat

2023-10-29T17:07:24.970084Z  INFO copying & hashing icon path="\\\\?\\C:\\home\\git\\polyglot\\apps\\chat\\ui\\public\\favicon.ico"

2023-10-29T17:07:24.970092Z  INFO copying & hashing css path="\\\\?\\C:\\home\\git\\polyglot\\apps\\chat\\ui\\target\\tailwind.css"

2023-10-29T17:07:24.970103Z  INFO copying & hashing css path="\\\\?\\C:\\home\\git\\polyglot\\deps\\hyperui\\public\\components.css"

2023-10-29T17:07:24.971514Z  INFO finished copying & hashing css path="\\\\?\\C:\\home\\git\\polyglot\\apps\\chat\\ui\\target\\tailwind.css"

2023-10-29T17:07:24.971716Z  INFO finished copying & hashing css path="\\\\?\\C:\\home\\git\\polyglot\\deps\\hyperui\\public\\components.css"

2023-10-29T17:07:24.972561Z  INFO finished copying & hashing icon path="\\\\?\\C:\\home\\git\\polyglot\\apps\\chat\\ui\\public\\favicon.ico"

    Finished release [optimized] target(s) in 3.37s

2023-10-29T17:07:28.481401Z  INFO fetching cargo artifacts

2023-10-29T17:07:28.953164Z  INFO processing WASM for chat

2023-10-29T17:07:28.988788Z  INFO calling wasm-bindgen for chat

2023-10-29T17:07:29.243295Z  INFO copying generated wasm-bindgen artifacts

2023-10-29T17:07:29.544335Z  INFO using system installed binary app=wasm-opt version=version_113

2023-10-29T17:07:29.545710Z  INFO calling wasm-opt

2023-10-29T17:07:41.106495Z  INFO copying generated wasm-opt artifacts

2023-10-29T17:07:41.114925Z  INFO applying new distribution

2023-10-29T17:07:41.119618Z  INFO ✅ success



Build completed!



Filename                                     	Size      

dist\favicon-f1d578da7a480441.ico            	16.28 KiB 

dist\chat-6c642e3abd6918f7_bg.wasm           	910.39 KiB

dist\chat-6c642e3abd6918f7.js                	49.12 KiB 

dist/tailwind-25555618daee4860-QTLKFJWP.css  	6.93 KiB  

dist/components-61317960c9987b2e-YWB32TZ5.css	78.01 KiB 

dist/1-EDJZWDIX.js                           	23.59 KiB 

dist\index.html                              	1.18 KiB  

                                             	——————————

                                             	1.06 MiB  



Lockfile is up to date, resolution step is skipped

Already up to date



Done in 1.2s



> polyglot@ test:e2e C:\home\git\polyglot\apps\chat\ui\e2e

> playwright test



 INFO  Accepting connections at http://localhost:3000

 HTTP  10/29/2023 1:07:51 PM ::1 GET /

 HTTP  10/29/2023 1:07:51 PM ::1 Returned 200 in 43 ms



Running 1 test using 1 worker



[1/1] [Desktop Chrome] › test.spec.ts:3:5 › test

 HTTP  10/29/2023 1:07:53 PM ::1 GET /

 HTTP  10/29/2023 1:07:53 PM ::1 Returned 200 in 3 ms

 HTTP  10/29/2023 1:07:53 PM ::1 GET /tailwind-25555618daee4860-QTLKFJWP.css

 HTTP  10/29/2023 1:07:53 PM ::1 Returned 200 in 3 ms

 HTTP  10/29/2023 1:07:53 PM ::1 GET /components-61317960c9987b2e-YWB32TZ5.css

 HTTP  10/29/2023 1:07:53 PM ::1 GET /chat-6c642e3abd6918f7_bg.wasm

 HTTP  10/29/2023 1:07:53 PM ::1 GET /1-EDJZWDIX.js

 HTTP  10/29/2023 1:07:53 PM ::1 Returned 200 in 6 ms

 HTTP  10/29/2023 1:07:53 PM ::1 Returned 200 in 8 ms

 HTTP  10/29/2023 1:07:53 PM ::1 Returned 200 in 15 ms

  1 passed (10.0s)



To open last HTML report run:



  npx playwright show-report



In [ ]:
{ . "$ScriptDir/../apps/dice/build.ps1" } | Invoke-Block
00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\apps\dice\fsharp

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../../scripts/invoke-dib.ps1 dice_fsharp.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # dice_fsharp (Polyglot)                                                     │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > #!import ../../../lib/fsharp/Testing.dib

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:03 #21 [Verbose] > #r

00:00:03 #22 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

00:00:03 #23 [Verbose] > spNetCore.Html.Abstractions.dll"

00:00:03 #24 [Verbose] > #r

00:00:03 #25 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #26 [Verbose] > otNet.Interactive.dll"

00:00:03 #27 [Verbose] > #r

00:00:03 #28 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #29 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:03 #30 [Verbose] > #r

00:00:03 #31 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:03 #32 [Verbose] > otNet.Interactive.Formatting.dll"

00:00:03 #33 [Verbose] > open System

00:00:03 #34 [Verbose] > open System.IO

00:00:03 #35 [Verbose] > open System.Text

00:00:03 #36 [Verbose] > open Microsoft.DotNet.Interactive.Formatting

00:00:06 #37 [Verbose] >

00:00:06 #38 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:06 #39 [Verbose] > #r

00:00:06 #40 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:06 #41 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:06 #42 [Verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

00:00:06 #43 [Verbose] > #r

00:00:06 #44 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:06 #45 [Verbose] > otNet.Interactive.dll"

00:00:06 #46 [Verbose] > open type Microsoft.DotNet.Interactive.Kernel

00:00:06 #47 [Verbose] >

00:00:06 #48 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:06 #49 [Verbose] > #r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"

00:00:06 #50 [Verbose] >

00:00:06 #51 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:06 #52 [Verbose] > //// test

00:00:06 #53 [Verbose] >

00:00:06 #54 [Verbose] > Formatter.ListExpansionLimit <- 100

00:00:07 #55 [Verbose] >

00:00:07 #56 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #57 [Verbose] > //// test

00:00:07 #58 [Verbose] >

00:00:07 #59 [Verbose] > type AssertExceptionFormatter (ex) =

00:00:07 #60 [Verbose] >     member _.Text =

00:00:07 #61 [Verbose] >         ex.ToString()

00:00:07 #62 [Verbose] >             .Replace("32m", "<span style=\"color: green;\">")

00:00:07 #63 [Verbose] >             .Replace("36m", "</span>")

00:00:07 #64 [Verbose] >             .Replace("31m", "<span style=\"color: red;\">")

00:00:07 #65 [Verbose] >             .Replace("\n", "<br/>\n")

00:00:07 #66 [Verbose] >

00:00:07 #67 [Verbose] >

00:00:07 #68 [Verbose] > Formatter.Register<AssertExceptionFormatter> ((fun (x :

00:00:07 #69 [Verbose] > AssertExceptionFormatter) -> x.Text), "text/html")

00:00:07 #70 [Verbose] >

00:00:07 #71 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:07 #72 [Verbose] > //// test

00:00:07 #73 [Verbose] >

00:00:07 #74 [Verbose] > let inline __expect fn log expected actual =

00:00:07 #75 [Verbose] >     if log then printfn $"{actual.ToDisplayString ()}"

00:00:07 #76 [Verbose] >     try

00:00:07 #77 [Verbose] >         "Testing.__expect" |> fn actual expected

00:00:07 #78 [Verbose] >     with :? Expecto.AssertException as ex ->

00:00:07 #79 [Verbose] >         AssertExceptionFormatter(ex).Display () |> ignore

00:00:07 #80 [Verbose] >         failwith (ex.GetType().FullName)

00:00:07 #81 [Verbose] >

00:00:07 #82 [Verbose] > let inline __contains log expected actual = __expect Expecto.Expect.contains log

00:00:07 #83 [Verbose] > expected actual

00:00:07 #84 [Verbose] > let inline _contains expected actual = __contains true expected actual

00:00:07 #85 [Verbose] >

00:00:07 #86 [Verbose] > let inline __equal log expected actual = __expect Expecto.Expect.equal log

00:00:07 #87 [Verbose] > expected actual

00:00:07 #88 [Verbose] > let inline _equal expected actual = __equal true expected actual

00:00:07 #89 [Verbose] >

00:00:07 #90 [Verbose] > let inline __isGreaterThan log expected actual = __expect

00:00:07 #91 [Verbose] > Expecto.Expect.isGreaterThan log expected actual

00:00:07 #92 [Verbose] > let ...

00:00:08 #93 [Verbose] >

00:00:08 #94 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:08 #95 [Verbose] > //// test

00:00:08 #96 [Verbose] >

00:00:08 #97 [Verbose] > let inline __isBetween log a b actual =

00:00:08 #98 [Verbose] >     let inline isBetween actual (a, b) _ =

00:00:08 #99 [Verbose] >         __isGreaterThanOrEqual log a actual

00:00:08 #100 [Verbose] >         __isLessThanOrEqual log b actual

00:00:08 #101 [Verbose] >     __expect isBetween log (a, b) actual

00:00:08 #102 [Verbose] > let inline _isBetween a b actual = __isBetween true a b actual

00:00:08 #103 [Verbose] >

00:00:08 #104 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:08 #105 [Verbose] > #!import ../../../lib/fsharp/Common.fs

00:00:08 #106 [Verbose] >

00:00:08 #107 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:08 #108 [Verbose] > #if !INTERACTIVE

00:00:08 #109 [Verbose] > namespace Polyglot

00:00:08 #110 [Verbose] > #endif

00:00:08 #111 [Verbose] >

00:00:08 #112 [Verbose] > module Common =

00:00:08 #113 [Verbose] >

00:00:08 #114 [Verbose] >     let nl = System.Environment.NewLine

00:00:08 #115 [Verbose] >     let q = @""""

00:00:08 #116 [Verbose] >

00:00:08 #117 [Verbose] >     let inline cons head tail = head :: tail

00:00:08 #118 [Verbose] >

00:00:08 #119 [Verbose] >     module String =

00:00:08 #120 [Verbose] >         let inline contains (value : string) (input : string) =

00:00:08 #121 [Verbose] >             input.Contains value

00:00:08 #122 [Verbose] >

00:00:08 #123 [Verbose] >         let inline endsWith (value : string) (input : string) =

00:00:08 #124 [Verbose] >             input.EndsWith value

00:00:08 #125 [Verbose] >

00:00:08 #126 [Verbose] >         let inline padLeft totalWidth paddingChar (input : string) =

00:00:08 #127 [Verbose] >             input.PadLeft (totalWidth, paddingChar)

00:00:08 #128 [Verbose] >

00:00:08 #129 [Verbose] >         let inline replace (oldValue : string) (newValue : string) (input :

00:00:08 #130 [Verbose] > string) =

00:00:08 #131 [Verbose] >             input.Replace (oldValue, newValue)

00:00:08 #132 [Verbose] >

00:00:08 #133 [Verbose] >         let inline split separator (input : string) =

00:00:08 #134 [Verbose] >             input.Split separator

00:00:08 #135 [Verbose] >

00:00:08 #136 [Verbose] >         let inline spli...

00:00:09 #137 [Verbose] >

00:00:09 #138 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #139 [Verbose] > open Common

00:00:09 #140 [Verbose] >

00:00:09 #141 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #142 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #143 [Verbose] > │ ## sixthPowerSequence                                                        │

00:00:09 #144 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #145 [Verbose] >

00:00:09 #146 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #147 [Verbose] > let sixthPowerSequence = 1 |> Seq.unfold (fun state -> Some (state, state * 6))

00:00:09 #148 [Verbose] > |> Seq.cache

00:00:09 #149 [Verbose] >

00:00:09 #150 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #151 [Verbose] > //// test

00:00:09 #152 [Verbose] >

00:00:09 #153 [Verbose] > sixthPowerSequence

00:00:09 #154 [Verbose] > |> Seq.take 8

00:00:09 #155 [Verbose] > |> Seq.toList

00:00:09 #156 [Verbose] > |> _equal [[ 1; 6; 36; 216; 1296; 7776; 46656; 279936 ]]

00:00:09 #157 [Verbose] >

00:00:09 #158 [Verbose] > ╭─[ 59.95ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #159 [Verbose] > │ [ 1, 6, 36, 216, 1296, 7776, 46656, 279936 ]                                 │

00:00:09 #160 [Verbose] > │                                                                              │

00:00:09 #161 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #162 [Verbose] >

00:00:09 #163 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #164 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #165 [Verbose] > │ ## accumulateDiceRolls                                                       │

00:00:09 #166 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #167 [Verbose] >

00:00:09 #168 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #169 [Verbose] > let rec accumulateDiceRolls log rolls power acc =

00:00:09 #170 [Verbose] >     match rolls with

00:00:09 #171 [Verbose] >     | _ when power < 0 ->

00:00:09 #172 [Verbose] >         log |> Option.iter ((|>) $"accumulateDiceRolls / power: {power} / acc:

00:00:09 #173 [Verbose] > {acc}")

00:00:09 #174 [Verbose] >         Some (acc + 1, rolls)

00:00:09 #175 [Verbose] >     | [[]] -> None

00:00:09 #176 [Verbose] >     | roll :: rest when roll > 1 ->

00:00:09 #177 [Verbose] >         let coeff = sixthPowerSequence |> Seq.item power

00:00:09 #178 [Verbose] >         let value = (roll - 1) * coeff

00:00:09 #179 [Verbose] >         log |> Option.iter ((|>) $"accumulateDiceRolls / \

00:00:09 #180 [Verbose] >             power: {power} / acc: {acc} / roll: {roll} / value: {value}"

00:00:09 #181 [Verbose] >         )

00:00:09 #182 [Verbose] >         accumulateDiceRolls log rest (power - 1) (acc + value)

00:00:09 #183 [Verbose] >     | roll :: rest ->

00:00:09 #184 [Verbose] >         log |> Option.iter ((|>) $"accumulateDiceRolls / power: {power} / acc:

00:00:09 #185 [Verbose] > {acc} / roll: {roll}")

00:00:09 #186 [Verbose] >         accumulateDiceRolls log rest (power - 1) acc

00:00:09 #187 [Verbose] >

00:00:09 #188 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #189 [Verbose] > //// test

00:00:09 #190 [Verbose] >

00:00:09 #191 [Verbose] > accumulateDiceRolls (Some (printfn "%s")) [[ 6; 5; 4; 3; 2 ]] 0 1000

00:00:09 #192 [Verbose] > |> _equal (Some (1006, [[ 5; 4; 3; 2 ]]))

00:00:09 #193 [Verbose] >

00:00:09 #194 [Verbose] > ╭─[ 35.05ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #195 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 1000 / roll: 6 / value: 5              │

00:00:09 #196 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 1005                                  │

00:00:09 #197 [Verbose] > │ FSharpOption<Tuple<Int32,FSharpList<Int32>>>                                 │

00:00:09 #198 [Verbose] > │       Value:       - 1006                                                    │

00:00:09 #199 [Verbose] > │       - [ 5, 4, 3, 2 ]                                                       │

00:00:09 #200 [Verbose] > │                                                                              │

00:00:09 #201 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #202 [Verbose] >

00:00:09 #203 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #204 [Verbose] > //// test

00:00:09 #205 [Verbose] >

00:00:09 #206 [Verbose] > accumulateDiceRolls (Some (printfn "%s")) [[ 6; 5; 4; 3; 2 ]] 1 1000

00:00:09 #207 [Verbose] > |> _equal (Some (1035, [[ 4; 3; 2 ]]))

00:00:09 #208 [Verbose] >

00:00:09 #209 [Verbose] > ╭─[ 23.10ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #210 [Verbose] > │ accumulateDiceRolls / power: 1 / acc: 1000 / roll: 6 / value: 30             │

00:00:09 #211 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 1030 / roll: 5 / value: 4              │

00:00:09 #212 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 1034                                  │

00:00:09 #213 [Verbose] > │ FSharpOption<Tuple<Int32,FSharpList<Int32>>>                                 │

00:00:09 #214 [Verbose] > │       Value:       - 1035                                                    │

00:00:09 #215 [Verbose] > │       - [ 4, 3, 2 ]                                                          │

00:00:09 #216 [Verbose] > │                                                                              │

00:00:09 #217 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #218 [Verbose] >

00:00:09 #219 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #220 [Verbose] > //// test

00:00:09 #221 [Verbose] >

00:00:09 #222 [Verbose] > accumulateDiceRolls (Some (printfn "%s")) [[ 6; 5; 4; 3; 2 ]] 2 1000

00:00:09 #223 [Verbose] > |> _equal (Some (1208, [[ 3; 2 ]]))

00:00:09 #224 [Verbose] >

00:00:09 #225 [Verbose] > ╭─[ 31.10ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #226 [Verbose] > │ accumulateDiceRolls / power: 2 / acc: 1000 / roll: 6 / value: 180            │

00:00:09 #227 [Verbose] > │ accumulateDiceRolls / power: 1 / acc: 1180 / roll: 5 / value: 24             │

00:00:09 #228 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 1204 / roll: 4 / value: 3              │

00:00:09 #229 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 1207                                  │

00:00:09 #230 [Verbose] > │ FSharpOption<Tuple<Int32,FSharpList<Int32>>>                                 │

00:00:09 #231 [Verbose] > │       Value:       - 1208                                                    │

00:00:09 #232 [Verbose] > │       - [ 3, 2 ]                                                             │

00:00:09 #233 [Verbose] > │                                                                              │

00:00:09 #234 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #235 [Verbose] >

00:00:09 #236 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #237 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #238 [Verbose] > │ ## rollWithinBounds                                                          │

00:00:09 #239 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #240 [Verbose] >

00:00:09 #241 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #242 [Verbose] > let rollWithinBounds log max rolls =

00:00:09 #243 [Verbose] >     let power = List.length rolls - 1

00:00:09 #244 [Verbose] >     match accumulateDiceRolls log rolls power 0 with

00:00:09 #245 [Verbose] >     | Some (result, _) when result >= 1 && result <= max -> Some result

00:00:09 #246 [Verbose] >     | _ -> None

00:00:09 #247 [Verbose] >

00:00:09 #248 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #249 [Verbose] > //// test

00:00:09 #250 [Verbose] >

00:00:09 #251 [Verbose] > rollWithinBounds (Some (printfn "%s")) 2000 [[ 1; 5; 4; 4; 5 ]]

00:00:09 #252 [Verbose] > |> _equal (Some 995)

00:00:09 #253 [Verbose] >

00:00:09 #254 [Verbose] > ╭─[ 24.76ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #255 [Verbose] > │ accumulateDiceRolls / power: 4 / acc: 0 / roll: 1                            │

00:00:09 #256 [Verbose] > │ accumulateDiceRolls / power: 3 / acc: 0 / roll: 5 / value: 864               │

00:00:09 #257 [Verbose] > │ accumulateDiceRolls / power: 2 / acc: 864 / roll: 4 / value: 108             │

00:00:09 #258 [Verbose] > │ accumulateDiceRolls / power: 1 / acc: 972 / roll: 4 / value: 18              │

00:00:09 #259 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 990 / roll: 5 / value: 4               │

00:00:09 #260 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 994                                   │

00:00:09 #261 [Verbose] > │ FSharpOption<Int32>                                                          │

00:00:09 #262 [Verbose] > │       Value: 995                                                             │

00:00:09 #263 [Verbose] > │                                                                              │

00:00:09 #264 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #265 [Verbose] >

00:00:09 #266 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #267 [Verbose] > //// test

00:00:09 #268 [Verbose] >

00:00:09 #269 [Verbose] > rollWithinBounds (Some (printfn "%s")) 2000 [[ 2; 2; 6; 4; 5 ]]

00:00:09 #270 [Verbose] > |> _equal (Some 1715)

00:00:09 #271 [Verbose] >

00:00:09 #272 [Verbose] > ╭─[ 20.76ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #273 [Verbose] > │ accumulateDiceRolls / power: 4 / acc: 0 / roll: 2 / value: 1296              │

00:00:09 #274 [Verbose] > │ accumulateDiceRolls / power: 3 / acc: 1296 / roll: 2 / value: 216            │

00:00:09 #275 [Verbose] > │ accumulateDiceRolls / power: 2 / acc: 1512 / roll: 6 / value: 180            │

00:00:09 #276 [Verbose] > │ accumulateDiceRolls / power: 1 / acc: 1692 / roll: 4 / value: 18             │

00:00:09 #277 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 1710 / roll: 5 / value: 4              │

00:00:09 #278 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 1714                                  │

00:00:09 #279 [Verbose] > │ FSharpOption<Int32>                                                          │

00:00:09 #280 [Verbose] > │       Value: 1715                                                            │

00:00:09 #281 [Verbose] > │                                                                              │

00:00:09 #282 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #283 [Verbose] >

00:00:09 #284 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #285 [Verbose] > //// test

00:00:09 #286 [Verbose] >

00:00:09 #287 [Verbose] > rollWithinBounds (Some (printfn "%s")) 2000 [[ 4; 1; 1; 2; 3 ]]

00:00:09 #288 [Verbose] > |> _equal None

00:00:09 #289 [Verbose] >

00:00:09 #290 [Verbose] > ╭─[ 20.02ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #291 [Verbose] > │ accumulateDiceRolls / power: 4 / acc: 0 / roll: 4 / value: 3888              │

00:00:09 #292 [Verbose] > │ accumulateDiceRolls / power: 3 / acc: 3888 / roll: 1                         │

00:00:09 #293 [Verbose] > │ accumulateDiceRolls / power: 2 / acc: 3888 / roll: 1                         │

00:00:09 #294 [Verbose] > │ accumulateDiceRolls / power: 1 / acc: 3888 / roll: 2 / value: 6              │

00:00:09 #295 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 3894 / roll: 3 / value: 2              │

00:00:09 #296 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 3896                                  │

00:00:09 #297 [Verbose] > │ <null>                                                                       │

00:00:09 #298 [Verbose] > │                                                                              │

00:00:09 #299 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #300 [Verbose] >

00:00:09 #301 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #302 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #303 [Verbose] > │ ## calculateDiceCount                                                        │

00:00:09 #304 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #305 [Verbose] >

00:00:09 #306 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #307 [Verbose] > let inline calculateDiceCount log max =

00:00:09 #308 [Verbose] >     let rec loop n p =

00:00:09 #309 [Verbose] >         if p < max

00:00:09 #310 [Verbose] >         then loop (n + 1) (p * 6)

00:00:09 #311 [Verbose] >         else

00:00:09 #312 [Verbose] >             log |> Option.iter ((|>) $"calculateDiceCount / max: {max} / n: {n}

00:00:09 #313 [Verbose] > / p: {p}")

00:00:09 #314 [Verbose] >             n

00:00:09 #315 [Verbose] >     if max = 1

00:00:09 #316 [Verbose] >     then 1

00:00:09 #317 [Verbose] >     else loop 0 1

00:00:09 #318 [Verbose] >

00:00:09 #319 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #320 [Verbose] > //// test

00:00:09 #321 [Verbose] >

00:00:09 #322 [Verbose] > calculateDiceCount (Some (printfn "%s")) 36

00:00:09 #323 [Verbose] > |> _equal 2

00:00:09 #324 [Verbose] >

00:00:09 #325 [Verbose] > ╭─[ 25.11ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #326 [Verbose] > │ calculateDiceCount / max: 36 / n: 2 / p: 36                                  │

00:00:09 #327 [Verbose] > │ 2                                                                            │

00:00:09 #328 [Verbose] > │                                                                              │

00:00:09 #329 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #330 [Verbose] >

00:00:09 #331 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #332 [Verbose] > //// test

00:00:09 #333 [Verbose] >

00:00:09 #334 [Verbose] > calculateDiceCount (Some (printfn "%s")) 7777

00:00:09 #335 [Verbose] > |> _equal 6

00:00:09 #336 [Verbose] >

00:00:09 #337 [Verbose] > ╭─[ 22.23ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #338 [Verbose] > │ calculateDiceCount / max: 7777 / n: 6 / p: 46656                             │

00:00:09 #339 [Verbose] > │ 6                                                                            │

00:00:09 #340 [Verbose] > │                                                                              │

00:00:09 #341 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #342 [Verbose] >

00:00:09 #343 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #344 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #345 [Verbose] > │ ## rollDice                                                                  │

00:00:09 #346 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #347 [Verbose] >

00:00:09 #348 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #349 [Verbose] > #if FABLE_COMPILER_RUST

00:00:09 #350 [Verbose] > #if !CHAIN

00:00:09 #351 [Verbose] > let rollDice () : int =

00:00:09 #352 [Verbose] >     Fable.Core.RustInterop.emitRustExpr () "rand::Rng::gen_range(&mut

00:00:09 #353 [Verbose] > rand::thread_rng(), 1..7)"

00:00:09 #354 [Verbose] > #endif

00:00:09 #355 [Verbose] > #else

00:00:09 #356 [Verbose] > let private random = System.Random ()

00:00:09 #357 [Verbose] > let rollDice () =

00:00:09 #358 [Verbose] >     random.Next (1, 7)

00:00:09 #359 [Verbose] > #endif

00:00:09 #360 [Verbose] >

00:00:09 #361 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #362 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #363 [Verbose] > │ ## rotateNumber                                                              │

00:00:09 #364 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #365 [Verbose] >

00:00:09 #366 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #367 [Verbose] > let rotateNumber max n =

00:00:09 #368 [Verbose] >     (n - 1 + max) % max + 1

00:00:09 #369 [Verbose] >

00:00:09 #370 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #371 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #372 [Verbose] > │ ## rotateNumbers                                                             │

00:00:09 #373 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #374 [Verbose] >

00:00:09 #375 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #376 [Verbose] > let rotateNumbers max items =

00:00:09 #377 [Verbose] >     items |> Seq.map (rotateNumber max)

00:00:09 #378 [Verbose] >

00:00:09 #379 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #380 [Verbose] > //// test

00:00:09 #381 [Verbose] >

00:00:09 #382 [Verbose] > [[ -1 .. 14 ]]

00:00:09 #383 [Verbose] > |> rotateNumbers 6

00:00:09 #384 [Verbose] > |> Seq.toList

00:00:09 #385 [Verbose] > |> _equal [[ 5; 6; 1; 2; 3; 4; 5; 6; 1; 2; 3; 4; 5; 6; 1; 2 ]]

00:00:09 #386 [Verbose] >

00:00:09 #387 [Verbose] > ╭─[ 34.90ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #388 [Verbose] > │ [ 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2 ]                           │

00:00:09 #389 [Verbose] > │                                                                              │

00:00:09 #390 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #391 [Verbose] >

00:00:09 #392 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #393 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #394 [Verbose] > │ ## createSequentialRoller                                                    │

00:00:09 #395 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #396 [Verbose] >

00:00:09 #397 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #398 [Verbose] > let createSequentialRoller list =

00:00:09 #399 [Verbose] >     let mutable currentIndex = 0

00:00:09 #400 [Verbose] >     fun () ->

00:00:09 #401 [Verbose] >         match list |> List.tryItem currentIndex with

00:00:09 #402 [Verbose] >         | Some item ->

00:00:09 #403 [Verbose] >             currentIndex <- currentIndex + 1

00:00:09 #404 [Verbose] >             item

00:00:09 #405 [Verbose] >         | None ->

00:00:09 #406 [Verbose] >             failwith "createSequentialRoller / End of list"

00:00:09 #407 [Verbose] >

00:00:09 #408 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #409 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #410 [Verbose] > │ ## rollProgressively                                                         │

00:00:09 #411 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #412 [Verbose] >

00:00:09 #413 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #414 [Verbose] > let rollProgressively log roll reroll max =

00:00:09 #415 [Verbose] >     let power = (calculateDiceCount log max) - 1

00:00:09 #416 [Verbose] >     let rec loop rolls size =

00:00:09 #417 [Verbose] >         if size < power + 1

00:00:09 #418 [Verbose] >         then loop (roll () :: rolls) (size + 1)

00:00:09 #419 [Verbose] >         else

00:00:09 #420 [Verbose] >             match accumulateDiceRolls log rolls power 0 with

00:00:09 #421 [Verbose] >             | Some (result, _) when result <= max -> result

00:00:09 #422 [Verbose] >             | _ when reroll -> loop (List.init power (fun _ -> roll ())) power

00:00:09 #423 [Verbose] >             | _ -> loop (roll () :: rolls) (size + 1)

00:00:09 #424 [Verbose] >     loop [[]] 0

00:00:09 #425 [Verbose] >

00:00:09 #426 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #427 [Verbose] > //// test

00:00:09 #428 [Verbose] >

00:00:09 #429 [Verbose] > rollProgressively None rollDice false 1

00:00:09 #430 [Verbose] > |> _equal 1

00:00:09 #431 [Verbose] >

00:00:09 #432 [Verbose] > ╭─[ 20.26ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #433 [Verbose] > │ 1                                                                            │

00:00:09 #434 [Verbose] > │                                                                              │

00:00:09 #435 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #436 [Verbose] >

00:00:09 #437 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #438 [Verbose] > //// test

00:00:09 #439 [Verbose] >

00:00:09 #440 [Verbose] > let sequentialRoll = createSequentialRoller [[ 5; 4; 4; 5; 1 ]]

00:00:09 #441 [Verbose] >

00:00:09 #442 [Verbose] > rollProgressively (Some (printfn "%s")) sequentialRoll false 2000

00:00:09 #443 [Verbose] > |> _equal 995

00:00:09 #444 [Verbose] >

00:00:09 #445 [Verbose] > ╭─[ 20.98ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #446 [Verbose] > │ calculateDiceCount / max: 2000 / n: 5 / p: 7776                              │

00:00:09 #447 [Verbose] > │ accumulateDiceRolls / power: 4 / acc: 0 / roll: 1                            │

00:00:09 #448 [Verbose] > │ accumulateDiceRolls / power: 3 / acc: 0 / roll: 5 / value: 864               │

00:00:09 #449 [Verbose] > │ accumulateDiceRolls / power: 2 / acc: 864 / roll: 4 / value: 108             │

00:00:09 #450 [Verbose] > │ accumulateDiceRolls / power: 1 / acc: 972 / roll: 4 / value: 18              │

00:00:09 #451 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 990 / roll: 5 / value: 4               │

00:00:09 #452 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 994                                   │

00:00:09 #453 [Verbose] > │ 995                                                                          │

00:00:09 #454 [Verbose] > │                                                                              │

00:00:09 #455 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #456 [Verbose] >

00:00:09 #457 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #458 [Verbose] > //// test

00:00:09 #459 [Verbose] >

00:00:09 #460 [Verbose] > let sequentialRoll = createSequentialRoller [[ 5; 4; 4; 5; 2 ]]

00:00:09 #461 [Verbose] >

00:00:09 #462 [Verbose] > fun () -> rollProgressively (Some (printfn "%s")) sequentialRoll false 2000 |>

00:00:09 #463 [Verbose] > ignore

00:00:09 #464 [Verbose] > |> _throwsC (fun ex _ ->

00:00:09 #465 [Verbose] >     printException ex

00:00:09 #466 [Verbose] >     |> _equal "System.Exception: createSequentialRoller / End of list"

00:00:09 #467 [Verbose] > )

00:00:09 #468 [Verbose] >

00:00:09 #469 [Verbose] > ╭─[ 45.14ms - stdout ]─────────────────────────────────────────────────────────╮

00:00:09 #470 [Verbose] > │ FSI_0031+it@5-11                                                             │

00:00:09 #471 [Verbose] > │ calculateDiceCount / max: 2000 / n: 5 / p: 7776                              │

00:00:09 #472 [Verbose] > │ accumulateDiceRolls / power: 4 / acc: 0 / roll: 2 / value: 1296              │

00:00:09 #473 [Verbose] > │ accumulateDiceRolls / power: 3 / acc: 1296 / roll: 5 / value: 864            │

00:00:09 #474 [Verbose] > │ accumulateDiceRolls / power: 2 / acc: 2160 / roll: 4 / value: 108            │

00:00:09 #475 [Verbose] > │ accumulateDiceRolls / power: 1 / acc: 2268 / roll: 4 / value: 18             │

00:00:09 #476 [Verbose] > │ accumulateDiceRolls / power: 0 / acc: 2286 / roll: 5 / value: 4              │

00:00:09 #477 [Verbose] > │ accumulateDiceRolls / power: -1 / acc: 2290                                  │

00:00:09 #478 [Verbose] > │ System.Exception: createSequentialRoller / End of list                       │

00:00:09 #479 [Verbose] > │                                                                              │

00:00:09 #480 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #481 [Verbose] >

00:00:09 #482 [Verbose] > ── fsharp - ignored ────────────────────────────────────────────────────────────

00:00:09 #483 [Verbose] > //// ignore

00:00:09 #484 [Verbose] >

00:00:09 #485 [Verbose] > rollProgressively (Some (printfn "%s")) rollDice false 2000

00:00:09 #486 [Verbose] >

00:00:09 #487 [Verbose] > ── fsharp - ignored ────────────────────────────────────────────────────────────

00:00:09 #488 [Verbose] > //// ignore

00:00:09 #489 [Verbose] >

00:00:09 #490 [Verbose] > rollProgressively (Some (printfn "%s")) rollDice true 2000

00:00:09 #491 [Verbose] >

00:00:09 #492 [Verbose] > ── fsharp - ignored ────────────────────────────────────────────────────────────

00:00:09 #493 [Verbose] > //// ignore

00:00:09 #494 [Verbose] >

00:00:09 #495 [Verbose] > [[ 1 .. 1000 ]]

00:00:09 #496 [Verbose] > |> List.map (fun _ -> rollProgressively None rollDice false 10)

00:00:09 #497 [Verbose] > |> List.groupBy id

00:00:09 #498 [Verbose] > |> List.map (fun (k, v) -> k, v.Length)

00:00:09 #499 [Verbose] > |> List.sortBy fst

00:00:09 #500 [Verbose] >

00:00:09 #501 [Verbose] > ── fsharp - ignored ────────────────────────────────────────────────────────────

00:00:09 #502 [Verbose] > //// ignore

00:00:09 #503 [Verbose] >

00:00:09 #504 [Verbose] > [[ 1 .. 1000 ]]

00:00:09 #505 [Verbose] > |> List.map (fun _ -> rollProgressively None rollDice true 10)

00:00:09 #506 [Verbose] > |> List.groupBy id

00:00:09 #507 [Verbose] > |> List.map (fun (k, v) -> k, v.Length)

00:00:09 #508 [Verbose] > |> List.sortBy fst

00:00:09 #509 [Verbose] >

00:00:09 #510 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #511 [Verbose] > //// test

00:00:09 #512 [Verbose] >

00:00:09 #513 [Verbose] > [[ 1 .. 100 ]]

00:00:09 #514 [Verbose] > |> List.iter (fun n ->

00:00:09 #515 [Verbose] >     [[ 0 .. 1 ]]

00:00:09 #516 [Verbose] >     |> List.iter (fun reroll ->

00:00:09 #517 [Verbose] >         [[ 1 .. 3500 ]]

00:00:09 #518 [Verbose] >         |> List.map (fun _ -> rollProgressively None rollDice (reroll = 1) n)

00:00:09 #519 [Verbose] >         |> List.groupBy id

00:00:09 #520 [Verbose] >         |> List.length

00:00:09 #521 [Verbose] >         |> __equal false n

00:00:09 #522 [Verbose] >     )

00:00:09 #523 [Verbose] > )

00:00:16 #524 [Verbose] >

00:00:16 #525 [Verbose] > ── fsharp - ignored ────────────────────────────────────────────────────────────

00:00:16 #526 [Verbose] > //// ignore

00:00:16 #527 [Verbose] >

00:00:16 #528 [Verbose] > let run () =

00:00:16 #529 [Verbose] >     let inline rollMax fn max n =

00:00:16 #530 [Verbose] >         [[ 1 .. n ]]

00:00:16 #531 [Verbose] >         |> List.map (fun _ -> fn max)

00:00:16 #532 [Verbose] >         |> List.groupBy id

00:00:16 #533 [Verbose] >         |> List.map (fun (_, v) -> v.Length)

00:00:16 #534 [Verbose] >

00:00:16 #535 [Verbose] >     let max = 10

00:00:16 #536 [Verbose] >     let n = 30

00:00:16 #537 [Verbose] >     let even = (n / max) |> int

00:00:16 #538 [Verbose] >

00:00:16 #539 [Verbose] >     let rec rollN current =

00:00:16 #540 [Verbose] >         let roll = rollMax (rollProgressively None rollDice true) max n

00:00:16 #541 [Verbose] >         if roll |> List.forall ((=) even)

00:00:16 #542 [Verbose] >         then current

00:00:16 #543 [Verbose] >         else rollN (current + 1)

00:00:16 #544 [Verbose] >

00:00:16 #545 [Verbose] >     rollN 0

00:00:16 #546 [Verbose] >

00:00:16 #547 [Verbose] > // run ()

00:00:16 #548 [Verbose] >

00:00:16 #549 [Verbose] > ── fsharp - ignored ────────────────────────────────────────────────────────────

00:00:16 #550 [Verbose] > //// ignore

00:00:16 #551 [Verbose] >

00:00:16 #552 [Verbose] > // [[ 1 .. 100 ]]

00:00:16 #553 [Verbose] > // |> List.map (fun i ->

00:00:16 #554 [Verbose] > //     let roll = rollN 0

00:00:16 #555 [Verbose] > //     printfn $"i: {i} / roll: {roll}"

00:00:16 #556 [Verbose] > //     roll

00:00:16 #557 [Verbose] > // )

00:00:16 #558 [Verbose] > // |> List.map float

00:00:16 #559 [Verbose] > // |> List.average

00:00:16 #560 [Verbose] >

00:00:16 #561 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:16 #562 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:16 #563 [Verbose] > │ ## main                                                                      │

00:00:16 #564 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #565 [Verbose] >

00:00:16 #566 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:16 #567 [Verbose] > let main args =

00:00:16 #568 [Verbose] >     let result = rollWithinBounds (Some (printfn "%s")) 2000 [[ 1; 5; 4; 4; 5 ]]

00:00:16 #569 [Verbose] >     trace Debug (fun () -> $"main / result: {result |> Option.defaultValue -1}")

00:00:16 #570 [Verbose] > getLocals

00:00:16 #571 [Verbose] >     0

00:00:17 #572 [Verbose] > [NbConvertApp] Converting notebook dice_fsharp.dib.ipynb to html

00:00:17 #573 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:17 #574 [Verbose] >   validate(nb)

00:00:18 #575 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:18 #576 [Verbose] >   return _pygments_highlight(

00:00:18 #577 [Verbose] > [NbConvertApp] Writing 324647 bytes to dice_fsharp.dib.html

00:00:19 #578 [Debug] executeAsync / exitCode: 0 / output.Length: 25058

00:00:19 #579 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] writeDibCode / output: Fs / path: dice_fsharp.dib

00:00:00 #2 [Debug] parseDibCode / output: Fs / file: dice_fsharp.dib

00:00:00 #1 [Debug] persistCodeProject / packages: [Fable.Core] / modules: [lib/fsharp/Common.fs] / path: C:\home\git\polyglot\apps\dice\fsharp / name: dice_fsharp / code.Length: 3327

00:00:00 #2 [Debug] buildProject / fullPath: C:\home\git\polyglot\apps\dice\fsharp\target\dice_fsharp.fsproj

00:00:00 #3 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\dice\fsharp\target\dice_fsharp.fsproj" --configuration Release --output ../dist --runtime linux-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\dice\fsharp\target"

  CancellationToken = None

  OnLine = None }

00:00:00 #4 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:00 #5 [Verbose] >   Determining projects to restore...

00:00:04 #6 [Verbose] >   Restored C:\home\git\polyglot\apps\dice\fsharp\target\dice_fsharp.fsproj (in 2.76 sec).

00:00:04 #7 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\dice\fsharp\target\dice_fsharp.fsproj]

00:00:07 #8 [Verbose] >   dice_fsharp -> C:\home\git\polyglot\apps\dice\fsharp\target\bin\Release\net8.0\linux-x64\dice_fsharp.dll

00:00:08 #9 [Verbose] >   dice_fsharp -> C:\home\git\polyglot\apps\dice\fsharp\dist\

00:00:09 #10 [Debug] executeAsync / exitCode: 0 / output.Length: 659

00:00:09 #11 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\dice\fsharp\target\dice_fsharp.fsproj" --configuration Release --output ../dist --runtime win-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\dice\fsharp\target"

  CancellationToken = None

  OnLine = None }

00:00:09 #12 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:09 #13 [Verbose] >   Determining projects to restore...

00:00:10 #14 [Verbose] >   Restored C:\home\git\polyglot\apps\dice\fsharp\target\dice_fsharp.fsproj (in 364 ms).

00:00:10 #15 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\dice\fsharp\target\dice_fsharp.fsproj]

00:00:13 #16 [Verbose] >   dice_fsharp -> C:\home\git\polyglot\apps\dice\fsharp\target\bin\Release\net8.0\win-x64\dice_fsharp.dll

00:00:17 #17 [Verbose] >   dice_fsharp -> C:\home\git\polyglot\apps\dice\fsharp\dist\

00:00:17 #18 [Debug] executeAsync / exitCode: 0 / output.Length: 655

Fable 4.2.2: F# to Rust compiler (status: alpha)



Thanks to the contributor! @fsoikin

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice_fsharp.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 194ms



Started Fable compilation...

Fable compilation finished in 2275ms



Fable 4.2.2: F# to TypeScript compiler

Minimum fable-library version (when installed from npm): 1.1.1



Thanks to the contributor! @davidtme

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice_fsharp.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 195ms



Started Fable compilation...

Fable compilation finished in 2229ms



Fable 4.2.2: F# to Python compiler (status: beta)



Thanks to the contributor! @MaxWilson

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice_fsharp.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 187ms



Started Fable compilation...

Fable compilation finished in 2178ms



Fable 4.2.2: F# to PHP compiler (status: experimental)



Thanks to the contributor! @dbrattli

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice_fsharp.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 184ms



Started Fable compilation...

Fable compilation finished in 2163ms



.\target\dice_fsharp.fs(18,37): (18,89) error FABLE: String templates are not supported

.\target\dice_fsharp.fs(24,37): (25,76) error FABLE: String templates are not supported

.\target\dice_fsharp.fs(29,37): (29,104) error FABLE: String templates are not supported

.\target\dice_fsharp.fs(47,41): (47,93) error FABLE: String templates are not supported

.\target\dice_fsharp.fs(107,31): (107,83) error FABLE: String templates are not supported

.\..\..\..\lib\fsharp\Common.fs(129,23): (129,35) error FABLE: String templates are not supported

Compilation failed



# Invoke-Block / $Retries: 1 / $OnError: Continue / $exitcode: 1 / $EnvVars: null / $Error: '' / $ScriptBlock:

'dotnet fable target/dice_fsharp.fsproj --optimize --lang php --extension .php --outDir target/php'



Fable 4.2.2: F# to Dart compiler (status: beta)



Thanks to the contributor! @Kurren123

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice_fsharp.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 198ms



Started Fable compilation...

Fable compilation finished in 2160ms



.\..\..\..\lib\fsharp\Common.fs(1,1): error FABLE: Cannot find reference for Microsoft.FSharp.Core.PrintfFormat`5

.\target\dice_fsharp.fs(1,1): error FABLE: Cannot find reference for System.Random

.\target\dice_fsharp.fs(1,1): error FABLE: Cannot find reference for System.IO.TextWriter

.\target\dice_fsharp.fs(1,1): error FABLE: Cannot find reference for Microsoft.FSharp.Core.PrintfFormat`5

Compilation failed



# Invoke-Block / $Retries: 1 / $OnError: Continue / $exitcode: 1 / $EnvVars: null / $Error: '' / $ScriptBlock:

'dotnet fable target/dice_fsharp.fsproj --optimize --lang dart --extension .dart --outDir target/dart'



Fable 4.2.2: F# to Rust compiler (status: alpha)



Thanks to the contributor! @jbeeko

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice_fsharp.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 206ms



Started Fable compilation...

Fable compilation finished in 2173ms



   Compiling dice_fsharp v0.0.1 (C:\home\git\polyglot\apps\dice\fsharp)

    Finished release [optimized] target(s) in 3.10s

     Running `target\release\dice_fsharp.exe`

accumulateDiceRolls / power: 4 / acc: 0 / roll: 1

accumulateDiceRolls / power: 3 / acc: 0 / roll: 5 / value: 864

accumulateDiceRolls / power: 2 / acc: 864 / roll: 4 / value: 108

accumulateDiceRolls / power: 1 / acc: 972 / roll: 4 / value: 18

accumulateDiceRolls / power: 0 / acc: 990 / roll: 5 / value: 4

accumulateDiceRolls / power: -1 / acc: 994

13:09:08 #1 [Debug] main / result: 995

Complexidade: Simple, Duração: Short    

Complexidade: Simple, Duração: Short    

Complexidade: Simple, Duração: Medium   

Complexidade: Moderate, Duração: Medium 

Complexidade: Complex, Duração: Long    

Complexidade: Complex, Duração: Long    

[13:09:12 INF] EXPECTO? Running tests... <Expecto>

[13:09:16 INF] EXPECTO! 7 tests run in 00:00:04.1918645 for FsCheck samples – 7 passed, 0 ignored, 0 failed, 0 errored. Success! <Expecto>



00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\apps\dice

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 dice.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ # dice (Polyglot)                                                            │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:06 #21 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2334-3479-322ba1742620\main.spi

00:00:09 #22 [Verbose] >

00:00:09 #23 [Verbose] > ╭─[ 5.68s - stdout ]───────────────────────────────────────────────────────────╮

00:00:09 #24 [Verbose] > │ ()                                                                           │

00:00:09 #25 [Verbose] > │                                                                              │

00:00:09 #26 [Verbose] > │                                                                              │

00:00:09 #27 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #28 [Verbose] >

00:00:09 #29 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #30 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #31 [Verbose] > │ ## sixth_power_sequence                                                      │

00:00:09 #32 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #33 [Verbose] >

00:00:09 #34 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #35 [Verbose] > inl sixth_power_sequence () =

00:00:09 #36 [Verbose] >     stream.iterate ((*) 6) 1

00:00:09 #37 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2664-6422-6c0c4af6fc1a\main.spi

00:00:09 #38 [Verbose] >

00:00:09 #39 [Verbose] > ╭─[ 240.55ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #40 [Verbose] > │ ()                                                                           │

00:00:09 #41 [Verbose] > │                                                                              │

00:00:09 #42 [Verbose] > │                                                                              │

00:00:09 #43 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #44 [Verbose] >

00:00:09 #45 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:09 #46 [Verbose] > // // test

00:00:09 #47 [Verbose] >

00:00:09 #48 [Verbose] > sixth_power_sequence ()

00:00:09 #49 [Verbose] > |> stream.take_while (fun _ i => i <= 7i32)

00:00:09 #50 [Verbose] > |> stream.to_list

00:00:09 #51 [Verbose] > |> _equal [[ 1i32; 6; 36; 216; 1296; 7776; 46656; 279936 ]]

00:00:09 #52 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2688-8830-8a7ac76e970f\main.spi

00:00:10 #53 [Verbose] >

00:00:10 #54 [Verbose] > ╭─[ 1.33s - stdout ]───────────────────────────────────────────────────────────╮

00:00:10 #55 [Verbose] > │ type UH0 =                                                                   │

00:00:10 #56 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:10 #57 [Verbose] > │     | UH0_1                                                                  │

00:00:10 #58 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:10 #59 [Verbose] > │     let v63 : UH0 = UH0_1                                                    │

00:00:10 #60 [Verbose] > │     let v64 : UH0 = UH0_0(279936, v63)                                       │

00:00:10 #61 [Verbose] > │     let v65 : UH0 = UH0_0(46656, v64)                                        │

00:00:10 #62 [Verbose] > │     let v66 : UH0 = UH0_0(7776, v65)                                         │

00:00:10 #63 [Verbose] > │     let v67 : UH0 = UH0_0(1296, v66)                                         │

00:00:10 #64 [Verbose] > │     let v68 : UH0 = UH0_0(216, v67)                                          │

00:00:10 #65 [Verbose] > │     let v69 : UH0 = UH0_0(36, v68)                                           │

00:00:10 #66 [Verbose] > │     let v70 : UH0 = UH0_0(6, v69)                                            │

00:00:10 #67 [Verbose] > │     let v71 : UH0 = UH0_0(1, v70)                                            │

00:00:10 #68 [Verbose] > │     let v72 : UH0 = UH0_1                                                    │

00:00:10 #69 [Verbose] > │     let v73 : UH0 = UH0_0(279936, v72)                                       │

00:00:10 #70 [Verbose] > │     let v74 : UH0 = UH0_0(46656, v73)                                        │

00:00:10 #71 [Verbose] > │     let v75 : UH0 = UH0_0(7776, v74)                                         │

00:00:10 #72 [Verbose] > │     let v76 : UH0 = UH0_0(1296, v75)                                         │

00:00:10 #73 [Verbose] > │     let v77 : UH0 = UH0_0(216, v76)                                          │

00:00:10 #74 [Verbose] > │     let v78 : UH0 = UH0_0(36, v77)                                           │

00:00:10 #75 [Verbose] > │     let v79 : UH0 = UH0_0(6, v78)                                            │

00:00:10 #76 [Verbose] > │     let v80 : UH0 = UH0_0(1, v79)                                            │

00:00:10 #77 [Verbose] > │     let v81 : string = $"_equal / actual: %A{v71} / expected: %A{v80}"       │

00:00:10 #78 [Verbose] > │     ()                                                                       │

00:00:10 #79 [Verbose] > │ method0()                                                                    │

00:00:10 #80 [Verbose] > │                                                                              │

00:00:10 #81 [Verbose] > │                                                                              │

00:00:10 #82 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #83 [Verbose] >

00:00:10 #84 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #85 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #86 [Verbose] > │ ## accumulate_dice_rolls                                                     │

00:00:10 #87 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #88 [Verbose] >

00:00:10 #89 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:10 #90 [Verbose] > inl accumulate_dice_rolls (log : option (string -> ())) rolls power acc =

00:00:10 #91 [Verbose] >     inl rec body acc power rolls =

00:00:10 #92 [Verbose] >         match rolls with

00:00:10 #93 [Verbose] >         | _ when power < 0 =>

00:00:10 #94 [Verbose] >             log |> optionm'.iter ((|>) $"$\"accumulate_dice_rolls / power:

00:00:10 #95 [Verbose] > {!power} / acc: {!acc}\"")

00:00:10 #96 [Verbose] >             Some (acc + 1, rolls)

00:00:10 #97 [Verbose] >         | [[]] => None

00:00:10 #98 [Verbose] >         | roll :: rest when roll > 1 =>

00:00:10 #99 [Verbose] >             inl coeff = sixth_power_sequence () |> stream.item power

00:00:10 #100 [Verbose] >             inl value = (roll - 1) * coeff

00:00:10 #101 [Verbose] >             log |> optionm'.iter ((|>) $"$\"accumulate_dice_rolls / power:

00:00:10 #102 [Verbose] > {!power} / acc: {!acc} / roll: {!roll} / value: {!value}\""

00:00:10 #103 [Verbose] >             )

00:00:10 #104 [Verbose] >             loop (acc + value) (power - 1) rest

00:00:10 #105 [Verbose] >         | roll :: rest =>

00:00:10 #106 [Verbose] >             log |> optionm'.iter ((|>) $"$\"accumulate_dice_rolls / power:

00:00:10 #107 [Verbose] > {!power} / acc: {!acc} / roll: {!roll}\"")

00:00:10 #108 [Verbose] >             loop acc (power - 1) rest

00:00:10 #109 [Verbose] >     and inl loop acc power rolls =

00:00:10 #110 [Verbose] >         if var_is rolls |> not

00:00:10 #111 [Verbose] >         then body acc power rolls

00:00:10 #112 [Verbose] >         else

00:00:10 #113 [Verbose] >             inl acc = dyn acc

00:00:10 #114 [Verbose] >             join body acc power rolls

00:00:10 #115 [Verbose] >     loop acc power rolls

00:00:11 #116 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2822-2256-28c836c63114\main.spi

00:00:11 #117 [Verbose] >

00:00:11 #118 [Verbose] > ╭─[ 173.02ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #119 [Verbose] > │ ()                                                                           │

00:00:11 #120 [Verbose] > │                                                                              │

00:00:11 #121 [Verbose] > │                                                                              │

00:00:11 #122 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #123 [Verbose] >

00:00:11 #124 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #125 [Verbose] > // // test

00:00:11 #126 [Verbose] >

00:00:11 #127 [Verbose] > accumulate_dice_rolls (Some console.write_line) [[ 6; 5; 4; 3; 2 ]] 0i32 1000i32

00:00:11 #128 [Verbose] > |> _equal (Some (1006, [[ 5; 4; 3; 2 ]]))

00:00:11 #129 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2839-3982-3211611a3617\main.spi

00:00:11 #130 [Verbose] >

00:00:11 #131 [Verbose] > ╭─[ 465.58ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #132 [Verbose] > │ type UH0 =                                                                   │

00:00:11 #133 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:11 #134 [Verbose] > │     | UH0_1                                                                  │

00:00:11 #135 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:11 #136 [Verbose] > │     | US0_0                                                                  │

00:00:11 #137 [Verbose] > │     | US0_1 of f1_0 : int32 * f1_1 : UH0                                     │

00:00:11 #138 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #139 [Verbose] > │     let v0 : string = $"accumulate_dice_rolls / power: {0} / acc: {1000} /   │

00:00:11 #140 [Verbose] > │ roll: {6} / value: {5}"                                                      │

00:00:11 #141 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:11 #142 [Verbose] > │     let v1 : string = $"accumulate_dice_rolls / power: {-1} / acc: {1005}"   │

00:00:11 #143 [Verbose] > │     System.Console.WriteLine v1                                              │

00:00:11 #144 [Verbose] > │     let v35 : UH0 = UH0_1                                                    │

00:00:11 #145 [Verbose] > │     let v36 : UH0 = UH0_0(2, v35)                                            │

00:00:11 #146 [Verbose] > │     let v37 : UH0 = UH0_0(3, v36)                                            │

00:00:11 #147 [Verbose] > │     let v38 : UH0 = UH0_0(4, v37)                                            │

00:00:11 #148 [Verbose] > │     let v39 : UH0 = UH0_0(5, v38)                                            │

00:00:11 #149 [Verbose] > │     let v40 : US0 = US0_1(1006, v39)                                         │

00:00:11 #150 [Verbose] > │     let v41 : UH0 = UH0_1                                                    │

00:00:11 #151 [Verbose] > │     let v42 : UH0 = UH0_0(2, v41)                                            │

00:00:11 #152 [Verbose] > │     let v43 : UH0 = UH0_0(3, v42)                                            │

00:00:11 #153 [Verbose] > │     let v44 : UH0 = UH0_0(4, v43)                                            │

00:00:11 #154 [Verbose] > │     let v45 : UH0 = UH0_0(5, v44)                                            │

00:00:11 #155 [Verbose] > │     let v46 : US0 = US0_1(1006, v45)                                         │

00:00:11 #156 [Verbose] > │     let v47 : string = $"_equal / actual: %A{v40} / expected: %A{v46}"       │

00:00:11 #157 [Verbose] > │     ()                                                                       │

00:00:11 #158 [Verbose] > │ method0()                                                                    │

00:00:11 #159 [Verbose] > │                                                                              │

00:00:11 #160 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 1000 / roll: 6 / value: 5            │

00:00:11 #161 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 1005                                │

00:00:11 #162 [Verbose] > │                                                                              │

00:00:11 #163 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #164 [Verbose] >

00:00:11 #165 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #166 [Verbose] > // // test

00:00:11 #167 [Verbose] >

00:00:11 #168 [Verbose] > accumulate_dice_rolls (Some console.write_line) [[ 6; 5; 4; 3; 2 ]] 1i32 1000i32

00:00:11 #169 [Verbose] > |> _equal (Some (1035, [[ 4; 3; 2 ]]))

00:00:11 #170 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2887-8797-828f7f134542\main.spi

00:00:11 #171 [Verbose] >

00:00:11 #172 [Verbose] > ╭─[ 250.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:11 #173 [Verbose] > │ type UH0 =                                                                   │

00:00:11 #174 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:11 #175 [Verbose] > │     | UH0_1                                                                  │

00:00:11 #176 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:11 #177 [Verbose] > │     | US0_0                                                                  │

00:00:11 #178 [Verbose] > │     | US0_1 of f1_0 : int32 * f1_1 : UH0                                     │

00:00:11 #179 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:11 #180 [Verbose] > │     let v0 : string = $"accumulate_dice_rolls / power: {1} / acc: {1000} /   │

00:00:11 #181 [Verbose] > │ roll: {6} / value: {30}"                                                     │

00:00:11 #182 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:11 #183 [Verbose] > │     let v1 : string = $"accumulate_dice_rolls / power: {0} / acc: {1030} /   │

00:00:11 #184 [Verbose] > │ roll: {5} / value: {4}"                                                      │

00:00:11 #185 [Verbose] > │     System.Console.WriteLine v1                                              │

00:00:11 #186 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {-1} / acc: {1034}"   │

00:00:11 #187 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:11 #188 [Verbose] > │     let v28 : UH0 = UH0_1                                                    │

00:00:11 #189 [Verbose] > │     let v29 : UH0 = UH0_0(2, v28)                                            │

00:00:11 #190 [Verbose] > │     let v30 : UH0 = UH0_0(3, v29)                                            │

00:00:11 #191 [Verbose] > │     let v31 : UH0 = UH0_0(4, v30)                                            │

00:00:11 #192 [Verbose] > │     let v32 : US0 = US0_1(1035, v31)                                         │

00:00:11 #193 [Verbose] > │     let v33 : UH0 = UH0_1                                                    │

00:00:11 #194 [Verbose] > │     let v34 : UH0 = UH0_0(2, v33)                                            │

00:00:11 #195 [Verbose] > │     let v35 : UH0 = UH0_0(3, v34)                                            │

00:00:11 #196 [Verbose] > │     let v36 : UH0 = UH0_0(4, v35)                                            │

00:00:11 #197 [Verbose] > │     let v37 : US0 = US0_1(1035, v36)                                         │

00:00:11 #198 [Verbose] > │     let v38 : string = $"_equal / actual: %A{v32} / expected: %A{v37}"       │

00:00:11 #199 [Verbose] > │     ()                                                                       │

00:00:11 #200 [Verbose] > │ method0()                                                                    │

00:00:11 #201 [Verbose] > │                                                                              │

00:00:11 #202 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 1000 / roll: 6 / value: 30           │

00:00:11 #203 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 1030 / roll: 5 / value: 4            │

00:00:11 #204 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 1034                                │

00:00:11 #205 [Verbose] > │                                                                              │

00:00:11 #206 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #207 [Verbose] >

00:00:11 #208 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #209 [Verbose] > // // test

00:00:11 #210 [Verbose] >

00:00:11 #211 [Verbose] > accumulate_dice_rolls (Some console.write_line) [[ 6; 5; 4; 3; 2 ]] 2i32 1000i32

00:00:11 #212 [Verbose] > |> _equal (Some (1208, [[ 3; 2 ]]))

00:00:11 #213 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2914-1443-1fb167c1a4e6\main.spi

00:00:12 #214 [Verbose] >

00:00:12 #215 [Verbose] > ╭─[ 237.48ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #216 [Verbose] > │ type UH0 =                                                                   │

00:00:12 #217 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:12 #218 [Verbose] > │     | UH0_1                                                                  │

00:00:12 #219 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:12 #220 [Verbose] > │     | US0_0                                                                  │

00:00:12 #221 [Verbose] > │     | US0_1 of f1_0 : int32 * f1_1 : UH0                                     │

00:00:12 #222 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #223 [Verbose] > │     let v0 : string = $"accumulate_dice_rolls / power: {2} / acc: {1000} /   │

00:00:12 #224 [Verbose] > │ roll: {6} / value: {180}"                                                    │

00:00:12 #225 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:12 #226 [Verbose] > │     let v1 : string = $"accumulate_dice_rolls / power: {1} / acc: {1180} /   │

00:00:12 #227 [Verbose] > │ roll: {5} / value: {24}"                                                     │

00:00:12 #228 [Verbose] > │     System.Console.WriteLine v1                                              │

00:00:12 #229 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {0} / acc: {1204} /   │

00:00:12 #230 [Verbose] > │ roll: {4} / value: {3}"                                                      │

00:00:12 #231 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:12 #232 [Verbose] > │     let v3 : string = $"accumulate_dice_rolls / power: {-1} / acc: {1207}"   │

00:00:12 #233 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:12 #234 [Verbose] > │     let v22 : UH0 = UH0_1                                                    │

00:00:12 #235 [Verbose] > │     let v23 : UH0 = UH0_0(2, v22)                                            │

00:00:12 #236 [Verbose] > │     let v24 : UH0 = UH0_0(3, v23)                                            │

00:00:12 #237 [Verbose] > │     let v25 : US0 = US0_1(1208, v24)                                         │

00:00:12 #238 [Verbose] > │     let v26 : UH0 = UH0_1                                                    │

00:00:12 #239 [Verbose] > │     let v27 : UH0 = UH0_0(2, v26)                                            │

00:00:12 #240 [Verbose] > │     let v28 : UH0 = UH0_0(3, v27)                                            │

00:00:12 #241 [Verbose] > │     let v29 : US0 = US0_1(1208, v28)                                         │

00:00:12 #242 [Verbose] > │     let v30 : string = $"_equal / actual: %A{v25} / expected: %A{v29}"       │

00:00:12 #243 [Verbose] > │     ()                                                                       │

00:00:12 #244 [Verbose] > │ method0()                                                                    │

00:00:12 #245 [Verbose] > │                                                                              │

00:00:12 #246 [Verbose] > │ accumulate_dice_rolls / power: 2 / acc: 1000 / roll: 6 / value: 180          │

00:00:12 #247 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 1180 / roll: 5 / value: 24           │

00:00:12 #248 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 1204 / roll: 4 / value: 3            │

00:00:12 #249 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 1207                                │

00:00:12 #250 [Verbose] > │                                                                              │

00:00:12 #251 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #252 [Verbose] >

00:00:12 #253 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #254 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #255 [Verbose] > │ ## roll_within_bounds                                                        │

00:00:12 #256 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #257 [Verbose] >

00:00:12 #258 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #259 [Verbose] > inl roll_within_bounds (log : option (string -> ())) max rolls =

00:00:12 #260 [Verbose] >     inl power = listm.length rolls - 1i64

00:00:12 #261 [Verbose] >     match accumulate_dice_rolls log rolls power 0 with

00:00:12 #262 [Verbose] >     | Some (result, _) when result >= 1 && result <= max => Some result

00:00:12 #263 [Verbose] >     | _ => None

00:00:12 #264 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2939-3988-3ec3956a177f\main.spi

00:00:12 #265 [Verbose] >

00:00:12 #266 [Verbose] > ╭─[ 128.80ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #267 [Verbose] > │ ()                                                                           │

00:00:12 #268 [Verbose] > │                                                                              │

00:00:12 #269 [Verbose] > │                                                                              │

00:00:12 #270 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #271 [Verbose] >

00:00:12 #272 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #273 [Verbose] > // // test

00:00:12 #274 [Verbose] >

00:00:12 #275 [Verbose] > roll_within_bounds (Some console.write_line) 2000i32 [[ 1; 5; 4; 4; 5 ]]

00:00:12 #276 [Verbose] > |> _equal (Some 995)

00:00:12 #277 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2952-5295-52ce596c2bc2\main.spi

00:00:12 #278 [Verbose] >

00:00:12 #279 [Verbose] > ╭─[ 239.37ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #280 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:12 #281 [Verbose] > │     | US0_0                                                                  │

00:00:12 #282 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:12 #283 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #284 [Verbose] > │     let v0 : string = $"accumulate_dice_rolls / power: {4L} / acc: {0} /     │

00:00:12 #285 [Verbose] > │ roll: {1}"                                                                   │

00:00:12 #286 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:12 #287 [Verbose] > │     let v1 : string = $"accumulate_dice_rolls / power: {3L} / acc: {0} /     │

00:00:12 #288 [Verbose] > │ roll: {5} / value: {864}"                                                    │

00:00:12 #289 [Verbose] > │     System.Console.WriteLine v1                                              │

00:00:12 #290 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {2L} / acc: {864} /   │

00:00:12 #291 [Verbose] > │ roll: {4} / value: {108}"                                                    │

00:00:12 #292 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:12 #293 [Verbose] > │     let v3 : string = $"accumulate_dice_rolls / power: {1L} / acc: {972} /   │

00:00:12 #294 [Verbose] > │ roll: {4} / value: {18}"                                                     │

00:00:12 #295 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:12 #296 [Verbose] > │     let v4 : string = $"accumulate_dice_rolls / power: {0L} / acc: {990} /   │

00:00:12 #297 [Verbose] > │ roll: {5} / value: {4}"                                                      │

00:00:12 #298 [Verbose] > │     System.Console.WriteLine v4                                              │

00:00:12 #299 [Verbose] > │     let v5 : string = $"accumulate_dice_rolls / power: {-1L} / acc: {994}"   │

00:00:12 #300 [Verbose] > │     System.Console.WriteLine v5                                              │

00:00:12 #301 [Verbose] > │     let v9 : US0 = US0_1(995)                                                │

00:00:12 #302 [Verbose] > │     let v10 : US0 = US0_1(995)                                               │

00:00:12 #303 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v9} / expected: %A{v10}"        │

00:00:12 #304 [Verbose] > │     ()                                                                       │

00:00:12 #305 [Verbose] > │ method0()                                                                    │

00:00:12 #306 [Verbose] > │                                                                              │

00:00:12 #307 [Verbose] > │ accumulate_dice_rolls / power: 4 / acc: 0 / roll: 1                          │

00:00:12 #308 [Verbose] > │ accumulate_dice_rolls / power: 3 / acc: 0 / roll: 5 / value: 864             │

00:00:12 #309 [Verbose] > │ accumulate_dice_rolls / power: 2 / acc: 864 / roll: 4 / value: 108           │

00:00:12 #310 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 972 / roll: 4 / value: 18            │

00:00:12 #311 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 990 / roll: 5 / value: 4             │

00:00:12 #312 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 994                                 │

00:00:12 #313 [Verbose] > │                                                                              │

00:00:12 #314 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #315 [Verbose] >

00:00:12 #316 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #317 [Verbose] > // // test

00:00:12 #318 [Verbose] >

00:00:12 #319 [Verbose] > roll_within_bounds (Some console.write_line) 2000i32 [[ 2; 2; 6; 4; 5 ]]

00:00:12 #320 [Verbose] > |> _equal (Some 1715)

00:00:12 #321 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2978-7850-7ee579345a83\main.spi

00:00:12 #322 [Verbose] >

00:00:12 #323 [Verbose] > ╭─[ 191.01ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #324 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:12 #325 [Verbose] > │     | US0_0                                                                  │

00:00:12 #326 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:12 #327 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #328 [Verbose] > │     let v0 : string = $"accumulate_dice_rolls / power: {4L} / acc: {0} /     │

00:00:12 #329 [Verbose] > │ roll: {2} / value: {1296}"                                                   │

00:00:12 #330 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:12 #331 [Verbose] > │     let v1 : string = $"accumulate_dice_rolls / power: {3L} / acc: {1296} /  │

00:00:12 #332 [Verbose] > │ roll: {2} / value: {216}"                                                    │

00:00:12 #333 [Verbose] > │     System.Console.WriteLine v1                                              │

00:00:12 #334 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {2L} / acc: {1512} /  │

00:00:12 #335 [Verbose] > │ roll: {6} / value: {180}"                                                    │

00:00:12 #336 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:12 #337 [Verbose] > │     let v3 : string = $"accumulate_dice_rolls / power: {1L} / acc: {1692} /  │

00:00:12 #338 [Verbose] > │ roll: {4} / value: {18}"                                                     │

00:00:12 #339 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:12 #340 [Verbose] > │     let v4 : string = $"accumulate_dice_rolls / power: {0L} / acc: {1710} /  │

00:00:12 #341 [Verbose] > │ roll: {5} / value: {4}"                                                      │

00:00:12 #342 [Verbose] > │     System.Console.WriteLine v4                                              │

00:00:12 #343 [Verbose] > │     let v5 : string = $"accumulate_dice_rolls / power: {-1L} / acc: {1714}"  │

00:00:12 #344 [Verbose] > │     System.Console.WriteLine v5                                              │

00:00:12 #345 [Verbose] > │     let v9 : US0 = US0_1(1715)                                               │

00:00:12 #346 [Verbose] > │     let v10 : US0 = US0_1(1715)                                              │

00:00:12 #347 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v9} / expected: %A{v10}"        │

00:00:12 #348 [Verbose] > │     ()                                                                       │

00:00:12 #349 [Verbose] > │ method0()                                                                    │

00:00:12 #350 [Verbose] > │                                                                              │

00:00:12 #351 [Verbose] > │ accumulate_dice_rolls / power: 4 / acc: 0 / roll: 2 / value: 1296            │

00:00:12 #352 [Verbose] > │ accumulate_dice_rolls / power: 3 / acc: 1296 / roll: 2 / value: 216          │

00:00:12 #353 [Verbose] > │ accumulate_dice_rolls / power: 2 / acc: 1512 / roll: 6 / value: 180          │

00:00:12 #354 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 1692 / roll: 4 / value: 18           │

00:00:12 #355 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 1710 / roll: 5 / value: 4            │

00:00:12 #356 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 1714                                │

00:00:12 #357 [Verbose] > │                                                                              │

00:00:12 #358 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #359 [Verbose] >

00:00:12 #360 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #361 [Verbose] > // // test

00:00:12 #362 [Verbose] >

00:00:12 #363 [Verbose] > roll_within_bounds (Some console.write_line) 2000i32 [[ 4; 1; 1; 2; 3 ]]

00:00:12 #364 [Verbose] > |> _equal None

00:00:12 #365 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-2999-9911-96b42d91be98\main.spi

00:00:12 #366 [Verbose] >

00:00:12 #367 [Verbose] > ╭─[ 217.18ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #368 [Verbose] > │ type [<Struct>] US0 =                                                        │

00:00:12 #369 [Verbose] > │     | US0_0                                                                  │

00:00:12 #370 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:00:12 #371 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:12 #372 [Verbose] > │     let v0 : string = $"accumulate_dice_rolls / power: {4L} / acc: {0} /     │

00:00:12 #373 [Verbose] > │ roll: {4} / value: {3888}"                                                   │

00:00:12 #374 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:12 #375 [Verbose] > │     let v1 : string = $"accumulate_dice_rolls / power: {3L} / acc: {3888} /  │

00:00:12 #376 [Verbose] > │ roll: {1}"                                                                   │

00:00:12 #377 [Verbose] > │     System.Console.WriteLine v1                                              │

00:00:12 #378 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {2L} / acc: {3888} /  │

00:00:12 #379 [Verbose] > │ roll: {1}"                                                                   │

00:00:12 #380 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:12 #381 [Verbose] > │     let v3 : string = $"accumulate_dice_rolls / power: {1L} / acc: {3888} /  │

00:00:12 #382 [Verbose] > │ roll: {2} / value: {6}"                                                      │

00:00:12 #383 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:12 #384 [Verbose] > │     let v4 : string = $"accumulate_dice_rolls / power: {0L} / acc: {3894} /  │

00:00:12 #385 [Verbose] > │ roll: {3} / value: {2}"                                                      │

00:00:12 #386 [Verbose] > │     System.Console.WriteLine v4                                              │

00:00:12 #387 [Verbose] > │     let v5 : string = $"accumulate_dice_rolls / power: {-1L} / acc: {3896}"  │

00:00:12 #388 [Verbose] > │     System.Console.WriteLine v5                                              │

00:00:12 #389 [Verbose] > │     let v9 : US0 = US0_0                                                     │

00:00:12 #390 [Verbose] > │     let v10 : US0 = US0_0                                                    │

00:00:12 #391 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v9} / expected: %A{v10}"        │

00:00:12 #392 [Verbose] > │     ()                                                                       │

00:00:12 #393 [Verbose] > │ method0()                                                                    │

00:00:12 #394 [Verbose] > │                                                                              │

00:00:12 #395 [Verbose] > │ accumulate_dice_rolls / power: 4 / acc: 0 / roll: 4 / value: 3888            │

00:00:12 #396 [Verbose] > │ accumulate_dice_rolls / power: 3 / acc: 3888 / roll: 1                       │

00:00:12 #397 [Verbose] > │ accumulate_dice_rolls / power: 2 / acc: 3888 / roll: 1                       │

00:00:12 #398 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 3888 / roll: 2 / value: 6            │

00:00:12 #399 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 3894 / roll: 3 / value: 2            │

00:00:12 #400 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 3896                                │

00:00:12 #401 [Verbose] > │                                                                              │

00:00:12 #402 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #403 [Verbose] >

00:00:12 #404 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #405 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #406 [Verbose] > │ ## calculate_dice_count                                                      │

00:00:12 #407 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #408 [Verbose] >

00:00:12 #409 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:12 #410 [Verbose] > inl calculate_dice_count (log : option (string -> ())) max =

00:00:12 #411 [Verbose] >     inl rec body n p =

00:00:12 #412 [Verbose] >         if p > 0 && p < max

00:00:12 #413 [Verbose] >         then loop (n + 1) (p * 6)

00:00:12 #414 [Verbose] >         else

00:00:12 #415 [Verbose] >             log |> optionm'.iter ((|>) $"$\"calculate_dice_count / max: {!max}

00:00:12 #416 [Verbose] > n: {!n} / p: {!p}\"")

00:00:12 #417 [Verbose] >             n

00:00:12 #418 [Verbose] >     and inl loop n p =

00:00:12 #419 [Verbose] >         if var_is max |> not

00:00:12 #420 [Verbose] >         then body n p

00:00:12 #421 [Verbose] >         else

00:00:12 #422 [Verbose] >             inl n = dyn n

00:00:12 #423 [Verbose] >             inl p = dyn p

00:00:12 #424 [Verbose] >             join body n p

00:00:12 #425 [Verbose] >     if max = 1

00:00:12 #426 [Verbose] >     then 1

00:00:12 #427 [Verbose] >     else loop 0 1

00:00:13 #428 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3022-2258-218ce16802f9\main.spi

00:00:13 #429 [Verbose] >

00:00:13 #430 [Verbose] > ╭─[ 134.56ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #431 [Verbose] > │ ()                                                                           │

00:00:13 #432 [Verbose] > │                                                                              │

00:00:13 #433 [Verbose] > │                                                                              │

00:00:13 #434 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #435 [Verbose] >

00:00:13 #436 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #437 [Verbose] > // // test

00:00:13 #438 [Verbose] >

00:00:13 #439 [Verbose] > calculate_dice_count (Some console.write_line) 36i32

00:00:13 #440 [Verbose] > |> _equal 2i32

00:00:13 #441 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3036-3623-362fb26cb1d6\main.spi

00:00:13 #442 [Verbose] >

00:00:13 #443 [Verbose] > ╭─[ 175.32ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #444 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:13 #445 [Verbose] > │     let v0 : string = $"calculate_dice_count / max: {36} / n: {2} / p: {36}" │

00:00:13 #446 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:13 #447 [Verbose] > │     let v1 : string = $"_equal / actual: %A{2} / expected: %A{2}"            │

00:00:13 #448 [Verbose] > │     ()                                                                       │

00:00:13 #449 [Verbose] > │ method0()                                                                    │

00:00:13 #450 [Verbose] > │                                                                              │

00:00:13 #451 [Verbose] > │ calculate_dice_count / max: 36 / n: 2 / p: 36                                │

00:00:13 #452 [Verbose] > │                                                                              │

00:00:13 #453 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #454 [Verbose] >

00:00:13 #455 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #456 [Verbose] > // // test

00:00:13 #457 [Verbose] >

00:00:13 #458 [Verbose] > calculate_dice_count (Some console.write_line) 7777i32

00:00:13 #459 [Verbose] > |> _equal 6i32

00:00:13 #460 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3054-5437-5851d204981f\main.spi

00:00:13 #461 [Verbose] >

00:00:13 #462 [Verbose] > ╭─[ 167.15ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #463 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:13 #464 [Verbose] > │     let v0 : string = $"calculate_dice_count / max: {7777} / n: {6} / p:     │

00:00:13 #465 [Verbose] > │ {46656}"                                                                     │

00:00:13 #466 [Verbose] > │     System.Console.WriteLine v0                                              │

00:00:13 #467 [Verbose] > │     let v1 : string = $"_equal / actual: %A{6} / expected: %A{6}"            │

00:00:13 #468 [Verbose] > │     ()                                                                       │

00:00:13 #469 [Verbose] > │ method0()                                                                    │

00:00:13 #470 [Verbose] > │                                                                              │

00:00:13 #471 [Verbose] > │ calculate_dice_count / max: 7777 / n: 6 / p: 46656                           │

00:00:13 #472 [Verbose] > │                                                                              │

00:00:13 #473 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #474 [Verbose] >

00:00:13 #475 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #476 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #477 [Verbose] > │ ## roll_dice                                                                 │

00:00:13 #478 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #479 [Verbose] >

00:00:13 #480 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #481 [Verbose] > inl roll_dice () : i32 =

00:00:13 #482 [Verbose] >     $"System.Random().Next (1, 7)"

00:00:13 #483 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3071-7172-767bf1721e7b\main.spi

00:00:13 #484 [Verbose] >

00:00:13 #485 [Verbose] > ╭─[ 142.06ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #486 [Verbose] > │ ()                                                                           │

00:00:13 #487 [Verbose] > │                                                                              │

00:00:13 #488 [Verbose] > │                                                                              │

00:00:13 #489 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #490 [Verbose] >

00:00:13 #491 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #492 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #493 [Verbose] > │ ## rotate_number                                                             │

00:00:13 #494 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #495 [Verbose] >

00:00:13 #496 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #497 [Verbose] > inl rotate_number max n =

00:00:13 #498 [Verbose] >     (n - 1 + max) % max + 1

00:00:13 #499 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3086-8667-8140f2727449\main.spi

00:00:13 #500 [Verbose] >

00:00:13 #501 [Verbose] > ╭─[ 137.30ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #502 [Verbose] > │ ()                                                                           │

00:00:13 #503 [Verbose] > │                                                                              │

00:00:13 #504 [Verbose] > │                                                                              │

00:00:13 #505 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #506 [Verbose] >

00:00:13 #507 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #508 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #509 [Verbose] > │ ## rotate_numbers                                                            │

00:00:13 #510 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #511 [Verbose] >

00:00:13 #512 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #513 [Verbose] > inl rotate_numbers max items =

00:00:13 #514 [Verbose] >     items |> stream.map (rotate_number max)

00:00:13 #515 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3100-0061-07ee97e5f567\main.spi

00:00:13 #516 [Verbose] >

00:00:13 #517 [Verbose] > ╭─[ 183.54ms - stdout ]────────────────────────────────────────────────────────╮

00:00:13 #518 [Verbose] > │ ()                                                                           │

00:00:13 #519 [Verbose] > │                                                                              │

00:00:13 #520 [Verbose] > │                                                                              │

00:00:13 #521 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #522 [Verbose] >

00:00:13 #523 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:13 #524 [Verbose] > // // test

00:00:13 #525 [Verbose] >

00:00:13 #526 [Verbose] > listm'.init_series -1i32 14 1

00:00:13 #527 [Verbose] > |> stream.from_list

00:00:13 #528 [Verbose] > |> rotate_numbers 6

00:00:13 #529 [Verbose] > |> stream.to_list

00:00:13 #530 [Verbose] > |> _equal [[ 5; 6; 1; 2; 3; 4; 5; 6; 1; 2; 3; 4; 5; 6; 1; 2 ]]

00:00:13 #531 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3119-1918-1b689bf11d33\main.spi

00:00:14 #532 [Verbose] >

00:00:14 #533 [Verbose] > ╭─[ 276.57ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #534 [Verbose] > │ type UH0 =                                                                   │

00:00:14 #535 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:14 #536 [Verbose] > │     | UH0_1                                                                  │

00:00:14 #537 [Verbose] > │ let rec method0 () : unit =                                                  │

00:00:14 #538 [Verbose] > │     let v187 : UH0 = UH0_1                                                   │

00:00:14 #539 [Verbose] > │     let v188 : UH0 = UH0_0(2, v187)                                          │

00:00:14 #540 [Verbose] > │     let v189 : UH0 = UH0_0(1, v188)                                          │

00:00:14 #541 [Verbose] > │     let v190 : UH0 = UH0_0(6, v189)                                          │

00:00:14 #542 [Verbose] > │     let v191 : UH0 = UH0_0(5, v190)                                          │

00:00:14 #543 [Verbose] > │     let v192 : UH0 = UH0_0(4, v191)                                          │

00:00:14 #544 [Verbose] > │     let v193 : UH0 = UH0_0(3, v192)                                          │

00:00:14 #545 [Verbose] > │     let v194 : UH0 = UH0_0(2, v193)                                          │

00:00:14 #546 [Verbose] > │     let v195 : UH0 = UH0_0(1, v194)                                          │

00:00:14 #547 [Verbose] > │     let v196 : UH0 = UH0_0(6, v195)                                          │

00:00:14 #548 [Verbose] > │     let v197 : UH0 = UH0_0(5, v196)                                          │

00:00:14 #549 [Verbose] > │     let v198 : UH0 = UH0_0(4, v197)                                          │

00:00:14 #550 [Verbose] > │     let v199 : UH0 = UH0_0(3, v198)                                          │

00:00:14 #551 [Verbose] > │     let v200 : UH0 = UH0_0(2, v199)                                          │

00:00:14 #552 [Verbose] > │     let v201 : UH0 = UH0_0(1, v200)                                          │

00:00:14 #553 [Verbose] > │     let v202 : UH0 = UH0_0(6, v201)                                          │

00:00:14 #554 [Verbose] > │     let v203 : UH0 = UH0_0(5, v202)                                          │

00:00:14 #555 [Verbose] > │     let v204 : UH0 = UH0_1                                                   │

00:00:14 #556 [Verbose] > │     let v205 : UH0 = UH0_0(2, v204)                                          │

00:00:14 #557 [Verbose] > │     let v206 : UH0 = UH0_0(1, v205)                                          │

00:00:14 #558 [Verbose] > │     let v207 : UH0 = UH0_0(6, v206)                                          │

00:00:14 #559 [Verbose] > │     let v208 : UH0 = UH0_0(5, v207)                                          │

00:00:14 #560 [Verbose] > │     let v209 : UH0 = UH0_0(4, v208)                                          │

00:00:14 #561 [Verbose] > │     let v210 : UH0 = UH0_0(3, v209)                                          │

00:00:14 #562 [Verbose] > │     let v211 : UH0 = UH0_0(2, v210)                                          │

00:00:14 #563 [Verbose] > │     let v212 : UH0 = UH0_0(1, v211)                                          │

00:00:14 #564 [Verbose] > │     let v213 : UH0 = UH0_0(6, v212)                                          │

00:00:14 #565 [Verbose] > │     let v214 : UH0 = UH0_0(5, v213)                                          │

00:00:14 #566 [Verbose] > │     let v215 : UH0 = UH0_0(4, v214)                                          │

00:00:14 #567 [Verbose] > │     let v216 : UH0 = UH0_0(3, v215)                                          │

00:00:14 #568 [Verbose] > │     let v217 : UH0 = UH0_0(2, v216)                                          │

00:00:14 #569 [Verbose] > │     let v218 : UH0 = UH0_0(1, v217)                                          │

00:00:14 #570 [Verbose] > │     let v219 : UH0 = UH0_0(6, v218)                                          │

00:00:14 #571 [Verbose] > │     let v220 : UH0 = UH0_0(5, v219)                                          │

00:00:14 #572 [Verbose] > │     let v221 : string = $"_equal / actual: %A{v203} / expected: %A{v220}"    │

00:00:14 #573 [Verbose] > │     ()                                                                       │

00:00:14 #574 [Verbose] > │ method0()                                                                    │

00:00:14 #575 [Verbose] > │                                                                              │

00:00:14 #576 [Verbose] > │                                                                              │

00:00:14 #577 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #578 [Verbose] >

00:00:14 #579 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:14 #580 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:14 #581 [Verbose] > │ ## create_sequential_roller                                                  │

00:00:14 #582 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #583 [Verbose] >

00:00:14 #584 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #585 [Verbose] > inl create_sequential_roller list =

00:00:14 #586 [Verbose] >     inl s = list |> listm.rev |> listm.append list |> stream.from_list |>

00:00:14 #587 [Verbose] > stream.memoize

00:00:14 #588 [Verbose] >     inl current_index = mut 0i32

00:00:14 #589 [Verbose] >     inl acc = mut 1

00:00:14 #590 [Verbose] >     inl len = mut -1

00:00:14 #591 [Verbose] >     let rec loop () =

00:00:14 #592 [Verbose] >         match s () |> stream.try_item *current_index with

00:00:14 #593 [Verbose] >         | Some item =>

00:00:14 #594 [Verbose] >             current_index <- *current_index + 1

00:00:14 #595 [Verbose] >             item

00:00:14 #596 [Verbose] >         | None =>

00:00:14 #597 [Verbose] >             if *len = -1

00:00:14 #598 [Verbose] >             then len <- *current_index

00:00:14 #599 [Verbose] >             acc <-

00:00:14 #600 [Verbose] >                 if *acc >= *len

00:00:14 #601 [Verbose] >                 then 1

00:00:14 #602 [Verbose] >                 else *acc + 1

00:00:14 #603 [Verbose] >             current_index <- *acc - 1

00:00:14 #604 [Verbose] >             loop ()

00:00:14 #605 [Verbose] >     loop

00:00:14 #606 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3148-4894-48f46a6f5649\main.spi

00:00:14 #607 [Verbose] >

00:00:14 #608 [Verbose] > ╭─[ 172.91ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #609 [Verbose] > │ ()                                                                           │

00:00:14 #610 [Verbose] > │                                                                              │

00:00:14 #611 [Verbose] > │                                                                              │

00:00:14 #612 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:14 #613 [Verbose] >

00:00:14 #614 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:14 #615 [Verbose] > // // test

00:00:14 #616 [Verbose] >

00:00:14 #617 [Verbose] > inl sequential_roll = create_sequential_roller [[ 1i32; 2; 3; 4 ]]

00:00:14 #618 [Verbose] >

00:00:14 #619 [Verbose] > am.init 20i32 (ignore >> sequential_roll)

00:00:14 #620 [Verbose] > |> _equal (a ;[[ 1; 2; 3; 4; 4; 3; 2; 1; 2; 3; 4; 4; 3; 2; 1; 3; 4; 4; 3; 2 ]] :

00:00:14 #621 [Verbose] > a i32 i32)

00:00:14 #622 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3166-6637-60e60798c26d\main.spi

00:00:14 #623 [Verbose] >

00:00:14 #624 [Verbose] > ╭─[ 629.28ms - stdout ]────────────────────────────────────────────────────────╮

00:00:14 #625 [Verbose] > │ type UH0 =                                                                   │

00:00:14 #626 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:14 #627 [Verbose] > │     | UH0_1                                                                  │

00:00:14 #628 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:14 #629 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:14 #630 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:14 #631 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:14 #632 [Verbose] > │ and Mut1 = {mutable l0 : int32}                                              │

00:00:14 #633 [Verbose] > │ and Mut2 = {mutable l0 : int32}                                              │

00:00:14 #634 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:14 #635 [Verbose] > │     | US1_0                                                                  │

00:00:14 #636 [Verbose] > │     | US1_1 of f1_0 : int32                                                  │

00:00:14 #637 [Verbose] > │ let rec closure8 () () : UH0 =                                               │

00:00:14 #638 [Verbose] > │     UH0_1                                                                    │

00:00:14 #639 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:14 #640 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:14 #641 [Verbose] > │     UH0_0(1, v0)                                                             │

00:00:14 #642 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:14 #643 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:14 #644 [Verbose] > │     UH0_0(2, v0)                                                             │

00:00:14 #645 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:14 #646 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:14 #647 [Verbose] > │     UH0_0(3, v0)                                                             │

00:00:14 #648 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:14 #649 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:14 #650 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:14 #651 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:14 #652 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:14 #653 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:14 #654 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:15 #655 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:15 #656 [Verbose] > │     UH0_0(3, v0)                                                             │

00:00:15 #657 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:15 #658 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:15 #659 [Verbose] > │     UH0_0(2, v0)                                                             │

00:00:15 #660 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:15 #661 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:15 #662 [Verbose] > │     UH0_0(1, v0)                                                             │

00:00:15 #663 [Verbose] > │ and method1 (v0 : Mut2) : bool =                                             │

00:00:15 #664 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:15 #665 [Verbose] > │     let v2 : bool = v1 < 20                                                  │

00:00:15 #666 [Verbose] > │     v2                                                                       │

00:00:15 #667 [Verbose] > │ and closure9 (v0 : Mut0) () : UH0 =                                          │

00:00:15 #668 [Verbose] > │     let v1 : US0 = v0.l0                                                     │

00:00:15 #669 [Verbose] > │     match v1 with                                                            │

00:00:15 #670 [Verbose] > │     | US0_0(v2) -> (* Computed *)                                            │

00:00:15 #671 [Verbose] > │         v2                                                                   │

00:00:15 #672 [Verbose] > │     | US0_1(v3) -> (* NotComputed *)                                         │

00:00:15 #673 [Verbose] > │         let v4 : UH0 = v3 ()                                                 │

00:00:15 #674 [Verbose] > │         let v13 : UH0 =                                                      │

00:00:15 #675 [Verbose] > │             match v4 with                                                    │

00:00:15 #676 [Verbose] > │             | UH0_0(v6, v7) -> (* StreamCons *)                              │

00:00:15 #677 [Verbose] > │                 let v8 : US0 = US0_1(v7)                                     │

00:00:15 #678 [Verbose] > │                 let v9 : Mut0 = {l0 = v8} : Mut0                             │

00:00:15 #679 [Verbose] > │                 let v10 : (unit -> UH0) = closure9(v9)                       │

00:00:15 #680 [Verbose] > │                 UH0_0(v6, v10)                                               │

00:00:15 #681 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:15 #682 [Verbose] > │                 UH0_1                                                        │

00:00:15 #683 [Verbose] > │         let v14 : US0 = US0_0(v13)                                           │

00:00:15 #684 [Verbose] > │         v0.l0 <- v14                                                         │

00:00:15 #685 [Verbose] > │         v13                                                                  │

00:00:15 #686 [Verbose] > │ and method3 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:15 #687 [Verbose] > │     match v1 with                                                            │

00:00:15 #688 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:15 #689 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:15 #690 [Verbose] > │         if v4 then                                                           │

00:00:15 #691 [Verbose] > │             US1_1(v2)                                                        │

00:00:15 #692 [Verbose] > │         else                                                                 │

00:00:15 #693 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:15 #694 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:15 #695 [Verbose] > │             method3(v6, v7)                                                  │

00:00:15 #696 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:15 #697 [Verbose] > │         US1_0                                                                │

00:00:15 #698 [Verbose] > │ and method2 (v0 : Mut0, v1 : Mut1, v2 : Mut1, v3 : Mut1) : int32 =           │

00:00:15 #699 [Verbose] > │     let v4 : US0 = v0.l0                                                     │

00:00:15 #700 [Verbose] > │     let v19 : UH0 =                                                          │

00:00:15 #701 [Verbose] > │         match v4 with                                                        │

00:00:15 #702 [Verbose] > │         | US0_0(v5) -> (* Computed *)                                        │

00:00:15 #703 [Verbose] > │             v5                                                               │

00:00:15 #704 [Verbose] > │         | US0_1(v6) -> (* NotComputed *)                                     │

00:00:15 #705 [Verbose] > │             let v7 : UH0 = v6 ()                                             │

00:00:15 #706 [Verbose] > │             let v16 : UH0 =                                                  │

00:00:15 #707 [Verbose] > │                 match v7 with                                                │

00:00:15 #708 [Verbose] > │                 | UH0_0(v9, v10) -> (* StreamCons *)                         │

00:00:15 #709 [Verbose] > │                     let v11 : US0 = US0_1(v10)                               │

00:00:15 #710 [Verbose] > │                     let v12 : Mut0 = {l0 = v11} : Mut0                       │

00:00:15 #711 [Verbose] > │                     let v13 : (unit -> UH0) = closure9(v12)                  │

00:00:15 #712 [Verbose] > │                     UH0_0(v9, v13)                                           │

00:00:15 #713 [Verbose] > │                 | UH0_1 -> (* StreamNil *)                                   │

00:00:15 #714 [Verbose] > │                     UH0_1                                                    │

00:00:15 #715 [Verbose] > │             let v17 : US0 = US0_0(v16)                                       │

00:00:15 #716 [Verbose] > │             v0.l0 <- v17                                                     │

00:00:15 #717 [Verbose] > │             v16                                                              │

00:00:15 #718 [Verbose] > │     let v20 : int32 = v1.l0                                                  │

00:00:15 #719 [Verbose] > │     let v21 : US1 = method3(v20, v19)                                        │

00:00:15 #720 [Verbose] > │     match v21 with                                                           │

00:00:15 #721 [Verbose] > │     | US1_0 -> (* None *)                                                    │

00:00:15 #722 [Verbose] > │         let v25 : int32 = v3.l0                                              │

00:00:15 #723 [Verbose] > │         let v26 : bool = v25 = -1                                            │

00:00:15 #724 [Verbose] > │         if v26 then                                                          │

00:00:15 #725 [Verbose] > │             let v27 : int32 = v1.l0                                          │

00:00:15 #726 [Verbose] > │             v3.l0 <- v27                                                     │

00:00:15 #727 [Verbose] > │             ()                                                               │

00:00:15 #728 [Verbose] > │         let v28 : int32 = v2.l0                                              │

00:00:15 #729 [Verbose] > │         let v29 : int32 = v3.l0                                              │

00:00:15 #730 [Verbose] > │         let v30 : bool = v28 >= v29                                          │

00:00:15 #731 [Verbose] > │         let v33 : int32 =                                                    │

00:00:15 #732 [Verbose] > │             if v30 then                                                      │

00:00:15 #733 [Verbose] > │                 1                                                            │

00:00:15 #734 [Verbose] > │             else                                                             │

00:00:15 #735 [Verbose] > │                 let v31 : int32 = v2.l0                                      │

00:00:15 #736 [Verbose] > │                 let v32 : int32 = v31 + 1                                    │

00:00:15 #737 [Verbose] > │                 v32                                                          │

00:00:15 #738 [Verbose] > │         v2.l0 <- v33                                                         │

00:00:15 #739 [Verbose] > │         let v34 : int32 = v2.l0                                              │

00:00:15 #740 [Verbose] > │         let v35 : int32 = v34 - 1                                            │

00:00:15 #741 [Verbose] > │         v1.l0 <- v35                                                         │

00:00:15 #742 [Verbose] > │         method2(v0, v1, v2, v3)                                              │

00:00:15 #743 [Verbose] > │     | US1_1(v22) -> (* Some *)                                               │

00:00:15 #744 [Verbose] > │         let v23 : int32 = v1.l0                                              │

00:00:15 #745 [Verbose] > │         let v24 : int32 = v23 + 1                                            │

00:00:15 #746 [Verbose] > │         v1.l0 <- v24                                                         │

00:00:15 #747 [Verbose] > │         v22                                                                  │

00:00:15 #748 [Verbose] > │ and method4 (v0 : (int32 []), v1 : (int32 []), v2 : int32) : bool =          │

00:00:15 #749 [Verbose] > │     let v3 : int32 = v0.Length                                               │

00:00:15 #750 [Verbose] > │     let v4 : bool = v2 < v3                                                  │

00:00:15 #751 [Verbose] > │     if v4 then                                                               │

00:00:15 #752 [Verbose] > │         let v5 : int32 = v0.[int v2]                                         │

00:00:15 #753 [Verbose] > │         let v6 : int32 = v1.[int v2]                                         │

00:00:15 #754 [Verbose] > │         let v7 : bool = v5 = v6                                              │

00:00:15 #755 [Verbose] > │         if v7 then                                                           │

00:00:15 #756 [Verbose] > │             let v8 : int32 = v2 + 1                                          │

00:00:15 #757 [Verbose] > │             method4(v0, v1, v8)                                              │

00:00:15 #758 [Verbose] > │         else                                                                 │

00:00:15 #759 [Verbose] > │             false                                                            │

00:00:15 #760 [Verbose] > │     else                                                                     │

00:00:15 #761 [Verbose] > │         true                                                                 │

00:00:15 #762 [Verbose] > │ and method0 () : unit =                                                      │

00:00:15 #763 [Verbose] > │     let v0 : (unit -> UH0) = closure0()                                      │

00:00:15 #764 [Verbose] > │     let v1 : US0 = US0_1(v0)                                                 │

00:00:15 #765 [Verbose] > │     let v2 : Mut0 = {l0 = v1} : Mut0                                         │

00:00:15 #766 [Verbose] > │     let v3 : Mut1 = {l0 = 0} : Mut1                                          │

00:00:15 #767 [Verbose] > │     let v4 : Mut1 = {l0 = 1} : Mut1                                          │

00:00:15 #768 [Verbose] > │     let v5 : Mut1 = {l0 = -1} : Mut1                                         │

00:00:15 #769 [Verbose] > │     let v6 : (int32 []) = Array.zeroCreate<int32> (20)                       │

00:00:15 #770 [Verbose] > │     let v7 : Mut2 = {l0 = 0} : Mut2                                          │

00:00:15 #771 [Verbose] > │     while method1(v7) do                                                     │

00:00:15 #772 [Verbose] > │         let v9 : int32 = v7.l0                                               │

00:00:15 #773 [Verbose] > │         let v10 : int32 = method2(v2, v3, v4, v5)                            │

00:00:15 #774 [Verbose] > │         v6.[int v9] <- v10                                                   │

00:00:15 #775 [Verbose] > │         let v11 : int32 = v9 + 1                                             │

00:00:15 #776 [Verbose] > │         v7.l0 <- v11                                                         │

00:00:15 #777 [Verbose] > │         ()                                                                   │

00:00:15 #778 [Verbose] > │     let v12 : (int32 []) = [|1; 2; 3; 4; 4; 3; 2; 1; 2; 3; 4; 4; 3; 2; 1; 3; │

00:00:15 #779 [Verbose] > │ 4; 4; 3; 2|]                                                                 │

00:00:15 #780 [Verbose] > │     let v13 : int32 = v6.Length                                              │

00:00:15 #781 [Verbose] > │     let v14 : int32 = v12.Length                                             │

00:00:15 #782 [Verbose] > │     let v15 : bool = v13 = v14                                               │

00:00:15 #783 [Verbose] > │     let v16 : bool = v15 <> true                                             │

00:00:15 #784 [Verbose] > │     let v19 : bool =                                                         │

00:00:15 #785 [Verbose] > │         if v16 then                                                          │

00:00:15 #786 [Verbose] > │             false                                                            │

00:00:15 #787 [Verbose] > │         else                                                                 │

00:00:15 #788 [Verbose] > │             let v17 : int32 = 0                                              │

00:00:15 #789 [Verbose] > │             method4(v6, v12, v17)                                            │

00:00:15 #790 [Verbose] > │     let v20 : string = $"_equal / actual: %A{v6} / expected: %A{v12}"        │

00:00:15 #791 [Verbose] > │     let v21 : bool = v19 = false                                             │

00:00:15 #792 [Verbose] > │     if v21 then                                                              │

00:00:15 #793 [Verbose] > │         failwith<unit> v20                                                   │

00:00:15 #794 [Verbose] > │ method0()                                                                    │

00:00:15 #795 [Verbose] > │                                                                              │

00:00:15 #796 [Verbose] > │                                                                              │

00:00:15 #797 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #798 [Verbose] >

00:00:15 #799 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:15 #800 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:15 #801 [Verbose] > │ ## roll_progressively                                                        │

00:00:15 #802 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #803 [Verbose] >

00:00:15 #804 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #805 [Verbose] > inl roll_progressively (log : option (string -> ())) roll reroll max =

00:00:15 #806 [Verbose] >     inl power = (calculate_dice_count log max) - 1i64

00:00:15 #807 [Verbose] >     let rec loop rolls size =

00:00:15 #808 [Verbose] >         if size < power + 1

00:00:15 #809 [Verbose] >         then loop (roll () :: rolls) (size + 1)

00:00:15 #810 [Verbose] >         else accumulate_dice_rolls log rolls power 0 |> function

00:00:15 #811 [Verbose] >             | Some (result, _) when result <= max => result

00:00:15 #812 [Verbose] >             | _ when reroll => loop (listm.init power (fun _ => roll ())) power

00:00:15 #813 [Verbose] >             | _ => loop (roll () :: rolls) (size + 1)

00:00:15 #814 [Verbose] >     loop [[]] 0

00:00:15 #815 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3236-3669-3897996ca868\main.spi

00:00:15 #816 [Verbose] >

00:00:15 #817 [Verbose] > ╭─[ 133.13ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #818 [Verbose] > │ ()                                                                           │

00:00:15 #819 [Verbose] > │                                                                              │

00:00:15 #820 [Verbose] > │                                                                              │

00:00:15 #821 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #822 [Verbose] >

00:00:15 #823 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #824 [Verbose] > // // test

00:00:15 #825 [Verbose] >

00:00:15 #826 [Verbose] > roll_progressively None roll_dice false 1

00:00:15 #827 [Verbose] > |> _equal 1

00:00:15 #828 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3250-5087-5fa93af98463\main.spi

00:00:15 #829 [Verbose] >

00:00:15 #830 [Verbose] > ╭─[ 306.48ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #831 [Verbose] > │ type UH0 =                                                                   │

00:00:15 #832 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:15 #833 [Verbose] > │     | UH0_1                                                                  │

00:00:15 #834 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:15 #835 [Verbose] > │     | US0_0                                                                  │

00:00:15 #836 [Verbose] > │     | US0_1 of f1_0 : int32 * f1_1 : UH0                                     │

00:00:15 #837 [Verbose] > │ let rec method3 (v0 : UH0, v1 : int32) : US0 =                               │

00:00:15 #838 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {-1L} / acc: {v1}"    │

00:00:15 #839 [Verbose] > │     let v3 : int32 = v1 + 1                                                  │

00:00:15 #840 [Verbose] > │     US0_1(v3, v0)                                                            │

00:00:15 #841 [Verbose] > │ and method2 (v0 : UH0, v1 : int32) : US0 =                                   │

00:00:15 #842 [Verbose] > │     match v0 with                                                            │

00:00:15 #843 [Verbose] > │     | UH0_0(v3, v4) -> (* Cons *)                                            │

00:00:15 #844 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:15 #845 [Verbose] > │         if v5 then                                                           │

00:00:15 #846 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:15 #847 [Verbose] > │             let v7 : string = $"accumulate_dice_rolls / power: {0L} / acc:   │

00:00:15 #848 [Verbose] > │ {v1} / roll: {v3} / value: {v6}"                                             │

00:00:15 #849 [Verbose] > │             let v8 : int32 = v1 + v6                                         │

00:00:15 #850 [Verbose] > │             method3(v4, v8)                                                  │

00:00:15 #851 [Verbose] > │         else                                                                 │

00:00:15 #852 [Verbose] > │             let v10 : string = $"accumulate_dice_rolls / power: {0L} / acc:  │

00:00:15 #853 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:15 #854 [Verbose] > │             method3(v4, v1)                                                  │

00:00:15 #855 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:15 #856 [Verbose] > │         US0_0                                                                │

00:00:15 #857 [Verbose] > │ and method1 (v0 : UH0, v1 : int64) : int32 =                                 │

00:00:15 #858 [Verbose] > │     let v2 : bool = v1 < 1L                                                  │

00:00:15 #859 [Verbose] > │     if v2 then                                                               │

00:00:15 #860 [Verbose] > │         let v3 : int32 = System.Random().Next (1, 7)                         │

00:00:15 #861 [Verbose] > │         let v4 : UH0 = UH0_0(v3, v0)                                         │

00:00:15 #862 [Verbose] > │         let v5 : int64 = v1 + 1L                                             │

00:00:15 #863 [Verbose] > │         method1(v4, v5)                                                      │

00:00:15 #864 [Verbose] > │     else                                                                     │

00:00:15 #865 [Verbose] > │         let v7 : int32 = 0                                                   │

00:00:15 #866 [Verbose] > │         let v8 : US0 = method2(v0, v7)                                       │

00:00:15 #867 [Verbose] > │         match v8 with                                                        │

00:00:15 #868 [Verbose] > │         | US0_1(v9, v10) -> (* Some *)                                       │

00:00:15 #869 [Verbose] > │             let v11 : bool = v9 <= 1                                         │

00:00:15 #870 [Verbose] > │             if v11 then                                                      │

00:00:15 #871 [Verbose] > │                 v9                                                           │

00:00:15 #872 [Verbose] > │             else                                                             │

00:00:15 #873 [Verbose] > │                 let v12 : int32 = System.Random().Next (1, 7)                │

00:00:15 #874 [Verbose] > │                 let v13 : UH0 = UH0_0(v12, v0)                               │

00:00:15 #875 [Verbose] > │                 let v14 : int64 = v1 + 1L                                    │

00:00:15 #876 [Verbose] > │                 method1(v13, v14)                                            │

00:00:15 #877 [Verbose] > │         | _ ->                                                               │

00:00:15 #878 [Verbose] > │             let v17 : int32 = System.Random().Next (1, 7)                    │

00:00:15 #879 [Verbose] > │             let v18 : UH0 = UH0_0(v17, v0)                                   │

00:00:15 #880 [Verbose] > │             let v19 : int64 = v1 + 1L                                        │

00:00:15 #881 [Verbose] > │             method1(v18, v19)                                                │

00:00:15 #882 [Verbose] > │ and method0 () : unit =                                                      │

00:00:15 #883 [Verbose] > │     let v0 : UH0 = UH0_1                                                     │

00:00:15 #884 [Verbose] > │     let v1 : int64 = 0L                                                      │

00:00:15 #885 [Verbose] > │     let v2 : int32 = method1(v0, v1)                                         │

00:00:15 #886 [Verbose] > │     let v3 : bool = v2 = 1                                                   │

00:00:15 #887 [Verbose] > │     let v4 : string = $"_equal / actual: %A{v2} / expected: %A{1}"           │

00:00:15 #888 [Verbose] > │     let v5 : bool = v3 = false                                               │

00:00:15 #889 [Verbose] > │     if v5 then                                                               │

00:00:15 #890 [Verbose] > │         failwith<unit> v4                                                    │

00:00:15 #891 [Verbose] > │ method0()                                                                    │

00:00:15 #892 [Verbose] > │                                                                              │

00:00:15 #893 [Verbose] > │                                                                              │

00:00:15 #894 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:15 #895 [Verbose] >

00:00:15 #896 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:15 #897 [Verbose] > // // test

00:00:15 #898 [Verbose] >

00:00:15 #899 [Verbose] > inl sequential_roll = create_sequential_roller [[ 5; 4; 4; 5; 1 ]]

00:00:15 #900 [Verbose] >

00:00:15 #901 [Verbose] > roll_progressively (Some console.write_line) sequential_roll false 2000i32

00:00:15 #902 [Verbose] > |> _equal 995

00:00:15 #903 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3283-8378-8fbc35905cdb\main.spi

00:00:15 #904 [Verbose] >

00:00:15 #905 [Verbose] > ╭─[ 408.23ms - stdout ]────────────────────────────────────────────────────────╮

00:00:15 #906 [Verbose] > │ type UH0 =                                                                   │

00:00:15 #907 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:15 #908 [Verbose] > │     | UH0_1                                                                  │

00:00:15 #909 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:15 #910 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:15 #911 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:15 #912 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:15 #913 [Verbose] > │ and Mut1 = {mutable l0 : int32}                                              │

00:00:15 #914 [Verbose] > │ and UH1 =                                                                    │

00:00:15 #915 [Verbose] > │     | UH1_0 of int32 * UH1                                                   │

00:00:15 #916 [Verbose] > │     | UH1_1                                                                  │

00:00:15 #917 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:15 #918 [Verbose] > │     | US1_0                                                                  │

00:00:15 #919 [Verbose] > │     | US1_1 of f1_0 : int32                                                  │

00:00:15 #920 [Verbose] > │ and [<Struct>] US2 =                                                         │

00:00:15 #921 [Verbose] > │     | US2_0                                                                  │

00:00:15 #922 [Verbose] > │     | US2_1 of f1_0 : int32 * f1_1 : UH1                                     │

00:00:15 #923 [Verbose] > │ let rec closure10 () () : UH0 =                                              │

00:00:15 #924 [Verbose] > │     UH0_1                                                                    │

00:00:15 #925 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:15 #926 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:15 #927 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:15 #928 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:15 #929 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:15 #930 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:15 #931 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:15 #932 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:15 #933 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:15 #934 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:15 #935 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:15 #936 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:15 #937 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:15 #938 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:15 #939 [Verbose] > │     UH0_0(1, v0)                                                             │

00:00:15 #940 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:15 #941 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:15 #942 [Verbose] > │     UH0_0(1, v0)                                                             │

00:00:15 #943 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:15 #944 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:15 #945 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:15 #946 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:15 #947 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:15 #948 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:15 #949 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:15 #950 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:15 #951 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:15 #952 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:15 #953 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:15 #954 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:15 #955 [Verbose] > │ and closure11 (v0 : Mut0) () : UH0 =                                         │

00:00:15 #956 [Verbose] > │     let v1 : US0 = v0.l0                                                     │

00:00:15 #957 [Verbose] > │     match v1 with                                                            │

00:00:15 #958 [Verbose] > │     | US0_0(v2) -> (* Computed *)                                            │

00:00:15 #959 [Verbose] > │         v2                                                                   │

00:00:15 #960 [Verbose] > │     | US0_1(v3) -> (* NotComputed *)                                         │

00:00:15 #961 [Verbose] > │         let v4 : UH0 = v3 ()                                                 │

00:00:15 #962 [Verbose] > │         let v13 : UH0 =                                                      │

00:00:15 #963 [Verbose] > │             match v4 with                                                    │

00:00:15 #964 [Verbose] > │             | UH0_0(v6, v7) -> (* StreamCons *)                              │

00:00:15 #965 [Verbose] > │                 let v8 : US0 = US0_1(v7)                                     │

00:00:15 #966 [Verbose] > │                 let v9 : Mut0 = {l0 = v8} : Mut0                             │

00:00:15 #967 [Verbose] > │                 let v10 : (unit -> UH0) = closure11(v9)                      │

00:00:15 #968 [Verbose] > │                 UH0_0(v6, v10)                                               │

00:00:15 #969 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:15 #970 [Verbose] > │                 UH0_1                                                        │

00:00:15 #971 [Verbose] > │         let v14 : US0 = US0_0(v13)                                           │

00:00:15 #972 [Verbose] > │         v0.l0 <- v14                                                         │

00:00:15 #973 [Verbose] > │         v13                                                                  │

00:00:15 #974 [Verbose] > │ and method3 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:15 #975 [Verbose] > │     match v1 with                                                            │

00:00:15 #976 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:15 #977 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:15 #978 [Verbose] > │         if v4 then                                                           │

00:00:15 #979 [Verbose] > │             US1_1(v2)                                                        │

00:00:15 #980 [Verbose] > │         else                                                                 │

00:00:15 #981 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:15 #982 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:15 #983 [Verbose] > │             method3(v6, v7)                                                  │

00:00:15 #984 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:15 #985 [Verbose] > │         US1_0                                                                │

00:00:15 #986 [Verbose] > │ and method2 (v0 : Mut0, v1 : Mut1, v2 : Mut1, v3 : Mut1) : int32 =           │

00:00:15 #987 [Verbose] > │     let v4 : US0 = v0.l0                                                     │

00:00:15 #988 [Verbose] > │     let v19 : UH0 =                                                          │

00:00:15 #989 [Verbose] > │         match v4 with                                                        │

00:00:15 #990 [Verbose] > │         | US0_0(v5) -> (* Computed *)                                        │

00:00:15 #991 [Verbose] > │             v5                                                               │

00:00:15 #992 [Verbose] > │         | US0_1(v6) -> (* NotComputed *)                                     │

00:00:15 #993 [Verbose] > │             let v7 : UH0 = v6 ()                                             │

00:00:15 #994 [Verbose] > │             let v16 : UH0 =                                                  │

00:00:15 #995 [Verbose] > │                 match v7 with                                                │

00:00:15 #996 [Verbose] > │                 | UH0_0(v9, v10) -> (* StreamCons *)                         │

00:00:15 #997 [Verbose] > │                     let v11 : US0 = US0_1(v10)                               │

00:00:15 #998 [Verbose] > │                     let v12 : Mut0 = {l0 = v11} : Mut0                       │

00:00:15 #999 [Verbose] > │                     let v13 : (unit -> UH0) = closure11(v12)                 │

00:00:15 #1000 [Verbose] > │                     UH0_0(v9, v13)                                           │

00:00:15 #1001 [Verbose] > │                 | UH0_1 -> (* StreamNil *)                                   │

00:00:15 #1002 [Verbose] > │                     UH0_1                                                    │

00:00:15 #1003 [Verbose] > │             let v17 : US0 = US0_0(v16)                                       │

00:00:15 #1004 [Verbose] > │             v0.l0 <- v17                                                     │

00:00:15 #1005 [Verbose] > │             v16                                                              │

00:00:15 #1006 [Verbose] > │     let v20 : int32 = v1.l0                                                  │

00:00:15 #1007 [Verbose] > │     let v21 : US1 = method3(v20, v19)                                        │

00:00:15 #1008 [Verbose] > │     match v21 with                                                           │

00:00:15 #1009 [Verbose] > │     | US1_0 -> (* None *)                                                    │

00:00:16 #1010 [Verbose] > │         let v25 : int32 = v3.l0                                              │

00:00:16 #1011 [Verbose] > │         let v26 : bool = v25 = -1                                            │

00:00:16 #1012 [Verbose] > │         if v26 then                                                          │

00:00:16 #1013 [Verbose] > │             let v27 : int32 = v1.l0                                          │

00:00:16 #1014 [Verbose] > │             v3.l0 <- v27                                                     │

00:00:16 #1015 [Verbose] > │             ()                                                               │

00:00:16 #1016 [Verbose] > │         let v28 : int32 = v2.l0                                              │

00:00:16 #1017 [Verbose] > │         let v29 : int32 = v3.l0                                              │

00:00:16 #1018 [Verbose] > │         let v30 : bool = v28 >= v29                                          │

00:00:16 #1019 [Verbose] > │         let v33 : int32 =                                                    │

00:00:16 #1020 [Verbose] > │             if v30 then                                                      │

00:00:16 #1021 [Verbose] > │                 1                                                            │

00:00:16 #1022 [Verbose] > │             else                                                             │

00:00:16 #1023 [Verbose] > │                 let v31 : int32 = v2.l0                                      │

00:00:16 #1024 [Verbose] > │                 let v32 : int32 = v31 + 1                                    │

00:00:16 #1025 [Verbose] > │                 v32                                                          │

00:00:16 #1026 [Verbose] > │         v2.l0 <- v33                                                         │

00:00:16 #1027 [Verbose] > │         let v34 : int32 = v2.l0                                              │

00:00:16 #1028 [Verbose] > │         let v35 : int32 = v34 - 1                                            │

00:00:16 #1029 [Verbose] > │         v1.l0 <- v35                                                         │

00:00:16 #1030 [Verbose] > │         method2(v0, v1, v2, v3)                                              │

00:00:16 #1031 [Verbose] > │     | US1_1(v22) -> (* Some *)                                               │

00:00:16 #1032 [Verbose] > │         let v23 : int32 = v1.l0                                              │

00:00:16 #1033 [Verbose] > │         let v24 : int32 = v23 + 1                                            │

00:00:16 #1034 [Verbose] > │         v1.l0 <- v24                                                         │

00:00:16 #1035 [Verbose] > │         v22                                                                  │

00:00:16 #1036 [Verbose] > │ and method9 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1037 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {-1L} / acc: {v1}"    │

00:00:16 #1038 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:16 #1039 [Verbose] > │     let v3 : int32 = v1 + 1                                                  │

00:00:16 #1040 [Verbose] > │     US2_1(v3, v0)                                                            │

00:00:16 #1041 [Verbose] > │ and method8 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1042 [Verbose] > │     match v0 with                                                            │

00:00:16 #1043 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1044 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1045 [Verbose] > │         if v5 then                                                           │

00:00:16 #1046 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1047 [Verbose] > │             let v7 : string = $"accumulate_dice_rolls / power: {0L} / acc:   │

00:00:16 #1048 [Verbose] > │ {v1} / roll: {v3} / value: {v6}"                                             │

00:00:16 #1049 [Verbose] > │             System.Console.WriteLine v7                                      │

00:00:16 #1050 [Verbose] > │             let v8 : int32 = v1 + v6                                         │

00:00:16 #1051 [Verbose] > │             method9(v4, v8)                                                  │

00:00:16 #1052 [Verbose] > │         else                                                                 │

00:00:16 #1053 [Verbose] > │             let v10 : string = $"accumulate_dice_rolls / power: {0L} / acc:  │

00:00:16 #1054 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1055 [Verbose] > │             System.Console.WriteLine v10                                     │

00:00:16 #1056 [Verbose] > │             method9(v4, v1)                                                  │

00:00:16 #1057 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1058 [Verbose] > │         US2_0                                                                │

00:00:16 #1059 [Verbose] > │ and method7 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1060 [Verbose] > │     match v0 with                                                            │

00:00:16 #1061 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1062 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1063 [Verbose] > │         if v5 then                                                           │

00:00:16 #1064 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1065 [Verbose] > │             let v7 : int32 = v6 * 6                                          │

00:00:16 #1066 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {1L} / acc:   │

00:00:16 #1067 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1068 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1069 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1070 [Verbose] > │             method8(v4, v9)                                                  │

00:00:16 #1071 [Verbose] > │         else                                                                 │

00:00:16 #1072 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {1L} / acc:  │

00:00:16 #1073 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1074 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1075 [Verbose] > │             method8(v4, v1)                                                  │

00:00:16 #1076 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1077 [Verbose] > │         US2_0                                                                │

00:00:16 #1078 [Verbose] > │ and method6 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1079 [Verbose] > │     match v0 with                                                            │

00:00:16 #1080 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1081 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1082 [Verbose] > │         if v5 then                                                           │

00:00:16 #1083 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1084 [Verbose] > │             let v7 : int32 = v6 * 36                                         │

00:00:16 #1085 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {2L} / acc:   │

00:00:16 #1086 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1087 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1088 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1089 [Verbose] > │             method7(v4, v9)                                                  │

00:00:16 #1090 [Verbose] > │         else                                                                 │

00:00:16 #1091 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {2L} / acc:  │

00:00:16 #1092 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1093 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1094 [Verbose] > │             method7(v4, v1)                                                  │

00:00:16 #1095 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1096 [Verbose] > │         US2_0                                                                │

00:00:16 #1097 [Verbose] > │ and method5 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1098 [Verbose] > │     match v0 with                                                            │

00:00:16 #1099 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1100 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1101 [Verbose] > │         if v5 then                                                           │

00:00:16 #1102 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1103 [Verbose] > │             let v7 : int32 = v6 * 216                                        │

00:00:16 #1104 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {3L} / acc:   │

00:00:16 #1105 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1106 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1107 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1108 [Verbose] > │             method6(v4, v9)                                                  │

00:00:16 #1109 [Verbose] > │         else                                                                 │

00:00:16 #1110 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {3L} / acc:  │

00:00:16 #1111 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1112 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1113 [Verbose] > │             method6(v4, v1)                                                  │

00:00:16 #1114 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1115 [Verbose] > │         US2_0                                                                │

00:00:16 #1116 [Verbose] > │ and method4 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1117 [Verbose] > │     match v0 with                                                            │

00:00:16 #1118 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1119 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1120 [Verbose] > │         if v5 then                                                           │

00:00:16 #1121 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1122 [Verbose] > │             let v7 : int32 = v6 * 1296                                       │

00:00:16 #1123 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {4L} / acc:   │

00:00:16 #1124 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1125 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1126 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1127 [Verbose] > │             method5(v4, v9)                                                  │

00:00:16 #1128 [Verbose] > │         else                                                                 │

00:00:16 #1129 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {4L} / acc:  │

00:00:16 #1130 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1131 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1132 [Verbose] > │             method5(v4, v1)                                                  │

00:00:16 #1133 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1134 [Verbose] > │         US2_0                                                                │

00:00:16 #1135 [Verbose] > │ and method1 (v0 : Mut0, v1 : Mut1, v2 : Mut1, v3 : Mut1, v4 : UH1, v5 :      │

00:00:16 #1136 [Verbose] > │ int64) : int32 =                                                             │

00:00:16 #1137 [Verbose] > │     let v6 : bool = v5 < 5L                                                  │

00:00:16 #1138 [Verbose] > │     if v6 then                                                               │

00:00:16 #1139 [Verbose] > │         let v7 : int32 = method2(v0, v1, v2, v3)                             │

00:00:16 #1140 [Verbose] > │         let v8 : UH1 = UH1_0(v7, v4)                                         │

00:00:16 #1141 [Verbose] > │         let v9 : int64 = v5 + 1L                                             │

00:00:16 #1142 [Verbose] > │         method1(v0, v1, v2, v3, v8, v9)                                      │

00:00:16 #1143 [Verbose] > │     else                                                                     │

00:00:16 #1144 [Verbose] > │         let v11 : int32 = 0                                                  │

00:00:16 #1145 [Verbose] > │         let v12 : US2 = method4(v4, v11)                                     │

00:00:16 #1146 [Verbose] > │         match v12 with                                                       │

00:00:16 #1147 [Verbose] > │         | US2_1(v13, v14) -> (* Some *)                                      │

00:00:16 #1148 [Verbose] > │             let v15 : bool = v13 <= 2000                                     │

00:00:16 #1149 [Verbose] > │             if v15 then                                                      │

00:00:16 #1150 [Verbose] > │                 v13                                                          │

00:00:16 #1151 [Verbose] > │             else                                                             │

00:00:16 #1152 [Verbose] > │                 let v16 : int32 = method2(v0, v1, v2, v3)                    │

00:00:16 #1153 [Verbose] > │                 let v17 : UH1 = UH1_0(v16, v4)                               │

00:00:16 #1154 [Verbose] > │                 let v18 : int64 = v5 + 1L                                    │

00:00:16 #1155 [Verbose] > │                 method1(v0, v1, v2, v3, v17, v18)                            │

00:00:16 #1156 [Verbose] > │         | _ ->                                                               │

00:00:16 #1157 [Verbose] > │             let v21 : int32 = method2(v0, v1, v2, v3)                        │

00:00:16 #1158 [Verbose] > │             let v22 : UH1 = UH1_0(v21, v4)                                   │

00:00:16 #1159 [Verbose] > │             let v23 : int64 = v5 + 1L                                        │

00:00:16 #1160 [Verbose] > │             method1(v0, v1, v2, v3, v22, v23)                                │

00:00:16 #1161 [Verbose] > │ and method0 () : unit =                                                      │

00:00:16 #1162 [Verbose] > │     let v0 : (unit -> UH0) = closure0()                                      │

00:00:16 #1163 [Verbose] > │     let v1 : US0 = US0_1(v0)                                                 │

00:00:16 #1164 [Verbose] > │     let v2 : Mut0 = {l0 = v1} : Mut0                                         │

00:00:16 #1165 [Verbose] > │     let v3 : Mut1 = {l0 = 0} : Mut1                                          │

00:00:16 #1166 [Verbose] > │     let v4 : Mut1 = {l0 = 1} : Mut1                                          │

00:00:16 #1167 [Verbose] > │     let v5 : Mut1 = {l0 = -1} : Mut1                                         │

00:00:16 #1168 [Verbose] > │     let v6 : string = $"calculate_dice_count / max: {2000} / n: {5L} / p:    │

00:00:16 #1169 [Verbose] > │ {7776}"                                                                      │

00:00:16 #1170 [Verbose] > │     System.Console.WriteLine v6                                              │

00:00:16 #1171 [Verbose] > │     let v7 : UH1 = UH1_1                                                     │

00:00:16 #1172 [Verbose] > │     let v8 : int64 = 0L                                                      │

00:00:16 #1173 [Verbose] > │     let v9 : int32 = method1(v2, v3, v4, v5, v7, v8)                         │

00:00:16 #1174 [Verbose] > │     let v10 : bool = v9 = 995                                                │

00:00:16 #1175 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v9} / expected: %A{995}"        │

00:00:16 #1176 [Verbose] > │     let v12 : bool = v10 = false                                             │

00:00:16 #1177 [Verbose] > │     if v12 then                                                              │

00:00:16 #1178 [Verbose] > │         failwith<unit> v11                                                   │

00:00:16 #1179 [Verbose] > │ method0()                                                                    │

00:00:16 #1180 [Verbose] > │                                                                              │

00:00:16 #1181 [Verbose] > │ calculate_dice_count / max: 2000 / n: 5 / p: 7776                            │

00:00:16 #1182 [Verbose] > │ accumulate_dice_rolls / power: 4 / acc: 0 / roll: 1                          │

00:00:16 #1183 [Verbose] > │ accumulate_dice_rolls / power: 3 / acc: 0 / roll: 5 / value: 864             │

00:00:16 #1184 [Verbose] > │ accumulate_dice_rolls / power: 2 / acc: 864 / roll: 4 / value: 108           │

00:00:16 #1185 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 972 / roll: 4 / value: 18            │

00:00:16 #1186 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 990 / roll: 5 / value: 4             │

00:00:16 #1187 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 994                                 │

00:00:16 #1188 [Verbose] > │                                                                              │

00:00:16 #1189 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #1190 [Verbose] >

00:00:16 #1191 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #1192 [Verbose] > // // test

00:00:16 #1193 [Verbose] >

00:00:16 #1194 [Verbose] > inl sequential_roll = create_sequential_roller [[ 5; 4; 4; 5; 2 ]]

00:00:16 #1195 [Verbose] >

00:00:16 #1196 [Verbose] > roll_progressively (Some console.write_line) sequential_roll false 2000i32

00:00:16 #1197 [Verbose] > |> _equal 1678

00:00:16 #1198 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3338-3817-3022e926863e\main.spi

00:00:16 #1199 [Verbose] >

00:00:16 #1200 [Verbose] > ╭─[ 403.47ms - stdout ]────────────────────────────────────────────────────────╮

00:00:16 #1201 [Verbose] > │ type UH0 =                                                                   │

00:00:16 #1202 [Verbose] > │     | UH0_0 of int32 * (unit -> UH0)                                         │

00:00:16 #1203 [Verbose] > │     | UH0_1                                                                  │

00:00:16 #1204 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:16 #1205 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:16 #1206 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:16 #1207 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:16 #1208 [Verbose] > │ and Mut1 = {mutable l0 : int32}                                              │

00:00:16 #1209 [Verbose] > │ and UH1 =                                                                    │

00:00:16 #1210 [Verbose] > │     | UH1_0 of int32 * UH1                                                   │

00:00:16 #1211 [Verbose] > │     | UH1_1                                                                  │

00:00:16 #1212 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:16 #1213 [Verbose] > │     | US1_0                                                                  │

00:00:16 #1214 [Verbose] > │     | US1_1 of f1_0 : int32                                                  │

00:00:16 #1215 [Verbose] > │ and [<Struct>] US2 =                                                         │

00:00:16 #1216 [Verbose] > │     | US2_0                                                                  │

00:00:16 #1217 [Verbose] > │     | US2_1 of f1_0 : int32 * f1_1 : UH1                                     │

00:00:16 #1218 [Verbose] > │ let rec closure10 () () : UH0 =                                              │

00:00:16 #1219 [Verbose] > │     UH0_1                                                                    │

00:00:16 #1220 [Verbose] > │ and closure9 () () : UH0 =                                                   │

00:00:16 #1221 [Verbose] > │     let v0 : (unit -> UH0) = closure10()                                     │

00:00:16 #1222 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:16 #1223 [Verbose] > │ and closure8 () () : UH0 =                                                   │

00:00:16 #1224 [Verbose] > │     let v0 : (unit -> UH0) = closure9()                                      │

00:00:16 #1225 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:16 #1226 [Verbose] > │ and closure7 () () : UH0 =                                                   │

00:00:16 #1227 [Verbose] > │     let v0 : (unit -> UH0) = closure8()                                      │

00:00:16 #1228 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:16 #1229 [Verbose] > │ and closure6 () () : UH0 =                                                   │

00:00:16 #1230 [Verbose] > │     let v0 : (unit -> UH0) = closure7()                                      │

00:00:16 #1231 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:16 #1232 [Verbose] > │ and closure5 () () : UH0 =                                                   │

00:00:16 #1233 [Verbose] > │     let v0 : (unit -> UH0) = closure6()                                      │

00:00:16 #1234 [Verbose] > │     UH0_0(2, v0)                                                             │

00:00:16 #1235 [Verbose] > │ and closure4 () () : UH0 =                                                   │

00:00:16 #1236 [Verbose] > │     let v0 : (unit -> UH0) = closure5()                                      │

00:00:16 #1237 [Verbose] > │     UH0_0(2, v0)                                                             │

00:00:16 #1238 [Verbose] > │ and closure3 () () : UH0 =                                                   │

00:00:16 #1239 [Verbose] > │     let v0 : (unit -> UH0) = closure4()                                      │

00:00:16 #1240 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:16 #1241 [Verbose] > │ and closure2 () () : UH0 =                                                   │

00:00:16 #1242 [Verbose] > │     let v0 : (unit -> UH0) = closure3()                                      │

00:00:16 #1243 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:16 #1244 [Verbose] > │ and closure1 () () : UH0 =                                                   │

00:00:16 #1245 [Verbose] > │     let v0 : (unit -> UH0) = closure2()                                      │

00:00:16 #1246 [Verbose] > │     UH0_0(4, v0)                                                             │

00:00:16 #1247 [Verbose] > │ and closure0 () () : UH0 =                                                   │

00:00:16 #1248 [Verbose] > │     let v0 : (unit -> UH0) = closure1()                                      │

00:00:16 #1249 [Verbose] > │     UH0_0(5, v0)                                                             │

00:00:16 #1250 [Verbose] > │ and closure11 (v0 : Mut0) () : UH0 =                                         │

00:00:16 #1251 [Verbose] > │     let v1 : US0 = v0.l0                                                     │

00:00:16 #1252 [Verbose] > │     match v1 with                                                            │

00:00:16 #1253 [Verbose] > │     | US0_0(v2) -> (* Computed *)                                            │

00:00:16 #1254 [Verbose] > │         v2                                                                   │

00:00:16 #1255 [Verbose] > │     | US0_1(v3) -> (* NotComputed *)                                         │

00:00:16 #1256 [Verbose] > │         let v4 : UH0 = v3 ()                                                 │

00:00:16 #1257 [Verbose] > │         let v13 : UH0 =                                                      │

00:00:16 #1258 [Verbose] > │             match v4 with                                                    │

00:00:16 #1259 [Verbose] > │             | UH0_0(v6, v7) -> (* StreamCons *)                              │

00:00:16 #1260 [Verbose] > │                 let v8 : US0 = US0_1(v7)                                     │

00:00:16 #1261 [Verbose] > │                 let v9 : Mut0 = {l0 = v8} : Mut0                             │

00:00:16 #1262 [Verbose] > │                 let v10 : (unit -> UH0) = closure11(v9)                      │

00:00:16 #1263 [Verbose] > │                 UH0_0(v6, v10)                                               │

00:00:16 #1264 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:16 #1265 [Verbose] > │                 UH0_1                                                        │

00:00:16 #1266 [Verbose] > │         let v14 : US0 = US0_0(v13)                                           │

00:00:16 #1267 [Verbose] > │         v0.l0 <- v14                                                         │

00:00:16 #1268 [Verbose] > │         v13                                                                  │

00:00:16 #1269 [Verbose] > │ and method3 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:16 #1270 [Verbose] > │     match v1 with                                                            │

00:00:16 #1271 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:16 #1272 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:16 #1273 [Verbose] > │         if v4 then                                                           │

00:00:16 #1274 [Verbose] > │             US1_1(v2)                                                        │

00:00:16 #1275 [Verbose] > │         else                                                                 │

00:00:16 #1276 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:16 #1277 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:16 #1278 [Verbose] > │             method3(v6, v7)                                                  │

00:00:16 #1279 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:16 #1280 [Verbose] > │         US1_0                                                                │

00:00:16 #1281 [Verbose] > │ and method2 (v0 : Mut0, v1 : Mut1, v2 : Mut1, v3 : Mut1) : int32 =           │

00:00:16 #1282 [Verbose] > │     let v4 : US0 = v0.l0                                                     │

00:00:16 #1283 [Verbose] > │     let v19 : UH0 =                                                          │

00:00:16 #1284 [Verbose] > │         match v4 with                                                        │

00:00:16 #1285 [Verbose] > │         | US0_0(v5) -> (* Computed *)                                        │

00:00:16 #1286 [Verbose] > │             v5                                                               │

00:00:16 #1287 [Verbose] > │         | US0_1(v6) -> (* NotComputed *)                                     │

00:00:16 #1288 [Verbose] > │             let v7 : UH0 = v6 ()                                             │

00:00:16 #1289 [Verbose] > │             let v16 : UH0 =                                                  │

00:00:16 #1290 [Verbose] > │                 match v7 with                                                │

00:00:16 #1291 [Verbose] > │                 | UH0_0(v9, v10) -> (* StreamCons *)                         │

00:00:16 #1292 [Verbose] > │                     let v11 : US0 = US0_1(v10)                               │

00:00:16 #1293 [Verbose] > │                     let v12 : Mut0 = {l0 = v11} : Mut0                       │

00:00:16 #1294 [Verbose] > │                     let v13 : (unit -> UH0) = closure11(v12)                 │

00:00:16 #1295 [Verbose] > │                     UH0_0(v9, v13)                                           │

00:00:16 #1296 [Verbose] > │                 | UH0_1 -> (* StreamNil *)                                   │

00:00:16 #1297 [Verbose] > │                     UH0_1                                                    │

00:00:16 #1298 [Verbose] > │             let v17 : US0 = US0_0(v16)                                       │

00:00:16 #1299 [Verbose] > │             v0.l0 <- v17                                                     │

00:00:16 #1300 [Verbose] > │             v16                                                              │

00:00:16 #1301 [Verbose] > │     let v20 : int32 = v1.l0                                                  │

00:00:16 #1302 [Verbose] > │     let v21 : US1 = method3(v20, v19)                                        │

00:00:16 #1303 [Verbose] > │     match v21 with                                                           │

00:00:16 #1304 [Verbose] > │     | US1_0 -> (* None *)                                                    │

00:00:16 #1305 [Verbose] > │         let v25 : int32 = v3.l0                                              │

00:00:16 #1306 [Verbose] > │         let v26 : bool = v25 = -1                                            │

00:00:16 #1307 [Verbose] > │         if v26 then                                                          │

00:00:16 #1308 [Verbose] > │             let v27 : int32 = v1.l0                                          │

00:00:16 #1309 [Verbose] > │             v3.l0 <- v27                                                     │

00:00:16 #1310 [Verbose] > │             ()                                                               │

00:00:16 #1311 [Verbose] > │         let v28 : int32 = v2.l0                                              │

00:00:16 #1312 [Verbose] > │         let v29 : int32 = v3.l0                                              │

00:00:16 #1313 [Verbose] > │         let v30 : bool = v28 >= v29                                          │

00:00:16 #1314 [Verbose] > │         let v33 : int32 =                                                    │

00:00:16 #1315 [Verbose] > │             if v30 then                                                      │

00:00:16 #1316 [Verbose] > │                 1                                                            │

00:00:16 #1317 [Verbose] > │             else                                                             │

00:00:16 #1318 [Verbose] > │                 let v31 : int32 = v2.l0                                      │

00:00:16 #1319 [Verbose] > │                 let v32 : int32 = v31 + 1                                    │

00:00:16 #1320 [Verbose] > │                 v32                                                          │

00:00:16 #1321 [Verbose] > │         v2.l0 <- v33                                                         │

00:00:16 #1322 [Verbose] > │         let v34 : int32 = v2.l0                                              │

00:00:16 #1323 [Verbose] > │         let v35 : int32 = v34 - 1                                            │

00:00:16 #1324 [Verbose] > │         v1.l0 <- v35                                                         │

00:00:16 #1325 [Verbose] > │         method2(v0, v1, v2, v3)                                              │

00:00:16 #1326 [Verbose] > │     | US1_1(v22) -> (* Some *)                                               │

00:00:16 #1327 [Verbose] > │         let v23 : int32 = v1.l0                                              │

00:00:16 #1328 [Verbose] > │         let v24 : int32 = v23 + 1                                            │

00:00:16 #1329 [Verbose] > │         v1.l0 <- v24                                                         │

00:00:16 #1330 [Verbose] > │         v22                                                                  │

00:00:16 #1331 [Verbose] > │ and method9 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1332 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {-1L} / acc: {v1}"    │

00:00:16 #1333 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:16 #1334 [Verbose] > │     let v3 : int32 = v1 + 1                                                  │

00:00:16 #1335 [Verbose] > │     US2_1(v3, v0)                                                            │

00:00:16 #1336 [Verbose] > │ and method8 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1337 [Verbose] > │     match v0 with                                                            │

00:00:16 #1338 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1339 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1340 [Verbose] > │         if v5 then                                                           │

00:00:16 #1341 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1342 [Verbose] > │             let v7 : string = $"accumulate_dice_rolls / power: {0L} / acc:   │

00:00:16 #1343 [Verbose] > │ {v1} / roll: {v3} / value: {v6}"                                             │

00:00:16 #1344 [Verbose] > │             System.Console.WriteLine v7                                      │

00:00:16 #1345 [Verbose] > │             let v8 : int32 = v1 + v6                                         │

00:00:16 #1346 [Verbose] > │             method9(v4, v8)                                                  │

00:00:16 #1347 [Verbose] > │         else                                                                 │

00:00:16 #1348 [Verbose] > │             let v10 : string = $"accumulate_dice_rolls / power: {0L} / acc:  │

00:00:16 #1349 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1350 [Verbose] > │             System.Console.WriteLine v10                                     │

00:00:16 #1351 [Verbose] > │             method9(v4, v1)                                                  │

00:00:16 #1352 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1353 [Verbose] > │         US2_0                                                                │

00:00:16 #1354 [Verbose] > │ and method7 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1355 [Verbose] > │     match v0 with                                                            │

00:00:16 #1356 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1357 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1358 [Verbose] > │         if v5 then                                                           │

00:00:16 #1359 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1360 [Verbose] > │             let v7 : int32 = v6 * 6                                          │

00:00:16 #1361 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {1L} / acc:   │

00:00:16 #1362 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1363 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1364 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1365 [Verbose] > │             method8(v4, v9)                                                  │

00:00:16 #1366 [Verbose] > │         else                                                                 │

00:00:16 #1367 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {1L} / acc:  │

00:00:16 #1368 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1369 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1370 [Verbose] > │             method8(v4, v1)                                                  │

00:00:16 #1371 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1372 [Verbose] > │         US2_0                                                                │

00:00:16 #1373 [Verbose] > │ and method6 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1374 [Verbose] > │     match v0 with                                                            │

00:00:16 #1375 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1376 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1377 [Verbose] > │         if v5 then                                                           │

00:00:16 #1378 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1379 [Verbose] > │             let v7 : int32 = v6 * 36                                         │

00:00:16 #1380 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {2L} / acc:   │

00:00:16 #1381 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1382 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1383 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1384 [Verbose] > │             method7(v4, v9)                                                  │

00:00:16 #1385 [Verbose] > │         else                                                                 │

00:00:16 #1386 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {2L} / acc:  │

00:00:16 #1387 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1388 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1389 [Verbose] > │             method7(v4, v1)                                                  │

00:00:16 #1390 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1391 [Verbose] > │         US2_0                                                                │

00:00:16 #1392 [Verbose] > │ and method5 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1393 [Verbose] > │     match v0 with                                                            │

00:00:16 #1394 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1395 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1396 [Verbose] > │         if v5 then                                                           │

00:00:16 #1397 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1398 [Verbose] > │             let v7 : int32 = v6 * 216                                        │

00:00:16 #1399 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {3L} / acc:   │

00:00:16 #1400 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1401 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1402 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1403 [Verbose] > │             method6(v4, v9)                                                  │

00:00:16 #1404 [Verbose] > │         else                                                                 │

00:00:16 #1405 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {3L} / acc:  │

00:00:16 #1406 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1407 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1408 [Verbose] > │             method6(v4, v1)                                                  │

00:00:16 #1409 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1410 [Verbose] > │         US2_0                                                                │

00:00:16 #1411 [Verbose] > │ and method4 (v0 : UH1, v1 : int32) : US2 =                                   │

00:00:16 #1412 [Verbose] > │     match v0 with                                                            │

00:00:16 #1413 [Verbose] > │     | UH1_0(v3, v4) -> (* Cons *)                                            │

00:00:16 #1414 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:16 #1415 [Verbose] > │         if v5 then                                                           │

00:00:16 #1416 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:16 #1417 [Verbose] > │             let v7 : int32 = v6 * 1296                                       │

00:00:16 #1418 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {4L} / acc:   │

00:00:16 #1419 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:16 #1420 [Verbose] > │             System.Console.WriteLine v8                                      │

00:00:16 #1421 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:16 #1422 [Verbose] > │             method5(v4, v9)                                                  │

00:00:16 #1423 [Verbose] > │         else                                                                 │

00:00:16 #1424 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {4L} / acc:  │

00:00:16 #1425 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:16 #1426 [Verbose] > │             System.Console.WriteLine v11                                     │

00:00:16 #1427 [Verbose] > │             method5(v4, v1)                                                  │

00:00:16 #1428 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:16 #1429 [Verbose] > │         US2_0                                                                │

00:00:16 #1430 [Verbose] > │ and method1 (v0 : Mut0, v1 : Mut1, v2 : Mut1, v3 : Mut1, v4 : UH1, v5 :      │

00:00:16 #1431 [Verbose] > │ int64) : int32 =                                                             │

00:00:16 #1432 [Verbose] > │     let v6 : bool = v5 < 5L                                                  │

00:00:16 #1433 [Verbose] > │     if v6 then                                                               │

00:00:16 #1434 [Verbose] > │         let v7 : int32 = method2(v0, v1, v2, v3)                             │

00:00:16 #1435 [Verbose] > │         let v8 : UH1 = UH1_0(v7, v4)                                         │

00:00:16 #1436 [Verbose] > │         let v9 : int64 = v5 + 1L                                             │

00:00:16 #1437 [Verbose] > │         method1(v0, v1, v2, v3, v8, v9)                                      │

00:00:16 #1438 [Verbose] > │     else                                                                     │

00:00:16 #1439 [Verbose] > │         let v11 : int32 = 0                                                  │

00:00:16 #1440 [Verbose] > │         let v12 : US2 = method4(v4, v11)                                     │

00:00:16 #1441 [Verbose] > │         match v12 with                                                       │

00:00:16 #1442 [Verbose] > │         | US2_1(v13, v14) -> (* Some *)                                      │

00:00:16 #1443 [Verbose] > │             let v15 : bool = v13 <= 2000                                     │

00:00:16 #1444 [Verbose] > │             if v15 then                                                      │

00:00:16 #1445 [Verbose] > │                 v13                                                          │

00:00:16 #1446 [Verbose] > │             else                                                             │

00:00:16 #1447 [Verbose] > │                 let v16 : int32 = method2(v0, v1, v2, v3)                    │

00:00:16 #1448 [Verbose] > │                 let v17 : UH1 = UH1_0(v16, v4)                               │

00:00:16 #1449 [Verbose] > │                 let v18 : int64 = v5 + 1L                                    │

00:00:16 #1450 [Verbose] > │                 method1(v0, v1, v2, v3, v17, v18)                            │

00:00:16 #1451 [Verbose] > │         | _ ->                                                               │

00:00:16 #1452 [Verbose] > │             let v21 : int32 = method2(v0, v1, v2, v3)                        │

00:00:16 #1453 [Verbose] > │             let v22 : UH1 = UH1_0(v21, v4)                                   │

00:00:16 #1454 [Verbose] > │             let v23 : int64 = v5 + 1L                                        │

00:00:16 #1455 [Verbose] > │             method1(v0, v1, v2, v3, v22, v23)                                │

00:00:16 #1456 [Verbose] > │ and method0 () : unit =                                                      │

00:00:16 #1457 [Verbose] > │     let v0 : (unit -> UH0) = closure0()                                      │

00:00:16 #1458 [Verbose] > │     let v1 : US0 = US0_1(v0)                                                 │

00:00:16 #1459 [Verbose] > │     let v2 : Mut0 = {l0 = v1} : Mut0                                         │

00:00:16 #1460 [Verbose] > │     let v3 : Mut1 = {l0 = 0} : Mut1                                          │

00:00:16 #1461 [Verbose] > │     let v4 : Mut1 = {l0 = 1} : Mut1                                          │

00:00:16 #1462 [Verbose] > │     let v5 : Mut1 = {l0 = -1} : Mut1                                         │

00:00:16 #1463 [Verbose] > │     let v6 : string = $"calculate_dice_count / max: {2000} / n: {5L} / p:    │

00:00:16 #1464 [Verbose] > │ {7776}"                                                                      │

00:00:16 #1465 [Verbose] > │     System.Console.WriteLine v6                                              │

00:00:16 #1466 [Verbose] > │     let v7 : UH1 = UH1_1                                                     │

00:00:16 #1467 [Verbose] > │     let v8 : int64 = 0L                                                      │

00:00:16 #1468 [Verbose] > │     let v9 : int32 = method1(v2, v3, v4, v5, v7, v8)                         │

00:00:16 #1469 [Verbose] > │     let v10 : bool = v9 = 1678                                               │

00:00:16 #1470 [Verbose] > │     let v11 : string = $"_equal / actual: %A{v9} / expected: %A{1678}"       │

00:00:16 #1471 [Verbose] > │     let v12 : bool = v10 = false                                             │

00:00:16 #1472 [Verbose] > │     if v12 then                                                              │

00:00:16 #1473 [Verbose] > │         failwith<unit> v11                                                   │

00:00:16 #1474 [Verbose] > │ method0()                                                                    │

00:00:16 #1475 [Verbose] > │                                                                              │

00:00:16 #1476 [Verbose] > │ calculate_dice_count / max: 2000 / n: 5 / p: 7776                            │

00:00:16 #1477 [Verbose] > │ accumulate_dice_rolls / power: 4 / acc: 0 / roll: 2 / value: 1296            │

00:00:16 #1478 [Verbose] > │ accumulate_dice_rolls / power: 3 / acc: 1296 / roll: 5 / value: 864          │

00:00:16 #1479 [Verbose] > │ accumulate_dice_rolls / power: 2 / acc: 2160 / roll: 4 / value: 108          │

00:00:16 #1480 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 2268 / roll: 4 / value: 18           │

00:00:16 #1481 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 2286 / roll: 5 / value: 4            │

00:00:16 #1482 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 2290                                │

00:00:16 #1483 [Verbose] > │ accumulate_dice_rolls / power: 4 / acc: 0 / roll: 2 / value: 1296            │

00:00:16 #1484 [Verbose] > │ accumulate_dice_rolls / power: 3 / acc: 1296 / roll: 2 / value: 216          │

00:00:16 #1485 [Verbose] > │ accumulate_dice_rolls / power: 2 / acc: 1512 / roll: 5 / value: 144          │

00:00:16 #1486 [Verbose] > │ accumulate_dice_rolls / power: 1 / acc: 1656 / roll: 4 / value: 18           │

00:00:16 #1487 [Verbose] > │ accumulate_dice_rolls / power: 0 / acc: 1674 / roll: 4 / value: 3            │

00:00:16 #1488 [Verbose] > │ accumulate_dice_rolls / power: -1 / acc: 1677                                │

00:00:16 #1489 [Verbose] > │                                                                              │

00:00:16 #1490 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:16 #1491 [Verbose] >

00:00:16 #1492 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:16 #1493 [Verbose] > // // test

00:00:16 #1494 [Verbose] >

00:00:16 #1495 [Verbose] > listm'.init_series 1i32 40 1

00:00:16 #1496 [Verbose] > |> listm.map (fun _ => roll_progressively None roll_dice false 10)

00:00:16 #1497 [Verbose] > |> listm'.group_by id

00:00:16 #1498 [Verbose] > |> listm.map (fun (k, v) => k, (listm.length v : i32))

00:00:16 #1499 [Verbose] > |> listm.toArray

00:00:16 #1500 [Verbose] > |> fun (ar : a i32 _) =>

00:00:16 #1501 [Verbose] >     $"!ar |> Array.sortBy (fun (struct (a, b)) -> a)" : a i32 $"struct (int32 *

00:00:16 #1502 [Verbose] > int32)"

00:00:16 #1503 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3390-9027-9708c850f7a7\main.spi

00:00:17 #1504 [Verbose] >

00:00:17 #1505 [Verbose] > ╭─[ 782.85ms - return value ]──────────────────────────────────────────────────╮

00:00:17 #1506 [Verbose] > │ <table><thead><tr><th><i>index</i></th><th>value</th></tr></thead><tbody><tr │

00:00:17 #1507 [Verbose] > │ ><td>0</td><td><details class="dni-treeview"><summary><span                  │

00:00:17 #1508 [Verbose] > │ class="dni-code-hint"><code>(1,                                              │

00:00:17 #1509 [Verbose] > │ 1)</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

00:00:17 #1510 [Verbose] > │ >Item1</td><td><div                                                          │

00:00:17 #1511 [Verbose] > │ class="dni-plaintext"><pre>1</pre></div></td></tr><tr><td>Item2</td><td><div │

00:00:17 #1512 [Verbose] > │ class="dni-plaintext"><pre>1</pre></div></td></tr></tbody></table></div></de │

00:00:17 #1513 [Verbose] > │ tails></td></tr><tr><td>1</td><td><details                                   │

00:00:17 #1514 [Verbose] > │ class="dni-treeview"><summary><span class="dni-code-hint"><code>(2,          │

00:00:17 #1515 [Verbose] > │ 2)</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

00:00:17 #1516 [Verbose] > │ >Item1</td><td><div                                                          │

00:00:17 #1517 [Verbose] > │ class="dni-plaintext"><pre>2</pre></div></td></tr><tr><td>Item2</td><td><div │

00:00:17 #1518 [Verbose] > │ class="dni-plaintext"><pre>2</pre></div></td></tr...                         │

00:00:17 #1519 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #1520 [Verbose] >

00:00:17 #1521 [Verbose] > ╭─[ 808.82ms - stdout ]────────────────────────────────────────────────────────╮

00:00:17 #1522 [Verbose] > │ type UH0 =                                                                   │

00:00:17 #1523 [Verbose] > │     | UH0_0 of int32 * UH0                                                   │

00:00:17 #1524 [Verbose] > │     | UH0_1                                                                  │

00:00:17 #1525 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:17 #1526 [Verbose] > │     | US0_0                                                                  │

00:00:17 #1527 [Verbose] > │     | US0_1 of f1_0 : int32 * f1_1 : UH0                                     │

00:00:17 #1528 [Verbose] > │ and UH1 =                                                                    │

00:00:17 #1529 [Verbose] > │     | UH1_0 of int32 * UH0 * UH1                                             │

00:00:17 #1530 [Verbose] > │     | UH1_1                                                                  │

00:00:17 #1531 [Verbose] > │ and UH2 =                                                                    │

00:00:17 #1532 [Verbose] > │     | UH2_0 of int32 * int32 * UH2                                           │

00:00:17 #1533 [Verbose] > │     | UH2_1                                                                  │

00:00:17 #1534 [Verbose] > │ let rec method4 (v0 : UH0, v1 : int32) : US0 =                               │

00:00:17 #1535 [Verbose] > │     let v2 : string = $"accumulate_dice_rolls / power: {-1L} / acc: {v1}"    │

00:00:17 #1536 [Verbose] > │     let v3 : int32 = v1 + 1                                                  │

00:00:17 #1537 [Verbose] > │     US0_1(v3, v0)                                                            │

00:00:17 #1538 [Verbose] > │ and method3 (v0 : UH0, v1 : int32) : US0 =                                   │

00:00:17 #1539 [Verbose] > │     match v0 with                                                            │

00:00:17 #1540 [Verbose] > │     | UH0_0(v3, v4) -> (* Cons *)                                            │

00:00:17 #1541 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:17 #1542 [Verbose] > │         if v5 then                                                           │

00:00:17 #1543 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:17 #1544 [Verbose] > │             let v7 : string = $"accumulate_dice_rolls / power: {0L} / acc:   │

00:00:17 #1545 [Verbose] > │ {v1} / roll: {v3} / value: {v6}"                                             │

00:00:17 #1546 [Verbose] > │             let v8 : int32 = v1 + v6                                         │

00:00:17 #1547 [Verbose] > │             method4(v4, v8)                                                  │

00:00:17 #1548 [Verbose] > │         else                                                                 │

00:00:17 #1549 [Verbose] > │             let v10 : string = $"accumulate_dice_rolls / power: {0L} / acc:  │

00:00:17 #1550 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:17 #1551 [Verbose] > │             method4(v4, v1)                                                  │

00:00:17 #1552 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:17 #1553 [Verbose] > │         US0_0                                                                │

00:00:17 #1554 [Verbose] > │ and method2 (v0 : UH0, v1 : int32) : US0 =                                   │

00:00:17 #1555 [Verbose] > │     match v0 with                                                            │

00:00:17 #1556 [Verbose] > │     | UH0_0(v3, v4) -> (* Cons *)                                            │

00:00:17 #1557 [Verbose] > │         let v5 : bool = v3 > 1                                               │

00:00:17 #1558 [Verbose] > │         if v5 then                                                           │

00:00:17 #1559 [Verbose] > │             let v6 : int32 = v3 - 1                                          │

00:00:17 #1560 [Verbose] > │             let v7 : int32 = v6 * 6                                          │

00:00:17 #1561 [Verbose] > │             let v8 : string = $"accumulate_dice_rolls / power: {1L} / acc:   │

00:00:17 #1562 [Verbose] > │ {v1} / roll: {v3} / value: {v7}"                                             │

00:00:17 #1563 [Verbose] > │             let v9 : int32 = v1 + v7                                         │

00:00:17 #1564 [Verbose] > │             method3(v4, v9)                                                  │

00:00:17 #1565 [Verbose] > │         else                                                                 │

00:00:17 #1566 [Verbose] > │             let v11 : string = $"accumulate_dice_rolls / power: {1L} / acc:  │

00:00:17 #1567 [Verbose] > │ {v1} / roll: {v3}"                                                           │

00:00:17 #1568 [Verbose] > │             method3(v4, v1)                                                  │

00:00:17 #1569 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:17 #1570 [Verbose] > │         US0_0                                                                │

00:00:17 #1571 [Verbose] > │ and method1 (v0 : UH0, v1 : int64) : int32 =                                 │

00:00:17 #1572 [Verbose] > │     let v2 : bool = v1 < 2L                                                  │

00:00:17 #1573 [Verbose] > │     if v2 then                                                               │

00:00:17 #1574 [Verbose] > │         let v3 : int32 = System.Random().Next (1, 7)                         │

00:00:17 #1575 [Verbose] > │         let v4 : UH0 = UH0_0(v3, v0)                                         │

00:00:17 #1576 [Verbose] > │         let v5 : int64 = v1 + 1L                                             │

00:00:17 #1577 [Verbose] > │         method1(v4, v5)                                                      │

00:00:17 #1578 [Verbose] > │     else                                                                     │

00:00:17 #1579 [Verbose] > │         let v7 : int32 = 0                                                   │

00:00:17 #1580 [Verbose] > │         let v8 : US0 = method2(v0, v7)                                       │

00:00:17 #1581 [Verbose] > │         match v8 with                                                        │

00:00:17 #1582 [Verbose] > │         | US0_1(v9, v10) -> (* Some *)                                       │

00:00:17 #1583 [Verbose] > │             let v11 : bool = v9 <= 10                                        │

00:00:17 #1584 [Verbose] > │             if v11 then                                                      │

00:00:17 #1585 [Verbose] > │                 v9                                                           │

00:00:17 #1586 [Verbose] > │             else                                                             │

00:00:17 #1587 [Verbose] > │                 let v12 : int32 = System.Random().Next (1, 7)                │

00:00:17 #1588 [Verbose] > │                 let v13 : UH0 = UH0_0(v12, v0)                               │

00:00:17 #1589 [Verbose] > │                 let v14 : int64 = v1 + 1L                                    │

00:00:17 #1590 [Verbose] > │                 method1(v13, v14)                                            │

00:00:17 #1591 [Verbose] > │         | _ ->                                                               │

00:00:17 #1592 [Verbose] > │             let v17 : int32 = System.Random().Next (1, 7)                    │

00:00:17 #1593 [Verbose] > │             let v18 : UH0 = UH0_0(v17, v0)                                   │

00:00:17 #1594 [Verbose] > │             let v19 : int64 = v1 + 1L                                        │

00:00:17 #1595 [Verbose] > │             method1(v18, v19)                                                │

00:00:17 #1596 [Verbose] > │ and method5 (v0 : int32, v1 : UH1, v2 : bool, v3 : UH1) : struct (bool *     │

00:00:17 #1597 [Verbose] > │ UH1) =                                                                       │

00:00:17 #1598 [Verbose] > │     match v1 with                                                            │

00:00:17 #1599 [Verbose] > │     | UH1_0(v4, v5, v6) -> (* Cons *)                                        │

00:00:17 #1600 [Verbose] > │         let v7 : bool = v4 = v0                                              │

00:00:17 #1601 [Verbose] > │         let struct (v11 : bool, v12 : UH1) =                                 │

00:00:17 #1602 [Verbose] > │             if v7 then                                                       │

00:00:17 #1603 [Verbose] > │                 let v8 : UH0 = UH0_0(v0, v5)                                 │

00:00:17 #1604 [Verbose] > │                 let v9 : UH1 = UH1_0(v4, v8, v3)                             │

00:00:17 #1605 [Verbose] > │                 struct (true, v9)                                            │

00:00:17 #1606 [Verbose] > │             else                                                             │

00:00:17 #1607 [Verbose] > │                 let v10 : UH1 = UH1_0(v4, v5, v3)                            │

00:00:17 #1608 [Verbose] > │                 struct (v2, v10)                                             │

00:00:17 #1609 [Verbose] > │         method5(v0, v6, v11, v12)                                            │

00:00:17 #1610 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:17 #1611 [Verbose] > │         struct (v2, v3)                                                      │

00:00:17 #1612 [Verbose] > │ and method7 (v0 : UH0, v1 : int32) : int32 =                                 │

00:00:17 #1613 [Verbose] > │     match v0 with                                                            │

00:00:17 #1614 [Verbose] > │     | UH0_0(v2, v3) -> (* Cons *)                                            │

00:00:17 #1615 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:17 #1616 [Verbose] > │         method7(v3, v4)                                                      │

00:00:17 #1617 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:17 #1618 [Verbose] > │         v1                                                                   │

00:00:17 #1619 [Verbose] > │ and method6 (v0 : UH1, v1 : UH2) : UH2 =                                     │

00:00:17 #1620 [Verbose] > │     match v0 with                                                            │

00:00:17 #1621 [Verbose] > │     | UH1_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:17 #1622 [Verbose] > │         let v5 : UH2 = method6(v4, v1)                                       │

00:00:17 #1623 [Verbose] > │         let v6 : int32 = 0                                                   │

00:00:17 #1624 [Verbose] > │         let v7 : int32 = method7(v3, v6)                                     │

00:00:17 #1625 [Verbose] > │         UH2_0(v2, v7, v5)                                                    │

00:00:17 #1626 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:17 #1627 [Verbose] > │         v1                                                                   │

00:00:17 #1628 [Verbose] > │ and method9 (v0 : UH2, v1 : int32) : int32 =                                 │

00:00:17 #1629 [Verbose] > │     match v0 with                                                            │

00:00:17 #1630 [Verbose] > │     | UH2_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:17 #1631 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:17 #1632 [Verbose] > │         method9(v4, v5)                                                      │

00:00:17 #1633 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:17 #1634 [Verbose] > │         v1                                                                   │

00:00:17 #1635 [Verbose] > │ and method10 (v0 : (struct (int32 * int32) []), v1 : UH2, v2 : int32) :      │

00:00:17 #1636 [Verbose] > │ int32 =                                                                      │

00:00:17 #1637 [Verbose] > │     match v1 with                                                            │

00:00:17 #1638 [Verbose] > │     | UH2_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:17 #1639 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:17 #1640 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:17 #1641 [Verbose] > │         method10(v0, v5, v6)                                                 │

00:00:17 #1642 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:17 #1643 [Verbose] > │         v2                                                                   │

00:00:17 #1644 [Verbose] > │ and method8 (v0 : UH2) : (struct (int32 * int32) []) =                       │

00:00:17 #1645 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:17 #1646 [Verbose] > │     let v2 : int32 = method9(v0, v1)                                         │

00:00:17 #1647 [Verbose] > │     let v3 : (struct (int32 * int32) []) = Array.zeroCreate<struct (int32 *  │

00:00:17 #1648 [Verbose] > │ int32)> (v2)                                                                 │

00:00:17 #1649 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:17 #1650 [Verbose] > │     let v5 : int32 = method10(v3, v0, v4)                                    │

00:00:17 #1651 [Verbose] > │     v3                                                                       │

00:00:17 #1652 [Verbose] > │ and method0 () : (struct (int32 * int32) []) =                               │

00:00:17 #1653 [Verbose] > │     let v0 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:      │

00:00:17 #1654 [Verbose] > │ {36}"                                                                        │

00:00:17 #1655 [Verbose] > │     let v1 : UH0 = UH0_1                                                     │

00:00:17 #1656 [Verbose] > │     let v2 : int64 = 0L                                                      │

00:00:17 #1657 [Verbose] > │     let v3 : int32 = method1(v1, v2)                                         │

00:00:17 #1658 [Verbose] > │     let v4 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:      │

00:00:17 #1659 [Verbose] > │ {36}"                                                                        │

00:00:17 #1660 [Verbose] > │     let v5 : UH0 = UH0_1                                                     │

00:00:17 #1661 [Verbose] > │     let v6 : int64 = 0L                                                      │

00:00:17 #1662 [Verbose] > │     let v7 : int32 = method1(v5, v6)                                         │

00:00:17 #1663 [Verbose] > │     let v8 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:      │

00:00:17 #1664 [Verbose] > │ {36}"                                                                        │

00:00:17 #1665 [Verbose] > │     let v9 : UH0 = UH0_1                                                     │

00:00:17 #1666 [Verbose] > │     let v10 : int64 = 0L                                                     │

00:00:17 #1667 [Verbose] > │     let v11 : int32 = method1(v9, v10)                                       │

00:00:17 #1668 [Verbose] > │     let v12 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1669 [Verbose] > │ {36}"                                                                        │

00:00:17 #1670 [Verbose] > │     let v13 : UH0 = UH0_1                                                    │

00:00:17 #1671 [Verbose] > │     let v14 : int64 = 0L                                                     │

00:00:17 #1672 [Verbose] > │     let v15 : int32 = method1(v13, v14)                                      │

00:00:17 #1673 [Verbose] > │     let v16 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1674 [Verbose] > │ {36}"                                                                        │

00:00:17 #1675 [Verbose] > │     let v17 : UH0 = UH0_1                                                    │

00:00:17 #1676 [Verbose] > │     let v18 : int64 = 0L                                                     │

00:00:17 #1677 [Verbose] > │     let v19 : int32 = method1(v17, v18)                                      │

00:00:17 #1678 [Verbose] > │     let v20 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1679 [Verbose] > │ {36}"                                                                        │

00:00:17 #1680 [Verbose] > │     let v21 : UH0 = UH0_1                                                    │

00:00:17 #1681 [Verbose] > │     let v22 : int64 = 0L                                                     │

00:00:17 #1682 [Verbose] > │     let v23 : int32 = method1(v21, v22)                                      │

00:00:17 #1683 [Verbose] > │     let v24 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1684 [Verbose] > │ {36}"                                                                        │

00:00:17 #1685 [Verbose] > │     let v25 : UH0 = UH0_1                                                    │

00:00:17 #1686 [Verbose] > │     let v26 : int64 = 0L                                                     │

00:00:17 #1687 [Verbose] > │     let v27 : int32 = method1(v25, v26)                                      │

00:00:17 #1688 [Verbose] > │     let v28 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1689 [Verbose] > │ {36}"                                                                        │

00:00:17 #1690 [Verbose] > │     let v29 : UH0 = UH0_1                                                    │

00:00:17 #1691 [Verbose] > │     let v30 : int64 = 0L                                                     │

00:00:17 #1692 [Verbose] > │     let v31 : int32 = method1(v29, v30)                                      │

00:00:17 #1693 [Verbose] > │     let v32 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1694 [Verbose] > │ {36}"                                                                        │

00:00:17 #1695 [Verbose] > │     let v33 : UH0 = UH0_1                                                    │

00:00:17 #1696 [Verbose] > │     let v34 : int64 = 0L                                                     │

00:00:17 #1697 [Verbose] > │     let v35 : int32 = method1(v33, v34)                                      │

00:00:17 #1698 [Verbose] > │     let v36 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1699 [Verbose] > │ {36}"                                                                        │

00:00:17 #1700 [Verbose] > │     let v37 : UH0 = UH0_1                                                    │

00:00:17 #1701 [Verbose] > │     let v38 : int64 = 0L                                                     │

00:00:17 #1702 [Verbose] > │     let v39 : int32 = method1(v37, v38)                                      │

00:00:17 #1703 [Verbose] > │     let v40 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1704 [Verbose] > │ {36}"                                                                        │

00:00:17 #1705 [Verbose] > │     let v41 : UH0 = UH0_1                                                    │

00:00:17 #1706 [Verbose] > │     let v42 : int64 = 0L                                                     │

00:00:17 #1707 [Verbose] > │     let v43 : int32 = method1(v41, v42)                                      │

00:00:17 #1708 [Verbose] > │     let v44 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1709 [Verbose] > │ {36}"                                                                        │

00:00:17 #1710 [Verbose] > │     let v45 : UH0 = UH0_1                                                    │

00:00:17 #1711 [Verbose] > │     let v46 : int64 = 0L                                                     │

00:00:17 #1712 [Verbose] > │     let v47 : int32 = method1(v45, v46)                                      │

00:00:17 #1713 [Verbose] > │     let v48 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1714 [Verbose] > │ {36}"                                                                        │

00:00:17 #1715 [Verbose] > │     let v49 : UH0 = UH0_1                                                    │

00:00:17 #1716 [Verbose] > │     let v50 : int64 = 0L                                                     │

00:00:17 #1717 [Verbose] > │     let v51 : int32 = method1(v49, v50)                                      │

00:00:17 #1718 [Verbose] > │     let v52 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1719 [Verbose] > │ {36}"                                                                        │

00:00:17 #1720 [Verbose] > │     let v53 : UH0 = UH0_1                                                    │

00:00:17 #1721 [Verbose] > │     let v54 : int64 = 0L                                                     │

00:00:17 #1722 [Verbose] > │     let v55 : int32 = method1(v53, v54)                                      │

00:00:17 #1723 [Verbose] > │     let v56 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1724 [Verbose] > │ {36}"                                                                        │

00:00:17 #1725 [Verbose] > │     let v57 : UH0 = UH0_1                                                    │

00:00:17 #1726 [Verbose] > │     let v58 : int64 = 0L                                                     │

00:00:17 #1727 [Verbose] > │     let v59 : int32 = method1(v57, v58)                                      │

00:00:17 #1728 [Verbose] > │     let v60 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1729 [Verbose] > │ {36}"                                                                        │

00:00:17 #1730 [Verbose] > │     let v61 : UH0 = UH0_1                                                    │

00:00:17 #1731 [Verbose] > │     let v62 : int64 = 0L                                                     │

00:00:17 #1732 [Verbose] > │     let v63 : int32 = method1(v61, v62)                                      │

00:00:17 #1733 [Verbose] > │     let v64 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1734 [Verbose] > │ {36}"                                                                        │

00:00:17 #1735 [Verbose] > │     let v65 : UH0 = UH0_1                                                    │

00:00:17 #1736 [Verbose] > │     let v66 : int64 = 0L                                                     │

00:00:17 #1737 [Verbose] > │     let v67 : int32 = method1(v65, v66)                                      │

00:00:17 #1738 [Verbose] > │     let v68 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1739 [Verbose] > │ {36}"                                                                        │

00:00:17 #1740 [Verbose] > │     let v69 : UH0 = UH0_1                                                    │

00:00:17 #1741 [Verbose] > │     let v70 : int64 = 0L                                                     │

00:00:17 #1742 [Verbose] > │     let v71 : int32 = method1(v69, v70)                                      │

00:00:17 #1743 [Verbose] > │     let v72 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1744 [Verbose] > │ {36}"                                                                        │

00:00:17 #1745 [Verbose] > │     let v73 : UH0 = UH0_1                                                    │

00:00:17 #1746 [Verbose] > │     let v74 : int64 = 0L                                                     │

00:00:17 #1747 [Verbose] > │     let v75 : int32 = method1(v73, v74)                                      │

00:00:17 #1748 [Verbose] > │     let v76 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1749 [Verbose] > │ {36}"                                                                        │

00:00:17 #1750 [Verbose] > │     let v77 : UH0 = UH0_1                                                    │

00:00:17 #1751 [Verbose] > │     let v78 : int64 = 0L                                                     │

00:00:17 #1752 [Verbose] > │     let v79 : int32 = method1(v77, v78)                                      │

00:00:17 #1753 [Verbose] > │     let v80 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1754 [Verbose] > │ {36}"                                                                        │

00:00:17 #1755 [Verbose] > │     let v81 : UH0 = UH0_1                                                    │

00:00:17 #1756 [Verbose] > │     let v82 : int64 = 0L                                                     │

00:00:17 #1757 [Verbose] > │     let v83 : int32 = method1(v81, v82)                                      │

00:00:17 #1758 [Verbose] > │     let v84 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1759 [Verbose] > │ {36}"                                                                        │

00:00:17 #1760 [Verbose] > │     let v85 : UH0 = UH0_1                                                    │

00:00:17 #1761 [Verbose] > │     let v86 : int64 = 0L                                                     │

00:00:17 #1762 [Verbose] > │     let v87 : int32 = method1(v85, v86)                                      │

00:00:17 #1763 [Verbose] > │     let v88 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1764 [Verbose] > │ {36}"                                                                        │

00:00:17 #1765 [Verbose] > │     let v89 : UH0 = UH0_1                                                    │

00:00:17 #1766 [Verbose] > │     let v90 : int64 = 0L                                                     │

00:00:17 #1767 [Verbose] > │     let v91 : int32 = method1(v89, v90)                                      │

00:00:17 #1768 [Verbose] > │     let v92 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1769 [Verbose] > │ {36}"                                                                        │

00:00:17 #1770 [Verbose] > │     let v93 : UH0 = UH0_1                                                    │

00:00:17 #1771 [Verbose] > │     let v94 : int64 = 0L                                                     │

00:00:17 #1772 [Verbose] > │     let v95 : int32 = method1(v93, v94)                                      │

00:00:17 #1773 [Verbose] > │     let v96 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:     │

00:00:17 #1774 [Verbose] > │ {36}"                                                                        │

00:00:17 #1775 [Verbose] > │     let v97 : UH0 = UH0_1                                                    │

00:00:17 #1776 [Verbose] > │     let v98 : int64 = 0L                                                     │

00:00:17 #1777 [Verbose] > │     let v99 : int32 = method1(v97, v98)                                      │

00:00:17 #1778 [Verbose] > │     let v100 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1779 [Verbose] > │ {36}"                                                                        │

00:00:17 #1780 [Verbose] > │     let v101 : UH0 = UH0_1                                                   │

00:00:17 #1781 [Verbose] > │     let v102 : int64 = 0L                                                    │

00:00:17 #1782 [Verbose] > │     let v103 : int32 = method1(v101, v102)                                   │

00:00:17 #1783 [Verbose] > │     let v104 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1784 [Verbose] > │ {36}"                                                                        │

00:00:17 #1785 [Verbose] > │     let v105 : UH0 = UH0_1                                                   │

00:00:17 #1786 [Verbose] > │     let v106 : int64 = 0L                                                    │

00:00:17 #1787 [Verbose] > │     let v107 : int32 = method1(v105, v106)                                   │

00:00:17 #1788 [Verbose] > │     let v108 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1789 [Verbose] > │ {36}"                                                                        │

00:00:17 #1790 [Verbose] > │     let v109 : UH0 = UH0_1                                                   │

00:00:17 #1791 [Verbose] > │     let v110 : int64 = 0L                                                    │

00:00:17 #1792 [Verbose] > │     let v111 : int32 = method1(v109, v110)                                   │

00:00:17 #1793 [Verbose] > │     let v112 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1794 [Verbose] > │ {36}"                                                                        │

00:00:17 #1795 [Verbose] > │     let v113 : UH0 = UH0_1                                                   │

00:00:17 #1796 [Verbose] > │     let v114 : int64 = 0L                                                    │

00:00:17 #1797 [Verbose] > │     let v115 : int32 = method1(v113, v114)                                   │

00:00:17 #1798 [Verbose] > │     let v116 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1799 [Verbose] > │ {36}"                                                                        │

00:00:17 #1800 [Verbose] > │     let v117 : UH0 = UH0_1                                                   │

00:00:17 #1801 [Verbose] > │     let v118 : int64 = 0L                                                    │

00:00:17 #1802 [Verbose] > │     let v119 : int32 = method1(v117, v118)                                   │

00:00:17 #1803 [Verbose] > │     let v120 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1804 [Verbose] > │ {36}"                                                                        │

00:00:17 #1805 [Verbose] > │     let v121 : UH0 = UH0_1                                                   │

00:00:17 #1806 [Verbose] > │     let v122 : int64 = 0L                                                    │

00:00:17 #1807 [Verbose] > │     let v123 : int32 = method1(v121, v122)                                   │

00:00:17 #1808 [Verbose] > │     let v124 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1809 [Verbose] > │ {36}"                                                                        │

00:00:17 #1810 [Verbose] > │     let v125 : UH0 = UH0_1                                                   │

00:00:17 #1811 [Verbose] > │     let v126 : int64 = 0L                                                    │

00:00:17 #1812 [Verbose] > │     let v127 : int32 = method1(v125, v126)                                   │

00:00:17 #1813 [Verbose] > │     let v128 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1814 [Verbose] > │ {36}"                                                                        │

00:00:17 #1815 [Verbose] > │     let v129 : UH0 = UH0_1                                                   │

00:00:17 #1816 [Verbose] > │     let v130 : int64 = 0L                                                    │

00:00:17 #1817 [Verbose] > │     let v131 : int32 = method1(v129, v130)                                   │

00:00:17 #1818 [Verbose] > │     let v132 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1819 [Verbose] > │ {36}"                                                                        │

00:00:17 #1820 [Verbose] > │     let v133 : UH0 = UH0_1                                                   │

00:00:17 #1821 [Verbose] > │     let v134 : int64 = 0L                                                    │

00:00:17 #1822 [Verbose] > │     let v135 : int32 = method1(v133, v134)                                   │

00:00:17 #1823 [Verbose] > │     let v136 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1824 [Verbose] > │ {36}"                                                                        │

00:00:17 #1825 [Verbose] > │     let v137 : UH0 = UH0_1                                                   │

00:00:17 #1826 [Verbose] > │     let v138 : int64 = 0L                                                    │

00:00:17 #1827 [Verbose] > │     let v139 : int32 = method1(v137, v138)                                   │

00:00:17 #1828 [Verbose] > │     let v140 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1829 [Verbose] > │ {36}"                                                                        │

00:00:17 #1830 [Verbose] > │     let v141 : UH0 = UH0_1                                                   │

00:00:17 #1831 [Verbose] > │     let v142 : int64 = 0L                                                    │

00:00:17 #1832 [Verbose] > │     let v143 : int32 = method1(v141, v142)                                   │

00:00:17 #1833 [Verbose] > │     let v144 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1834 [Verbose] > │ {36}"                                                                        │

00:00:17 #1835 [Verbose] > │     let v145 : UH0 = UH0_1                                                   │

00:00:17 #1836 [Verbose] > │     let v146 : int64 = 0L                                                    │

00:00:17 #1837 [Verbose] > │     let v147 : int32 = method1(v145, v146)                                   │

00:00:17 #1838 [Verbose] > │     let v148 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1839 [Verbose] > │ {36}"                                                                        │

00:00:17 #1840 [Verbose] > │     let v149 : UH0 = UH0_1                                                   │

00:00:17 #1841 [Verbose] > │     let v150 : int64 = 0L                                                    │

00:00:17 #1842 [Verbose] > │     let v151 : int32 = method1(v149, v150)                                   │

00:00:17 #1843 [Verbose] > │     let v152 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1844 [Verbose] > │ {36}"                                                                        │

00:00:17 #1845 [Verbose] > │     let v153 : UH0 = UH0_1                                                   │

00:00:17 #1846 [Verbose] > │     let v154 : int64 = 0L                                                    │

00:00:17 #1847 [Verbose] > │     let v155 : int32 = method1(v153, v154)                                   │

00:00:17 #1848 [Verbose] > │     let v156 : string = $"calculate_dice_count / max: {10} / n: {2L} / p:    │

00:00:17 #1849 [Verbose] > │ {36}"                                                                        │

00:00:17 #1850 [Verbose] > │     let v157 : UH0 = UH0_1                                                   │

00:00:17 #1851 [Verbose] > │     let v158 : int64 = 0L                                                    │

00:00:17 #1852 [Verbose] > │     let v159 : int32 = method1(v157, v158)                                   │

00:00:17 #1853 [Verbose] > │     let v160 : bool = v3 = v7                                                │

00:00:17 #1854 [Verbose] > │     let struct (v170 : bool, v171 : UH1) =                                   │

00:00:17 #1855 [Verbose] > │         if v160 then                                                         │

00:00:17 #1856 [Verbose] > │             let v161 : UH0 = UH0_1                                           │

00:00:17 #1857 [Verbose] > │             let v162 : UH0 = UH0_0(v3, v161)                                 │

00:00:17 #1858 [Verbose] > │             let v163 : UH0 = UH0_0(v7, v162)                                 │

00:00:17 #1859 [Verbose] > │             let v164 : UH1 = UH1_1                                           │

00:00:17 #1860 [Verbose] > │             let v165 : UH1 = UH1_0(v3, v163, v164)                           │

00:00:17 #1861 [Verbose] > │             struct (true, v165)                                              │

00:00:17 #1862 [Verbose] > │         else                                                                 │

00:00:17 #1863 [Verbose] > │             let v166 : UH0 = UH0_1                                           │

00:00:17 #1864 [Verbose] > │             let v167 : UH0 = UH0_0(v3, v166)                                 │

00:00:17 #1865 [Verbose] > │             let v168 : UH1 = UH1_1                                           │

00:00:17 #1866 [Verbose] > │             let v169 : UH1 = UH1_0(v3, v167, v168)                           │

00:00:17 #1867 [Verbose] > │             struct (false, v169)                                             │

00:00:17 #1868 [Verbose] > │     let v175 : UH1 =                                                         │

00:00:17 #1869 [Verbose] > │         if v170 then                                                         │

00:00:17 #1870 [Verbose] > │             v171                                                             │

00:00:17 #1871 [Verbose] > │         else                                                                 │

00:00:17 #1872 [Verbose] > │             let v172 : UH0 = UH0_1                                           │

00:00:17 #1873 [Verbose] > │             let v173 : UH0 = UH0_0(v7, v172)                                 │

00:00:17 #1874 [Verbose] > │             UH1_0(v7, v173, v171)                                            │

00:00:17 #1875 [Verbose] > │     let v176 : bool = false                                                  │

00:00:17 #1876 [Verbose] > │     let v177 : UH1 = UH1_1                                                   │

00:00:17 #1877 [Verbose] > │     let struct (v178 : bool, v179 : UH1) = method5(v11, v175, v176, v177)    │

00:00:17 #1878 [Verbose] > │     let v183 : UH1 =                                                         │

00:00:17 #1879 [Verbose] > │         if v178 then                                                         │

00:00:17 #1880 [Verbose] > │             v179                                                             │

00:00:17 #1881 [Verbose] > │         else                                                                 │

00:00:17 #1882 [Verbose] > │             let v180 : UH0 = UH0_1                                           │

00:00:17 #1883 [Verbose] > │             let v181 : UH0 = UH0_0(v11, v180)                                │

00:00:17 #1884 [Verbose] > │             UH1_0(v11, v181, v179)                                           │

00:00:17 #1885 [Verbose] > │     let v184 : bool = false                                                  │

00:00:17 #1886 [Verbose] > │     let v185 : UH1 = UH1_1                                                   │

00:00:17 #1887 [Verbose] > │     let struct (v186 : bool, v187 : UH1) = method5(v15, v183, v184, v185)    │

00:00:17 #1888 [Verbose] > │     let v191 : UH1 =                                                         │

00:00:17 #1889 [Verbose] > │         if v186 then                                                         │

00:00:17 #1890 [Verbose] > │             v187                                                             │

00:00:17 #1891 [Verbose] > │         else                                                                 │

00:00:17 #1892 [Verbose] > │             let v188 : UH0 = UH0_1                                           │

00:00:17 #1893 [Verbose] > │             let v189 : UH0 = UH0_0(v15, v188)                                │

00:00:17 #1894 [Verbose] > │             UH1_0(v15, v189, v187)                                           │

00:00:17 #1895 [Verbose] > │     let v192 : bool = false                                                  │

00:00:17 #1896 [Verbose] > │     let v193 : UH1 = UH1_1                                                   │

00:00:17 #1897 [Verbose] > │     let struct (v194 : bool, v195 : UH1) = method5(v19, v191, v192, v193)    │

00:00:17 #1898 [Verbose] > │     let v199 : UH1 =                                                         │

00:00:17 #1899 [Verbose] > │         if v194 then                                                         │

00:00:17 #1900 [Verbose] > │             v195                                                             │

00:00:17 #1901 [Verbose] > │         else                                                                 │

00:00:17 #1902 [Verbose] > │             let v196 : UH0 = UH0_1                                           │

00:00:17 #1903 [Verbose] > │             let v197 : UH0 = UH0_0(v19, v196)                                │

00:00:17 #1904 [Verbose] > │             UH1_0(v19, v197, v195)                                           │

00:00:17 #1905 [Verbose] > │     let v200 : bool = false                                                  │

00:00:17 #1906 [Verbose] > │     let v201 : UH1 = UH1_1                                                   │

00:00:17 #1907 [Verbose] > │     let struct (v202 : bool, v203 : UH1) = method5(v23, v199, v200, v201)    │

00:00:17 #1908 [Verbose] > │     let v207 : UH1 =                                                         │

00:00:17 #1909 [Verbose] > │         if v202 then                                                         │

00:00:17 #1910 [Verbose] > │             v203                                                             │

00:00:17 #1911 [Verbose] > │         else                                                                 │

00:00:17 #1912 [Verbose] > │             let v204 : UH0 = UH0_1                                           │

00:00:17 #1913 [Verbose] > │             let v205 : UH0 = UH0_0(v23, v204)                                │

00:00:17 #1914 [Verbose] > │             UH1_0(v23, v205, v203)                                           │

00:00:17 #1915 [Verbose] > │     let v208 : bool = false                                                  │

00:00:17 #1916 [Verbose] > │     let v209 : UH1 = UH1_1                                                   │

00:00:17 #1917 [Verbose] > │     let struct (v210 : bool, v211 : UH1) = method5(v27, v207, v208, v209)    │

00:00:17 #1918 [Verbose] > │     let v215 : UH1 =                                                         │

00:00:17 #1919 [Verbose] > │         if v210 then                                                         │

00:00:17 #1920 [Verbose] > │             v211                                                             │

00:00:17 #1921 [Verbose] > │         else                                                                 │

00:00:17 #1922 [Verbose] > │             let v212 : UH0 = UH0_1                                           │

00:00:17 #1923 [Verbose] > │             let v213 : UH0 = UH0_0(v27, v212)                                │

00:00:17 #1924 [Verbose] > │             UH1_0(v27, v213, v211)                                           │

00:00:17 #1925 [Verbose] > │     let v216 : bool = false                                                  │

00:00:17 #1926 [Verbose] > │     let v217 : UH1 = UH1_1                                                   │

00:00:17 #1927 [Verbose] > │     let struct (v218 : bool, v219 : UH1) = method5(v31, v215, v216, v217)    │

00:00:17 #1928 [Verbose] > │     let v223 : UH1 =                                                         │

00:00:17 #1929 [Verbose] > │         if v218 then                                                         │

00:00:17 #1930 [Verbose] > │             v219                                                             │

00:00:17 #1931 [Verbose] > │         else                                                                 │

00:00:17 #1932 [Verbose] > │             let v220 : UH0 = UH0_1                                           │

00:00:17 #1933 [Verbose] > │             let v221 : UH0 = UH0_0(v31, v220)                                │

00:00:17 #1934 [Verbose] > │             UH1_0(v31, v221, v219)                                           │

00:00:17 #1935 [Verbose] > │     let v224 : bool = false                                                  │

00:00:17 #1936 [Verbose] > │     let v225 : UH1 = UH1_1                                                   │

00:00:17 #1937 [Verbose] > │     let struct (v226 : bool, v227 : UH1) = method5(v35, v223, v224, v225)    │

00:00:17 #1938 [Verbose] > │     let v231 : UH1 =                                                         │

00:00:17 #1939 [Verbose] > │         if v226 then                                                         │

00:00:17 #1940 [Verbose] > │             v227                                                             │

00:00:17 #1941 [Verbose] > │         else                                                                 │

00:00:17 #1942 [Verbose] > │             let v228 : UH0 = UH0_1                                           │

00:00:17 #1943 [Verbose] > │             let v229 : UH0 = UH0_0(v35, v228)                                │

00:00:17 #1944 [Verbose] > │             UH1_0(v35, v229, v227)                                           │

00:00:17 #1945 [Verbose] > │     let v232 : bool = false                                                  │

00:00:17 #1946 [Verbose] > │     let v233 : UH1 = UH1_1                                                   │

00:00:17 #1947 [Verbose] > │     let struct (v234 : bool, v235 : UH1) = method5(v39, v231, v232, v233)    │

00:00:17 #1948 [Verbose] > │     let v239 : UH1 =                                                         │

00:00:17 #1949 [Verbose] > │         if v234 then                                                         │

00:00:17 #1950 [Verbose] > │             v235                                                             │

00:00:17 #1951 [Verbose] > │         else                                                                 │

00:00:17 #1952 [Verbose] > │             let v236 : UH0 = UH0_1                                           │

00:00:17 #1953 [Verbose] > │             let v237 : UH0 = UH0_0(v39, v236)                                │

00:00:17 #1954 [Verbose] > │             UH1_0(v39, v237, v235)                                           │

00:00:17 #1955 [Verbose] > │     let v240 : bool = false                                                  │

00:00:17 #1956 [Verbose] > │     let v241 : UH1 = UH1_1                                                   │

00:00:17 #1957 [Verbose] > │     let struct (v242 : bool, v243 : UH1) = method5(v43, v239, v240, v241)    │

00:00:17 #1958 [Verbose] > │     let v247 : UH1 =                                                         │

00:00:17 #1959 [Verbose] > │         if v242 then                                                         │

00:00:17 #1960 [Verbose] > │             v243                                                             │

00:00:17 #1961 [Verbose] > │         else                                                                 │

00:00:17 #1962 [Verbose] > │             let v244 : UH0 = UH0_1                                           │

00:00:17 #1963 [Verbose] > │             let v245 : UH0 = UH0_0(v43, v244)                                │

00:00:17 #1964 [Verbose] > │             UH1_0(v43, v245, v243)                                           │

00:00:17 #1965 [Verbose] > │     let v248 : bool = false                                                  │

00:00:17 #1966 [Verbose] > │     let v249 : UH1 = UH1_1                                                   │

00:00:17 #1967 [Verbose] > │     let struct (v250 : bool, v251 : UH1) = method5(v47, v247, v248, v249)    │

00:00:17 #1968 [Verbose] > │     let v255 : UH1 =                                                         │

00:00:17 #1969 [Verbose] > │         if v250 then                                                         │

00:00:17 #1970 [Verbose] > │             v251                                                             │

00:00:17 #1971 [Verbose] > │         else                                                                 │

00:00:17 #1972 [Verbose] > │             let v252 : UH0 = UH0_1                                           │

00:00:17 #1973 [Verbose] > │             let v253 : UH0 = UH0_0(v47, v252)                                │

00:00:17 #1974 [Verbose] > │             UH1_0(v47, v253, v251)                                           │

00:00:17 #1975 [Verbose] > │     let v256 : bool = false                                                  │

00:00:17 #1976 [Verbose] > │     let v257 : UH1 = UH1_1                                                   │

00:00:17 #1977 [Verbose] > │     let struct (v258 : bool, v259 : UH1) = method5(v51, v255, v256, v257)    │

00:00:17 #1978 [Verbose] > │     let v263 : UH1 =                                                         │

00:00:17 #1979 [Verbose] > │         if v258 then                                                         │

00:00:17 #1980 [Verbose] > │             v259                                                             │

00:00:17 #1981 [Verbose] > │         else                                                                 │

00:00:17 #1982 [Verbose] > │             let v260 : UH0 = UH0_1                                           │

00:00:17 #1983 [Verbose] > │             let v261 : UH0 = UH0_0(v51, v260)                                │

00:00:17 #1984 [Verbose] > │             UH1_0(v51, v261, v259)                                           │

00:00:17 #1985 [Verbose] > │     let v264 : bool = false                                                  │

00:00:17 #1986 [Verbose] > │     let v265 : UH1 = UH1_1                                                   │

00:00:17 #1987 [Verbose] > │     let struct (v266 : bool, v267 : UH1) = method5(v55, v263, v264, v265)    │

00:00:17 #1988 [Verbose] > │     let v271 : UH1 =                                                         │

00:00:17 #1989 [Verbose] > │         if v266 then                                                         │

00:00:17 #1990 [Verbose] > │             v267                                                             │

00:00:17 #1991 [Verbose] > │         else                                                                 │

00:00:17 #1992 [Verbose] > │             let v268 : UH0 = UH0_1                                           │

00:00:17 #1993 [Verbose] > │             let v269 : UH0 = UH0_0(v55, v268)                                │

00:00:17 #1994 [Verbose] > │             UH1_0(v55, v269, v267)                                           │

00:00:17 #1995 [Verbose] > │     let v272 : bool = false                                                  │

00:00:17 #1996 [Verbose] > │     let v273 : UH1 = UH1_1                                                   │

00:00:17 #1997 [Verbose] > │     let struct (v274 : bool, v275 : UH1) = method5(v59, v271, v272, v273)    │

00:00:17 #1998 [Verbose] > │     let v279 : UH1 =                                                         │

00:00:17 #1999 [Verbose] > │         if v274 then                                                         │

00:00:17 #2000 [Verbose] > │             v275                                                             │

00:00:17 #2001 [Verbose] > │         else                                                                 │

00:00:17 #2002 [Verbose] > │             let v276 : UH0 = UH0_1                                           │

00:00:17 #2003 [Verbose] > │             let v277 : UH0 = UH0_0(v59, v276)                                │

00:00:17 #2004 [Verbose] > │             UH1_0(v59, v277, v275)                                           │

00:00:17 #2005 [Verbose] > │     let v280 : bool = false                                                  │

00:00:17 #2006 [Verbose] > │     let v281 : UH1 = UH1_1                                                   │

00:00:17 #2007 [Verbose] > │     let struct (v282 : bool, v283 : UH1) = method5(v63, v279, v280, v281)    │

00:00:17 #2008 [Verbose] > │     let v287 : UH1 =                                                         │

00:00:17 #2009 [Verbose] > │         if v282 then                                                         │

00:00:17 #2010 [Verbose] > │             v283                                                             │

00:00:17 #2011 [Verbose] > │         else                                                                 │

00:00:17 #2012 [Verbose] > │             let v284 : UH0 = UH0_1                                           │

00:00:17 #2013 [Verbose] > │             let v285 : UH0 = UH0_0(v63, v284)                                │

00:00:17 #2014 [Verbose] > │             UH1_0(v63, v285, v283)                                           │

00:00:17 #2015 [Verbose] > │     let v288 : bool = false                                                  │

00:00:17 #2016 [Verbose] > │     let v289 : UH1 = UH1_1                                                   │

00:00:17 #2017 [Verbose] > │     let struct (v290 : bool, v291 : UH1) = method5(v67, v287, v288, v289)    │

00:00:17 #2018 [Verbose] > │     let v295 : UH1 =                                                         │

00:00:17 #2019 [Verbose] > │         if v290 then                                                         │

00:00:17 #2020 [Verbose] > │             v291                                                             │

00:00:17 #2021 [Verbose] > │         else                                                                 │

00:00:17 #2022 [Verbose] > │             let v292 : UH0 = UH0_1                                           │

00:00:17 #2023 [Verbose] > │             let v293 : UH0 = UH0_0(v67, v292)                                │

00:00:17 #2024 [Verbose] > │             UH1_0(v67, v293, v291)                                           │

00:00:17 #2025 [Verbose] > │     let v296 : bool = false                                                  │

00:00:17 #2026 [Verbose] > │     let v297 : UH1 = UH1_1                                                   │

00:00:17 #2027 [Verbose] > │     let struct (v298 : bool, v299 : UH1) = method5(v71, v295, v296, v297)    │

00:00:17 #2028 [Verbose] > │     let v303 : UH1 =                                                         │

00:00:17 #2029 [Verbose] > │         if v298 then                                                         │

00:00:17 #2030 [Verbose] > │             v299                                                             │

00:00:17 #2031 [Verbose] > │         else                                                                 │

00:00:17 #2032 [Verbose] > │             let v300 : UH0 = UH0_1                                           │

00:00:17 #2033 [Verbose] > │             let v301 : UH0 = UH0_0(v71, v300)                                │

00:00:17 #2034 [Verbose] > │             UH1_0(v71, v301, v299)                                           │

00:00:17 #2035 [Verbose] > │     let v304 : bool = false                                                  │

00:00:17 #2036 [Verbose] > │     let v305 : UH1 = UH1_1                                                   │

00:00:17 #2037 [Verbose] > │     let struct (v306 : bool, v307 : UH1) = method5(v75, v303, v304, v305)    │

00:00:17 #2038 [Verbose] > │     let v311 : UH1 =                                                         │

00:00:17 #2039 [Verbose] > │         if v306 then                                                         │

00:00:17 #2040 [Verbose] > │             v307                                                             │

00:00:17 #2041 [Verbose] > │         else                                                                 │

00:00:17 #2042 [Verbose] > │             let v308 : UH0 = UH0_1                                           │

00:00:17 #2043 [Verbose] > │             let v309 : UH0 = UH0_0(v75, v308)                                │

00:00:17 #2044 [Verbose] > │             UH1_0(v75, v309, v307)                                           │

00:00:17 #2045 [Verbose] > │     let v312 : bool = false                                                  │

00:00:17 #2046 [Verbose] > │     let v313 : UH1 = UH1_1                                                   │

00:00:17 #2047 [Verbose] > │     let struct (v314 : bool, v315 : UH1) = method5(v79, v311, v312, v313)    │

00:00:17 #2048 [Verbose] > │     let v319 : UH1 =                                                         │

00:00:17 #2049 [Verbose] > │         if v314 then                                                         │

00:00:17 #2050 [Verbose] > │             v315                                                             │

00:00:17 #2051 [Verbose] > │         else                                                                 │

00:00:17 #2052 [Verbose] > │             let v316 : UH0 = UH0_1                                           │

00:00:17 #2053 [Verbose] > │             let v317 : UH0 = UH0_0(v79, v316)                                │

00:00:17 #2054 [Verbose] > │             UH1_0(v79, v317, v315)                                           │

00:00:17 #2055 [Verbose] > │     let v320 : bool = false                                                  │

00:00:17 #2056 [Verbose] > │     let v321 : UH1 = UH1_1                                                   │

00:00:17 #2057 [Verbose] > │     let struct (v322 : bool, v323 : UH1) = method5(v83, v319, v320, v321)    │

00:00:17 #2058 [Verbose] > │     let v327 : UH1 =                                                         │

00:00:17 #2059 [Verbose] > │         if v322 then                                                         │

00:00:17 #2060 [Verbose] > │             v323                                                             │

00:00:17 #2061 [Verbose] > │         else                                                                 │

00:00:17 #2062 [Verbose] > │             let v324 : UH0 = UH0_1                                           │

00:00:17 #2063 [Verbose] > │             let v325 : UH0 = UH0_0(v83, v324)                                │

00:00:17 #2064 [Verbose] > │             UH1_0(v83, v325, v323)                                           │

00:00:17 #2065 [Verbose] > │     let v328 : bool = false                                                  │

00:00:17 #2066 [Verbose] > │     let v329 : UH1 = UH1_1                                                   │

00:00:17 #2067 [Verbose] > │     let struct (v330 : bool, v331 : UH1) = method5(v87, v327, v328, v329)    │

00:00:17 #2068 [Verbose] > │     let v335 : UH1 =                                                         │

00:00:17 #2069 [Verbose] > │         if v330 then                                                         │

00:00:17 #2070 [Verbose] > │             v331                                                             │

00:00:17 #2071 [Verbose] > │         else                                                                 │

00:00:17 #2072 [Verbose] > │             let v332 : UH0 = UH0_1                                           │

00:00:17 #2073 [Verbose] > │             let v333 : UH0 = UH0_0(v87, v332)                                │

00:00:17 #2074 [Verbose] > │             UH1_0(v87, v333, v331)                                           │

00:00:17 #2075 [Verbose] > │     let v336 : bool = false                                                  │

00:00:17 #2076 [Verbose] > │     let v337 : UH1 = UH1_1                                                   │

00:00:17 #2077 [Verbose] > │     let struct (v338 : bool, v339 : UH1) = method5(v91, v335, v336, v337)    │

00:00:17 #2078 [Verbose] > │     let v343 : UH1 =                                                         │

00:00:17 #2079 [Verbose] > │         if v338 then                                                         │

00:00:17 #2080 [Verbose] > │             v339                                                             │

00:00:17 #2081 [Verbose] > │         else                                                                 │

00:00:17 #2082 [Verbose] > │             let v340 : UH0 = UH0_1                                           │

00:00:17 #2083 [Verbose] > │             let v341 : UH0 = UH0_0(v91, v340)                                │

00:00:17 #2084 [Verbose] > │             UH1_0(v91, v341, v339)                                           │

00:00:17 #2085 [Verbose] > │     let v344 : bool = false                                                  │

00:00:17 #2086 [Verbose] > │     let v345 : UH1 = UH1_1                                                   │

00:00:17 #2087 [Verbose] > │     let struct (v346 : bool, v347 : UH1) = method5(v95, v343, v344, v345)    │

00:00:17 #2088 [Verbose] > │     let v351 : UH1 =                                                         │

00:00:17 #2089 [Verbose] > │         if v346 then                                                         │

00:00:17 #2090 [Verbose] > │             v347                                                             │

00:00:17 #2091 [Verbose] > │         else                                                                 │

00:00:17 #2092 [Verbose] > │             let v348 : UH0 = UH0_1                                           │

00:00:17 #2093 [Verbose] > │             let v349 : UH0 = UH0_0(v95, v348)                                │

00:00:17 #2094 [Verbose] > │             UH1_0(v95, v349, v347)                                           │

00:00:17 #2095 [Verbose] > │     let v352 : bool = false                                                  │

00:00:17 #2096 [Verbose] > │     let v353 : UH1 = UH1_1                                                   │

00:00:17 #2097 [Verbose] > │     let struct (v354 : bool, v355 : UH1) = method5(v99, v351, v352, v353)    │

00:00:17 #2098 [Verbose] > │     let v359 : UH1 =                                                         │

00:00:17 #2099 [Verbose] > │         if v354 then                                                         │

00:00:17 #2100 [Verbose] > │             v355                                                             │

00:00:17 #2101 [Verbose] > │         else                                                                 │

00:00:17 #2102 [Verbose] > │             let v356 : UH0 = UH0_1                                           │

00:00:17 #2103 [Verbose] > │             let v357 : UH0 = UH0_0(v99, v356)                                │

00:00:17 #2104 [Verbose] > │             UH1_0(v99, v357, v355)                                           │

00:00:17 #2105 [Verbose] > │     let v360 : bool = false                                                  │

00:00:17 #2106 [Verbose] > │     let v361 : UH1 = UH1_1                                                   │

00:00:17 #2107 [Verbose] > │     let struct (v362 : bool, v363 : UH1) = method5(v103, v359, v360, v361)   │

00:00:17 #2108 [Verbose] > │     let v367 : UH1 =                                                         │

00:00:17 #2109 [Verbose] > │         if v362 then                                                         │

00:00:17 #2110 [Verbose] > │             v363                                                             │

00:00:17 #2111 [Verbose] > │         else                                                                 │

00:00:17 #2112 [Verbose] > │             let v364 : UH0 = UH0_1                                           │

00:00:17 #2113 [Verbose] > │             let v365 : UH0 = UH0_0(v103, v364)                               │

00:00:17 #2114 [Verbose] > │             UH1_0(v103, v365, v363)                                          │

00:00:17 #2115 [Verbose] > │     let v368 : bool = false                                                  │

00:00:17 #2116 [Verbose] > │     let v369 : UH1 = UH1_1                                                   │

00:00:17 #2117 [Verbose] > │     let struct (v370 : bool, v371 : UH1) = method5(v107, v367, v368, v369)   │

00:00:17 #2118 [Verbose] > │     let v375 : UH1 =                                                         │

00:00:17 #2119 [Verbose] > │         if v370 then                                                         │

00:00:17 #2120 [Verbose] > │             v371                                                             │

00:00:17 #2121 [Verbose] > │         else                                                                 │

00:00:17 #2122 [Verbose] > │             let v372 : UH0 = UH0_1                                           │

00:00:17 #2123 [Verbose] > │             let v373 : UH0 = UH0_0(v107, v372)                               │

00:00:17 #2124 [Verbose] > │             UH1_0(v107, v373, v371)                                          │

00:00:17 #2125 [Verbose] > │     let v376 : bool = false                                                  │

00:00:17 #2126 [Verbose] > │     let v377 : UH1 = UH1_1                                                   │

00:00:17 #2127 [Verbose] > │     let struct (v378 : bool, v379 : UH1) = method5(v111, v375, v376, v377)   │

00:00:17 #2128 [Verbose] > │     let v383 : UH1 =                                                         │

00:00:17 #2129 [Verbose] > │         if v378 then                                                         │

00:00:17 #2130 [Verbose] > │             v379                                                             │

00:00:17 #2131 [Verbose] > │         else                                                                 │

00:00:17 #2132 [Verbose] > │             let v380 : UH0 = UH0_1                                           │

00:00:17 #2133 [Verbose] > │             let v381 : UH0 = UH0_0(v111, v380)                               │

00:00:17 #2134 [Verbose] > │             UH1_0(v111, v381, v379)                                          │

00:00:17 #2135 [Verbose] > │     let v384 : bool = false                                                  │

00:00:17 #2136 [Verbose] > │     let v385 : UH1 = UH1_1                                                   │

00:00:17 #2137 [Verbose] > │     let struct (v386 : bool, v387 : UH1) = method5(v115, v383, v384, v385)   │

00:00:17 #2138 [Verbose] > │     let v391 : UH1 =                                                         │

00:00:17 #2139 [Verbose] > │         if v386 then                                                         │

00:00:17 #2140 [Verbose] > │             v387                                                             │

00:00:17 #2141 [Verbose] > │         else                                                                 │

00:00:17 #2142 [Verbose] > │             let v388 : UH0 = UH0_1                                           │

00:00:17 #2143 [Verbose] > │             let v389 : UH0 = UH0_0(v115, v388)                               │

00:00:17 #2144 [Verbose] > │             UH1_0(v115, v389, v387)                                          │

00:00:17 #2145 [Verbose] > │     let v392 : bool = false                                                  │

00:00:17 #2146 [Verbose] > │     let v393 : UH1 = UH1_1                                                   │

00:00:17 #2147 [Verbose] > │     let struct (v394 : bool, v395 : UH1) = method5(v119, v391, v392, v393)   │

00:00:17 #2148 [Verbose] > │     let v399 : UH1 =                                                         │

00:00:17 #2149 [Verbose] > │         if v394 then                                                         │

00:00:17 #2150 [Verbose] > │             v395                                                             │

00:00:17 #2151 [Verbose] > │         else                                                                 │

00:00:17 #2152 [Verbose] > │             let v396 : UH0 = UH0_1                                           │

00:00:17 #2153 [Verbose] > │             let v397 : UH0 = UH0_0(v119, v396)                               │

00:00:17 #2154 [Verbose] > │             UH1_0(v119, v397, v395)                                          │

00:00:17 #2155 [Verbose] > │     let v400 : bool = false                                                  │

00:00:17 #2156 [Verbose] > │     let v401 : UH1 = UH1_1                                                   │

00:00:17 #2157 [Verbose] > │     let struct (v402 : bool, v403 : UH1) = method5(v123, v399, v400, v401)   │

00:00:17 #2158 [Verbose] > │     let v407 : UH1 =                                                         │

00:00:17 #2159 [Verbose] > │         if v402 then                                                         │

00:00:17 #2160 [Verbose] > │             v403                                                             │

00:00:17 #2161 [Verbose] > │         else                                                                 │

00:00:17 #2162 [Verbose] > │             let v404 : UH0 = UH0_1                                           │

00:00:17 #2163 [Verbose] > │             let v405 : UH0 = UH0_0(v123, v404)                               │

00:00:17 #2164 [Verbose] > │             UH1_0(v123, v405, v403)                                          │

00:00:17 #2165 [Verbose] > │     let v408 : bool = false                                                  │

00:00:17 #2166 [Verbose] > │     let v409 : UH1 = UH1_1                                                   │

00:00:17 #2167 [Verbose] > │     let struct (v410 : bool, v411 : UH1) = method5(v127, v407, v408, v409)   │

00:00:17 #2168 [Verbose] > │     let v415 : UH1 =                                                         │

00:00:17 #2169 [Verbose] > │         if v410 then                                                         │

00:00:17 #2170 [Verbose] > │             v411                                                             │

00:00:17 #2171 [Verbose] > │         else                                                                 │

00:00:17 #2172 [Verbose] > │             let v412 : UH0 = UH0_1                                           │

00:00:17 #2173 [Verbose] > │             let v413 : UH0 = UH0_0(v127, v412)                               │

00:00:17 #2174 [Verbose] > │             UH1_0(v127, v413, v411)                                          │

00:00:17 #2175 [Verbose] > │     let v416 : bool = false                                                  │

00:00:17 #2176 [Verbose] > │     let v417 : UH1 = UH1_1                                                   │

00:00:17 #2177 [Verbose] > │     let struct (v418 : bool, v419 : UH1) = method5(v131, v415, v416, v417)   │

00:00:17 #2178 [Verbose] > │     let v423 : UH1 =                                                         │

00:00:17 #2179 [Verbose] > │         if v418 then                                                         │

00:00:17 #2180 [Verbose] > │             v419                                                             │

00:00:17 #2181 [Verbose] > │         else                                                                 │

00:00:17 #2182 [Verbose] > │             let v420 : UH0 = UH0_1                                           │

00:00:17 #2183 [Verbose] > │             let v421 : UH0 = UH0_0(v131, v420)                               │

00:00:17 #2184 [Verbose] > │             UH1_0(v131, v421, v419)                                          │

00:00:17 #2185 [Verbose] > │     let v424 : bool = false                                                  │

00:00:17 #2186 [Verbose] > │     let v425 : UH1 = UH1_1                                                   │

00:00:17 #2187 [Verbose] > │     let struct (v426 : bool, v427 : UH1) = method5(v135, v423, v424, v425)   │

00:00:17 #2188 [Verbose] > │     let v431 : UH1 =                                                         │

00:00:17 #2189 [Verbose] > │         if v426 then                                                         │

00:00:17 #2190 [Verbose] > │             v427                                                             │

00:00:17 #2191 [Verbose] > │         else                                                                 │

00:00:17 #2192 [Verbose] > │             let v428 : UH0 = UH0_1                                           │

00:00:17 #2193 [Verbose] > │             let v429 : UH0 = UH0_0(v135, v428)                               │

00:00:17 #2194 [Verbose] > │             UH1_0(v135, v429, v427)                                          │

00:00:17 #2195 [Verbose] > │     let v432 : bool = false                                                  │

00:00:17 #2196 [Verbose] > │     let v433 : UH1 = UH1_1                                                   │

00:00:17 #2197 [Verbose] > │     let struct (v434 : bool, v435 : UH1) = method5(v139, v431, v432, v433)   │

00:00:17 #2198 [Verbose] > │     let v439 : UH1 =                                                         │

00:00:17 #2199 [Verbose] > │         if v434 then                                                         │

00:00:17 #2200 [Verbose] > │             v435                                                             │

00:00:17 #2201 [Verbose] > │         else                                                                 │

00:00:17 #2202 [Verbose] > │             let v436 : UH0 = UH0_1                                           │

00:00:17 #2203 [Verbose] > │             let v437 : UH0 = UH0_0(v139, v436)                               │

00:00:17 #2204 [Verbose] > │             UH1_0(v139, v437, v435)                                          │

00:00:17 #2205 [Verbose] > │     let v440 : bool = false                                                  │

00:00:17 #2206 [Verbose] > │     let v441 : UH1 = UH1_1                                                   │

00:00:17 #2207 [Verbose] > │     let struct (v442 : bool, v443 : UH1) = method5(v143, v439, v440, v441)   │

00:00:17 #2208 [Verbose] > │     let v447 : UH1 =                                                         │

00:00:17 #2209 [Verbose] > │         if v442 then                                                         │

00:00:17 #2210 [Verbose] > │             v443                                                             │

00:00:17 #2211 [Verbose] > │         else                                                                 │

00:00:17 #2212 [Verbose] > │             let v444 : UH0 = UH0_1                                           │

00:00:17 #2213 [Verbose] > │             let v445 : UH0 = UH0_0(v143, v444)                               │

00:00:17 #2214 [Verbose] > │             UH1_0(v143, v445, v443)                                          │

00:00:17 #2215 [Verbose] > │     let v448 : bool = false                                                  │

00:00:17 #2216 [Verbose] > │     let v449 : UH1 = UH1_1                                                   │

00:00:17 #2217 [Verbose] > │     let struct (v450 : bool, v451 : UH1) = method5(v147, v447, v448, v449)   │

00:00:17 #2218 [Verbose] > │     let v455 : UH1 =                                                         │

00:00:17 #2219 [Verbose] > │         if v450 then                                                         │

00:00:17 #2220 [Verbose] > │             v451                                                             │

00:00:17 #2221 [Verbose] > │         else                                                                 │

00:00:17 #2222 [Verbose] > │             let v452 : UH0 = UH0_1                                           │

00:00:17 #2223 [Verbose] > │             let v453 : UH0 = UH0_0(v147, v452)                               │

00:00:17 #2224 [Verbose] > │             UH1_0(v147, v453, v451)                                          │

00:00:17 #2225 [Verbose] > │     let v456 : bool = false                                                  │

00:00:17 #2226 [Verbose] > │     let v457 : UH1 = UH1_1                                                   │

00:00:17 #2227 [Verbose] > │     let struct (v458 : bool, v459 : UH1) = method5(v151, v455, v456, v457)   │

00:00:17 #2228 [Verbose] > │     let v463 : UH1 =                                                         │

00:00:17 #2229 [Verbose] > │         if v458 then                                                         │

00:00:17 #2230 [Verbose] > │             v459                                                             │

00:00:17 #2231 [Verbose] > │         else                                                                 │

00:00:17 #2232 [Verbose] > │             let v460 : UH0 = UH0_1                                           │

00:00:17 #2233 [Verbose] > │             let v461 : UH0 = UH0_0(v151, v460)                               │

00:00:17 #2234 [Verbose] > │             UH1_0(v151, v461, v459)                                          │

00:00:17 #2235 [Verbose] > │     let v464 : bool = false                                                  │

00:00:17 #2236 [Verbose] > │     let v465 : UH1 = UH1_1                                                   │

00:00:17 #2237 [Verbose] > │     let struct (v466 : bool, v467 : UH1) = method5(v155, v463, v464, v465)   │

00:00:17 #2238 [Verbose] > │     let v471 : UH1 =                                                         │

00:00:17 #2239 [Verbose] > │         if v466 then                                                         │

00:00:17 #2240 [Verbose] > │             v467                                                             │

00:00:17 #2241 [Verbose] > │         else                                                                 │

00:00:17 #2242 [Verbose] > │             let v468 : UH0 = UH0_1                                           │

00:00:17 #2243 [Verbose] > │             let v469 : UH0 = UH0_0(v155, v468)                               │

00:00:17 #2244 [Verbose] > │             UH1_0(v155, v469, v467)                                          │

00:00:17 #2245 [Verbose] > │     let v472 : bool = false                                                  │

00:00:17 #2246 [Verbose] > │     let v473 : UH1 = UH1_1                                                   │

00:00:17 #2247 [Verbose] > │     let struct (v474 : bool, v475 : UH1) = method5(v159, v471, v472, v473)   │

00:00:17 #2248 [Verbose] > │     let v479 : UH1 =                                                         │

00:00:17 #2249 [Verbose] > │         if v474 then                                                         │

00:00:17 #2250 [Verbose] > │             v475                                                             │

00:00:17 #2251 [Verbose] > │         else                                                                 │

00:00:17 #2252 [Verbose] > │             let v476 : UH0 = UH0_1                                           │

00:00:17 #2253 [Verbose] > │             let v477 : UH0 = UH0_0(v159, v476)                               │

00:00:17 #2254 [Verbose] > │             UH1_0(v159, v477, v475)                                          │

00:00:17 #2255 [Verbose] > │     let v480 : UH2 = UH2_1                                                   │

00:00:17 #2256 [Verbose] > │     let v481 : UH2 = method6(v479, v480)                                     │

00:00:17 #2257 [Verbose] > │     let v482 : (struct (int32 * int32) []) = method8(v481)                   │

00:00:17 #2258 [Verbose] > │     let v483 : (struct (int32 * int32) []) = v482 |> Array.sortBy (fun       │

00:00:17 #2259 [Verbose] > │ (struct (a, b)) -> a)                                                        │

00:00:17 #2260 [Verbose] > │     v483                                                                     │

00:00:17 #2261 [Verbose] > │ method0()                                                                    │

00:00:17 #2262 [Verbose] > │                                                                              │

00:00:17 #2263 [Verbose] > │                                                                              │

00:00:17 #2264 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:17 #2265 [Verbose] >

00:00:17 #2266 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:17 #2267 [Verbose] > // // test

00:00:17 #2268 [Verbose] > // // print_code=false

00:00:17 #2269 [Verbose] >

00:00:17 #2270 [Verbose] > listm'.init_series 1i32 40 1

00:00:17 #2271 [Verbose] > |> listm.map (fun _ => roll_progressively None roll_dice true 10)

00:00:17 #2272 [Verbose] > |> listm'.group_by id

00:00:17 #2273 [Verbose] > |> listm.map (fun (k, v) => k, (listm.length v : i32))

00:00:17 #2274 [Verbose] > |> listm.toArray

00:00:17 #2275 [Verbose] > |> fun (ar : a i32 _) =>

00:00:17 #2276 [Verbose] >     $"!ar |> Array.sortBy (fun (struct (a, b)) -> a)" : a i32 $"struct (int32 *

00:00:17 #2277 [Verbose] > int32)"

00:00:17 #2278 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3505-0515-0955e0501771\main.spi

00:00:18 #2279 [Verbose] >

00:00:18 #2280 [Verbose] > ╭─[ 613.30ms - return value ]──────────────────────────────────────────────────╮

00:00:18 #2281 [Verbose] > │ <table><thead><tr><th><i>index</i></th><th>value</th></tr></thead><tbody><tr │

00:00:18 #2282 [Verbose] > │ ><td>0</td><td><details class="dni-treeview"><summary><span                  │

00:00:18 #2283 [Verbose] > │ class="dni-code-hint"><code>(1,                                              │

00:00:18 #2284 [Verbose] > │ 2)</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

00:00:18 #2285 [Verbose] > │ >Item1</td><td><div                                                          │

00:00:18 #2286 [Verbose] > │ class="dni-plaintext"><pre>1</pre></div></td></tr><tr><td>Item2</td><td><div │

00:00:18 #2287 [Verbose] > │ class="dni-plaintext"><pre>2</pre></div></td></tr></tbody></table></div></de │

00:00:18 #2288 [Verbose] > │ tails></td></tr><tr><td>1</td><td><details                                   │

00:00:18 #2289 [Verbose] > │ class="dni-treeview"><summary><span class="dni-code-hint"><code>(2,          │

00:00:18 #2290 [Verbose] > │ 3)</code></span></summary><div><table><thead><tr></tr></thead><tbody><tr><td │

00:00:18 #2291 [Verbose] > │ >Item1</td><td><div                                                          │

00:00:18 #2292 [Verbose] > │ class="dni-plaintext"><pre>2</pre></div></td></tr><tr><td>Item2</td><td><div │

00:00:18 #2293 [Verbose] > │ class="dni-plaintext"><pre>3</pre></div></td></tr...                         │

00:00:18 #2294 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #2295 [Verbose] >

00:00:18 #2296 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:18 #2297 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:18 #2298 [Verbose] > │ ## main                                                                      │

00:00:18 #2299 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #2300 [Verbose] >

00:00:18 #2301 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:18 #2302 [Verbose] > inl main () =

00:00:18 #2303 [Verbose] >     let main () =

00:00:18 #2304 [Verbose] >         inl rotate_numbers' : u64 -> stream.stream u64 -> stream.stream u64 =

00:00:18 #2305 [Verbose] > rotate_numbers

00:00:18 #2306 [Verbose] >         inl create_sequential_roller' : (list u64 -> () -> u64) =

00:00:18 #2307 [Verbose] > create_sequential_roller

00:00:18 #2308 [Verbose] >         inl roll_progressively' : (option (string -> ()) -> (() -> u64) -> bool

00:00:18 #2309 [Verbose] > -> u64 -> u64) = roll_progressively

00:00:18 #2310 [Verbose] >         inl roll_within_bounds' : option (string -> ()) -> u64 -> list u64 ->

00:00:18 #2311 [Verbose] > option u64 = roll_within_bounds

00:00:18 #2312 [Verbose] >

00:00:18 #2313 [Verbose] >         (rotate_numbers', create_sequential_roller', roll_progressively',

00:00:18 #2314 [Verbose] > roll_within_bounds')

00:00:18 #2315 [Verbose] >         |> dyn

00:00:18 #2316 [Verbose] >         |> ignore

00:00:18 #2317 [Verbose] >     main ()

00:00:18 #2318 [Verbose] >     $"let main _args = 0" : ()

00:00:18 #2319 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1309-3567-6750-6a45624a19e2\main.spi

00:00:19 #2320 [Verbose] >

00:00:19 #2321 [Verbose] > ╭─[ 653.74ms - stdout ]────────────────────────────────────────────────────────╮

00:00:19 #2322 [Verbose] > │ type UH0 =                                                                   │

00:00:19 #2323 [Verbose] > │     | UH0_0 of uint64 * (unit -> UH0)                                        │

00:00:19 #2324 [Verbose] > │     | UH0_1                                                                  │

00:00:19 #2325 [Verbose] > │ and UH1 =                                                                    │

00:00:19 #2326 [Verbose] > │     | UH1_0 of uint64 * UH1                                                  │

00:00:19 #2327 [Verbose] > │     | UH1_1                                                                  │

00:00:19 #2328 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:19 #2329 [Verbose] > │     | US0_0 of f0_0 : UH0                                                    │

00:00:19 #2330 [Verbose] > │     | US0_1 of f1_0 : (unit -> UH0)                                          │

00:00:19 #2331 [Verbose] > │ and Mut0 = {mutable l0 : US0}                                                │

00:00:19 #2332 [Verbose] > │ and Mut1 = {mutable l0 : int32}                                              │

00:00:19 #2333 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:19 #2334 [Verbose] > │     | US1_0                                                                  │

00:00:19 #2335 [Verbose] > │     | US1_1 of f1_0 : uint64                                                 │

00:00:19 #2336 [Verbose] > │ and [<Struct>] US2 =                                                         │

00:00:19 #2337 [Verbose] > │     | US2_0                                                                  │

00:00:19 #2338 [Verbose] > │     | US2_1 of f1_0 : (string -> unit)                                       │

00:00:19 #2339 [Verbose] > │ and [<Struct>] US3 =                                                         │

00:00:19 #2340 [Verbose] > │     | US3_0                                                                  │

00:00:19 #2341 [Verbose] > │     | US3_1 of f1_0 : uint64 * f1_1 : UH1                                    │

00:00:19 #2342 [Verbose] > │ let rec closure2 (v0 : UH0) () : UH0 =                                       │

00:00:19 #2343 [Verbose] > │     v0                                                                       │

00:00:19 #2344 [Verbose] > │ and method1 (v0 : uint64, v1 : UH0, v2 : UH0) : UH0 =                        │

00:00:19 #2345 [Verbose] > │     match v1 with                                                            │

00:00:19 #2346 [Verbose] > │     | UH0_0(v3, v4) -> (* StreamCons *)                                      │

00:00:19 #2347 [Verbose] > │         let v5 : UH0 = v4 ()                                                 │

00:00:19 #2348 [Verbose] > │         let v6 : UH0 = method1(v0, v5, v2)                                   │

00:00:19 #2349 [Verbose] > │         let v7 : uint64 = v3 - 1UL                                           │

00:00:19 #2350 [Verbose] > │         let v8 : uint64 = v7 + v0                                            │

00:00:19 #2351 [Verbose] > │         let v9 : uint64 = v8 % v0                                            │

00:00:19 #2352 [Verbose] > │         let v10 : uint64 = v9 + 1UL                                          │

00:00:19 #2353 [Verbose] > │         let v11 : (unit -> UH0) = closure2(v6)                               │

00:00:19 #2354 [Verbose] > │         UH0_0(v10, v11)                                                      │

00:00:19 #2355 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:19 #2356 [Verbose] > │         v2                                                                   │

00:00:19 #2357 [Verbose] > │ and closure1 (v0 : uint64) (v1 : UH0) : UH0 =                                │

00:00:19 #2358 [Verbose] > │     let v2 : UH0 = UH0_1                                                     │

00:00:19 #2359 [Verbose] > │     method1(v0, v1, v2)                                                      │

00:00:19 #2360 [Verbose] > │ and closure0 () (v0 : uint64) : (UH0 -> UH0) =                               │

00:00:19 #2361 [Verbose] > │     closure1(v0)                                                             │

00:00:19 #2362 [Verbose] > │ and method2 (v0 : UH1, v1 : UH1) : UH1 =                                     │

00:00:19 #2363 [Verbose] > │     match v0 with                                                            │

00:00:19 #2364 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:19 #2365 [Verbose] > │         let v4 : UH1 = UH1_0(v2, v1)                                         │

00:00:19 #2366 [Verbose] > │         method2(v3, v4)                                                      │

00:00:19 #2367 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:19 #2368 [Verbose] > │         v1                                                                   │

00:00:19 #2369 [Verbose] > │ and method3 (v0 : UH1, v1 : UH1) : UH1 =                                     │

00:00:19 #2370 [Verbose] > │     match v0 with                                                            │

00:00:19 #2371 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:19 #2372 [Verbose] > │         let v4 : UH1 = method3(v3, v1)                                       │

00:00:19 #2373 [Verbose] > │         UH1_0(v2, v4)                                                        │

00:00:19 #2374 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:19 #2375 [Verbose] > │         v1                                                                   │

00:00:19 #2376 [Verbose] > │ and closure4 (v0 : UH0) () : UH0 =                                           │

00:00:19 #2377 [Verbose] > │     v0                                                                       │

00:00:19 #2378 [Verbose] > │ and method4 (v0 : UH1, v1 : UH0) : UH0 =                                     │

00:00:19 #2379 [Verbose] > │     match v0 with                                                            │

00:00:19 #2380 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:19 #2381 [Verbose] > │         let v4 : UH0 = method4(v3, v1)                                       │

00:00:19 #2382 [Verbose] > │         let v5 : (unit -> UH0) = closure4(v4)                                │

00:00:19 #2383 [Verbose] > │         UH0_0(v2, v5)                                                        │

00:00:19 #2384 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:19 #2385 [Verbose] > │         v1                                                                   │

00:00:19 #2386 [Verbose] > │ and closure5 (v0 : UH0) () : UH0 =                                           │

00:00:19 #2387 [Verbose] > │     v0                                                                       │

00:00:19 #2388 [Verbose] > │ and closure6 (v0 : UH0, v1 : Mut0) () : UH0 =                                │

00:00:19 #2389 [Verbose] > │     let v2 : US0 = v1.l0                                                     │

00:00:19 #2390 [Verbose] > │     match v2 with                                                            │

00:00:19 #2391 [Verbose] > │     | US0_0(v3) -> (* Computed *)                                            │

00:00:19 #2392 [Verbose] > │         v3                                                                   │

00:00:19 #2393 [Verbose] > │     | US0_1(v4) -> (* NotComputed *)                                         │

00:00:19 #2394 [Verbose] > │         let v5 : UH0 = v4 ()                                                 │

00:00:19 #2395 [Verbose] > │         let v12 : UH0 =                                                      │

00:00:19 #2396 [Verbose] > │             match v5 with                                                    │

00:00:19 #2397 [Verbose] > │             | UH0_0(v7, v8) -> (* StreamCons *)                              │

00:00:19 #2398 [Verbose] > │                 let v9 : (unit -> UH0) = method5(v0, v8)                     │

00:00:19 #2399 [Verbose] > │                 UH0_0(v7, v9)                                                │

00:00:19 #2400 [Verbose] > │             | UH0_1 -> (* StreamNil *)                                       │

00:00:19 #2401 [Verbose] > │                 UH0_1                                                        │

00:00:19 #2402 [Verbose] > │         let v13 : US0 = US0_0(v12)                                           │

00:00:19 #2403 [Verbose] > │         v1.l0 <- v13                                                         │

00:00:19 #2404 [Verbose] > │         v12                                                                  │

00:00:19 #2405 [Verbose] > │ and method5 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) =                 │

00:00:19 #2406 [Verbose] > │     let v2 : US0 = US0_1(v1)                                                 │

00:00:19 #2407 [Verbose] > │     let v3 : Mut0 = {l0 = v2} : Mut0                                         │

00:00:19 #2408 [Verbose] > │     closure6(v0, v3)                                                         │

00:00:19 #2409 [Verbose] > │ and method7 (v0 : int32, v1 : UH0) : US1 =                                   │

00:00:19 #2410 [Verbose] > │     match v1 with                                                            │

00:00:19 #2411 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:19 #2412 [Verbose] > │         let v4 : bool = v0 <= 0                                              │

00:00:19 #2413 [Verbose] > │         if v4 then                                                           │

00:00:19 #2414 [Verbose] > │             US1_1(v2)                                                        │

00:00:19 #2415 [Verbose] > │         else                                                                 │

00:00:19 #2416 [Verbose] > │             let v6 : int32 = v0 - 1                                          │

00:00:19 #2417 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:19 #2418 [Verbose] > │             method7(v6, v7)                                                  │

00:00:19 #2419 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:19 #2420 [Verbose] > │         US1_0                                                                │

00:00:19 #2421 [Verbose] > │ and method6 (v0 : (unit -> UH0), v1 : Mut1, v2 : Mut1, v3 : Mut1) : uint64 = │

00:00:19 #2422 [Verbose] > │     let v4 : UH0 = v0 ()                                                     │

00:00:19 #2423 [Verbose] > │     let v5 : int32 = v1.l0                                                   │

00:00:19 #2424 [Verbose] > │     let v6 : US1 = method7(v5, v4)                                           │

00:00:19 #2425 [Verbose] > │     match v6 with                                                            │

00:00:19 #2426 [Verbose] > │     | US1_0 -> (* None *)                                                    │

00:00:19 #2427 [Verbose] > │         let v10 : int32 = v3.l0                                              │

00:00:19 #2428 [Verbose] > │         let v11 : bool = v10 = -1                                            │

00:00:19 #2429 [Verbose] > │         if v11 then                                                          │

00:00:19 #2430 [Verbose] > │             let v12 : int32 = v1.l0                                          │

00:00:19 #2431 [Verbose] > │             v3.l0 <- v12                                                     │

00:00:19 #2432 [Verbose] > │             ()                                                               │

00:00:19 #2433 [Verbose] > │         let v13 : int32 = v2.l0                                              │

00:00:19 #2434 [Verbose] > │         let v14 : int32 = v3.l0                                              │

00:00:19 #2435 [Verbose] > │         let v15 : bool = v13 >= v14                                          │

00:00:19 #2436 [Verbose] > │         let v18 : int32 =                                                    │

00:00:19 #2437 [Verbose] > │             if v15 then                                                      │

00:00:19 #2438 [Verbose] > │                 1                                                            │

00:00:19 #2439 [Verbose] > │             else                                                             │

00:00:19 #2440 [Verbose] > │                 let v16 : int32 = v2.l0                                      │

00:00:19 #2441 [Verbose] > │                 let v17 : int32 = v16 + 1                                    │

00:00:19 #2442 [Verbose] > │                 v17                                                          │

00:00:19 #2443 [Verbose] > │         v2.l0 <- v18                                                         │

00:00:19 #2444 [Verbose] > │         let v19 : int32 = v2.l0                                              │

00:00:19 #2445 [Verbose] > │         let v20 : int32 = v19 - 1                                            │

00:00:19 #2446 [Verbose] > │         v1.l0 <- v20                                                         │

00:00:19 #2447 [Verbose] > │         method6(v0, v1, v2, v3)                                              │

00:00:19 #2448 [Verbose] > │     | US1_1(v7) -> (* Some *)                                                │

00:00:19 #2449 [Verbose] > │         let v8 : int32 = v1.l0                                               │

00:00:19 #2450 [Verbose] > │         let v9 : int32 = v8 + 1                                              │

00:00:19 #2451 [Verbose] > │         v1.l0 <- v9                                                          │

00:00:19 #2452 [Verbose] > │         v7                                                                   │

00:00:19 #2453 [Verbose] > │ and closure7 (v0 : (unit -> UH0), v1 : Mut1, v2 : Mut1, v3 : Mut1) () :      │

00:00:19 #2454 [Verbose] > │ uint64 =                                                                     │

00:00:19 #2455 [Verbose] > │     method6(v0, v1, v2, v3)                                                  │

00:00:19 #2456 [Verbose] > │ and closure3 () (v0 : UH1) : (unit -> uint64) =                              │

00:00:19 #2457 [Verbose] > │     let v1 : UH1 = UH1_1                                                     │

00:00:19 #2458 [Verbose] > │     let v2 : UH1 = method2(v0, v1)                                           │

00:00:19 #2459 [Verbose] > │     let v3 : UH1 = method3(v0, v2)                                           │

00:00:19 #2460 [Verbose] > │     let v4 : UH0 = UH0_1                                                     │

00:00:19 #2461 [Verbose] > │     let v5 : UH0 = method4(v3, v4)                                           │

00:00:19 #2462 [Verbose] > │     let v6 : (unit -> UH0) = closure5(v5)                                    │

00:00:19 #2463 [Verbose] > │     let v7 : (unit -> UH0) = method5(v5, v6)                                 │

00:00:19 #2464 [Verbose] > │     let v8 : Mut1 = {l0 = 0} : Mut1                                          │

00:00:19 #2465 [Verbose] > │     let v9 : Mut1 = {l0 = 1} : Mut1                                          │

00:00:19 #2466 [Verbose] > │     let v10 : Mut1 = {l0 = -1} : Mut1                                        │

00:00:19 #2467 [Verbose] > │     closure7(v7, v8, v9, v10)                                                │

00:00:19 #2468 [Verbose] > │ and method8 (v0 : US2, v1 : uint64, v2 : int64, v3 : uint64) : int64 =       │

00:00:19 #2469 [Verbose] > │     let v4 : bool = v3 > 0UL                                                 │

00:00:19 #2470 [Verbose] > │     let v6 : bool =                                                          │

00:00:19 #2471 [Verbose] > │         if v4 then                                                           │

00:00:19 #2472 [Verbose] > │             let v5 : bool = v3 < v1                                          │

00:00:19 #2473 [Verbose] > │             v5                                                               │

00:00:19 #2474 [Verbose] > │         else                                                                 │

00:00:19 #2475 [Verbose] > │             false                                                            │

00:00:19 #2476 [Verbose] > │     if v6 then                                                               │

00:00:19 #2477 [Verbose] > │         let v7 : int64 = v2 + 1L                                             │

00:00:19 #2478 [Verbose] > │         let v8 : uint64 = v3 * 6UL                                           │

00:00:19 #2479 [Verbose] > │         method8(v0, v1, v7, v8)                                              │

00:00:19 #2480 [Verbose] > │     else                                                                     │

00:00:19 #2481 [Verbose] > │         let v10 : string = $"calculate_dice_count / max: {v1} / n: {v2} / p: │

00:00:19 #2482 [Verbose] > │ {v3}"                                                                        │

00:00:19 #2483 [Verbose] > │         match v0 with                                                        │

00:00:19 #2484 [Verbose] > │         | US2_0 -> (* None *)                                                │

00:00:19 #2485 [Verbose] > │             ()                                                               │

00:00:19 #2486 [Verbose] > │         | US2_1(v11) -> (* Some *)                                           │

00:00:19 #2487 [Verbose] > │             v11 v10                                                          │

00:00:19 #2488 [Verbose] > │         v2                                                                   │

00:00:19 #2489 [Verbose] > │ and closure75 () () : UH0 =                                                  │

00:00:19 #2490 [Verbose] > │     let v0 : (unit -> UH0) = closure75()                                     │

00:00:19 #2491 [Verbose] > │     UH0_0(0UL, v0)                                                           │

00:00:19 #2492 [Verbose] > │ and closure74 () () : UH0 =                                                  │

00:00:19 #2493 [Verbose] > │     let v0 : (unit -> UH0) = closure75()                                     │

00:00:19 #2494 [Verbose] > │     UH0_0(9223372036854775808UL, v0)                                         │

00:00:19 #2495 [Verbose] > │ and closure73 () () : UH0 =                                                  │

00:00:19 #2496 [Verbose] > │     let v0 : (unit -> UH0) = closure74()                                     │

00:00:19 #2497 [Verbose] > │     UH0_0(4611686018427387904UL, v0)                                         │

00:00:19 #2498 [Verbose] > │ and closure72 () () : UH0 =                                                  │

00:00:19 #2499 [Verbose] > │     let v0 : (unit -> UH0) = closure73()                                     │

00:00:19 #2500 [Verbose] > │     UH0_0(6917529027641081856UL, v0)                                         │

00:00:19 #2501 [Verbose] > │ and closure71 () () : UH0 =                                                  │

00:00:19 #2502 [Verbose] > │     let v0 : (unit -> UH0) = closure72()                                     │

00:00:19 #2503 [Verbose] > │     UH0_0(1152921504606846976UL, v0)                                         │

00:00:19 #2504 [Verbose] > │ and closure70 () () : UH0 =                                                  │

00:00:19 #2505 [Verbose] > │     let v0 : (unit -> UH0) = closure71()                                     │

00:00:19 #2506 [Verbose] > │     UH0_0(15564440312192434176UL, v0)                                        │

00:00:19 #2507 [Verbose] > │ and closure69 () () : UH0 =                                                  │

00:00:19 #2508 [Verbose] > │     let v0 : (unit -> UH0) = closure70()                                     │

00:00:19 #2509 [Verbose] > │     UH0_0(11817445422220181504UL, v0)                                        │

00:00:19 #2510 [Verbose] > │ and closure68 () () : UH0 =                                                  │

00:00:19 #2511 [Verbose] > │     let v0 : (unit -> UH0) = closure69()                                     │

00:00:19 #2512 [Verbose] > │     UH0_0(5044031582654955520UL, v0)                                         │

00:00:19 #2513 [Verbose] > │ and closure67 () () : UH0 =                                                  │

00:00:19 #2514 [Verbose] > │     let v0 : (unit -> UH0) = closure68()                                     │

00:00:19 #2515 [Verbose] > │     UH0_0(6989586621679009792UL, v0)                                         │

00:00:19 #2516 [Verbose] > │ and closure66 () () : UH0 =                                                  │

00:00:19 #2517 [Verbose] > │     let v0 : (unit -> UH0) = closure67()                                     │

00:00:19 #2518 [Verbose] > │     UH0_0(16537217831704461312UL, v0)                                        │

00:00:19 #2519 [Verbose] > │ and closure65 () () : UH0 =                                                  │

00:00:19 #2520 [Verbose] > │     let v0 : (unit -> UH0) = closure66()                                     │

00:00:19 #2521 [Verbose] > │     UH0_0(11979575008805519360UL, v0)                                        │

00:00:19 #2522 [Verbose] > │ and closure64 () () : UH0 =                                                  │

00:00:19 #2523 [Verbose] > │     let v0 : (unit -> UH0) = closure65()                                     │

00:00:19 #2524 [Verbose] > │     UH0_0(14294425217273954304UL, v0)                                        │

00:00:19 #2525 [Verbose] > │ and closure63 () () : UH0 =                                                  │

00:00:19 #2526 [Verbose] > │     let v0 : (unit -> UH0) = closure64()                                     │

00:00:19 #2527 [Verbose] > │     UH0_0(2382404202878992384UL, v0)                                         │

00:00:19 #2528 [Verbose] > │ and closure62 () () : UH0 =                                                  │

00:00:19 #2529 [Verbose] > │     let v0 : (unit -> UH0) = closure63()                                     │

00:00:19 #2530 [Verbose] > │     UH0_0(6545982058383015936UL, v0)                                         │

00:00:19 #2531 [Verbose] > │ and closure61 () () : UH0 =                                                  │

00:00:19 #2532 [Verbose] > │     let v0 : (unit -> UH0) = closure62()                                     │

00:00:19 #2533 [Verbose] > │     UH0_0(10314369046585278464UL, v0)                                        │

00:00:19 #2534 [Verbose] > │ and closure60 () () : UH0 =                                                  │

00:00:19 #2535 [Verbose] > │     let v0 : (unit -> UH0) = closure61()                                     │

00:00:19 #2536 [Verbose] > │     UH0_0(4793518853382471680UL, v0)                                         │

00:00:19 #2537 [Verbose] > │ and closure59 () () : UH0 =                                                  │

00:00:19 #2538 [Verbose] > │     let v0 : (unit -> UH0) = closure60()                                     │

00:00:19 #2539 [Verbose] > │     UH0_0(3873377154515337216UL, v0)                                         │

00:00:19 #2540 [Verbose] > │ and closure58 () () : UH0 =                                                  │

00:00:19 #2541 [Verbose] > │     let v0 : (unit -> UH0) = closure59()                                     │

00:00:19 #2542 [Verbose] > │     UH0_0(645562859085889536UL, v0)                                          │

00:00:19 #2543 [Verbose] > │ and closure57 () () : UH0 =                                                  │

00:00:19 #2544 [Verbose] > │     let v0 : (unit -> UH0) = closure58()                                     │

00:00:19 #2545 [Verbose] > │     UH0_0(107593809847648256UL, v0)                                          │

00:00:19 #2546 [Verbose] > │ and closure56 () () : UH0 =                                                  │

00:00:19 #2547 [Verbose] > │     let v0 : (unit -> UH0) = closure57()                                     │

00:00:19 #2548 [Verbose] > │     UH0_0(3092389647259533312UL, v0)                                         │

00:00:19 #2549 [Verbose] > │ and closure55 () () : UH0 =                                                  │

00:00:19 #2550 [Verbose] > │     let v0 : (unit -> UH0) = closure56()                                     │

00:00:19 #2551 [Verbose] > │     UH0_0(9738770311398031360UL, v0)                                         │

00:00:19 #2552 [Verbose] > │ and closure54 () () : UH0 =                                                  │

00:00:19 #2553 [Verbose] > │     let v0 : (unit -> UH0) = closure55()                                     │

00:00:19 #2554 [Verbose] > │     UH0_0(16995415113324298240UL, v0)                                        │

00:00:19 #2555 [Verbose] > │ and closure53 () () : UH0 =                                                  │

00:00:19 #2556 [Verbose] > │     let v0 : (unit -> UH0) = closure54()                                     │

00:00:19 #2557 [Verbose] > │     UH0_0(8981483876790566912UL, v0)                                         │

00:00:19 #2558 [Verbose] > │ and closure52 () () : UH0 =                                                  │

00:00:19 #2559 [Verbose] > │     let v0 : (unit -> UH0) = closure53()                                     │

00:00:19 #2560 [Verbose] > │     UH0_0(13794743361938128896UL, v0)                                        │

00:00:19 #2561 [Verbose] > │ and closure51 () () : UH0 =                                                  │

00:00:19 #2562 [Verbose] > │     let v0 : (unit -> UH0) = closure52()                                     │

00:00:19 #2563 [Verbose] > │     UH0_0(2299123893656354816UL, v0)                                         │

00:00:19 #2564 [Verbose] > │ and closure50 () () : UH0 =                                                  │

00:00:19 #2565 [Verbose] > │     let v0 : (unit -> UH0) = closure51()                                     │

00:00:19 #2566 [Verbose] > │     UH0_0(3457644661227651072UL, v0)                                         │

00:00:19 #2567 [Verbose] > │ and closure49 () () : UH0 =                                                  │

00:00:19 #2568 [Verbose] > │     let v0 : (unit -> UH0) = closure50()                                     │

00:00:19 #2569 [Verbose] > │     UH0_0(576274110204608512UL, v0)                                          │

00:00:19 #2570 [Verbose] > │ and closure48 () () : UH0 =                                                  │

00:00:19 #2571 [Verbose] > │     let v0 : (unit -> UH0) = closure49()                                     │

00:00:19 #2572 [Verbose] > │     UH0_0(6244960376270618624UL, v0)                                         │

00:00:19 #2573 [Verbose] > │ and closure47 () () : UH0 =                                                  │

00:00:19 #2574 [Verbose] > │     let v0 : (unit -> UH0) = closure48()                                     │

00:00:19 #2575 [Verbose] > │     UH0_0(13338656111851470848UL, v0)                                        │

00:00:19 #2576 [Verbose] > │ and closure46 () () : UH0 =                                                  │

00:00:19 #2577 [Verbose] > │     let v0 : (unit -> UH0) = closure47()                                     │

00:00:19 #2578 [Verbose] > │     UH0_0(14520938734448279552UL, v0)                                        │

00:00:19 #2579 [Verbose] > │ and closure45 () () : UH0 =                                                  │

00:00:19 #2580 [Verbose] > │     let v0 : (unit -> UH0) = closure46()                                     │

00:00:19 #2581 [Verbose] > │     UH0_0(14717985838214414336UL, v0)                                        │

00:00:19 #2582 [Verbose] > │ and closure44 () () : UH0 =                                                  │

00:00:19 #2583 [Verbose] > │     let v0 : (unit -> UH0) = closure45()                                     │

00:00:19 #2584 [Verbose] > │     UH0_0(5527454985320660992UL, v0)                                         │

00:00:19 #2585 [Verbose] > │ and closure43 () () : UH0 =                                                  │

00:00:19 #2586 [Verbose] > │     let v0 : (unit -> UH0) = closure44()                                     │

00:00:19 #2587 [Verbose] > │     UH0_0(16293529225644736512UL, v0)                                        │

00:00:19 #2588 [Verbose] > │ and closure42 () () : UH0 =                                                  │

00:00:19 #2589 [Verbose] > │     let v0 : (unit -> UH0) = closure43()                                     │

00:00:19 #2590 [Verbose] > │     UH0_0(11938960241128898560UL, v0)                                        │

00:00:19 #2591 [Verbose] > │ and closure41 () () : UH0 =                                                  │

00:00:19 #2592 [Verbose] > │     let v0 : (unit -> UH0) = closure42()                                     │

00:00:19 #2593 [Verbose] > │     UH0_0(8138741398091333632UL, v0)                                         │

00:00:19 #2594 [Verbose] > │ and closure40 () () : UH0 =                                                  │

00:00:19 #2595 [Verbose] > │     let v0 : (unit -> UH0) = closure41()                                     │

00:00:19 #2596 [Verbose] > │     UH0_0(7505371590918406144UL, v0)                                         │

00:00:19 #2597 [Verbose] > │ and closure39 () () : UH0 =                                                  │

00:00:19 #2598 [Verbose] > │     let v0 : (unit -> UH0) = closure40()                                     │

00:00:19 #2599 [Verbose] > │     UH0_0(16623181993244360704UL, v0)                                        │

00:00:19 #2600 [Verbose] > │ and closure38 () () : UH0 =                                                  │

00:00:19 #2601 [Verbose] > │     let v0 : (unit -> UH0) = closure39()                                     │

00:00:19 #2602 [Verbose] > │     UH0_0(8919445023443910656UL, v0)                                         │

00:00:19 #2603 [Verbose] > │ and closure37 () () : UH0 =                                                  │

00:00:19 #2604 [Verbose] > │     let v0 : (unit -> UH0) = closure38()                                     │

00:00:19 #2605 [Verbose] > │     UH0_0(4561031516192243712UL, v0)                                         │

00:00:19 #2606 [Verbose] > │ and closure36 () () : UH0 =                                                  │

00:00:19 #2607 [Verbose] > │     let v0 : (unit -> UH0) = closure37()                                     │

00:00:19 #2608 [Verbose] > │     UH0_0(9983543956220149760UL, v0)                                         │

00:00:19 #2609 [Verbose] > │ and closure35 () () : UH0 =                                                  │

00:00:19 #2610 [Verbose] > │     let v0 : (unit -> UH0) = closure36()                                     │

00:00:19 #2611 [Verbose] > │     UH0_0(4738381338321616896UL, v0)                                         │

00:00:19 #2612 [Verbose] > │ and closure34 () () : UH0 =                                                  │

00:00:19 #2613 [Verbose] > │     let v0 : (unit -> UH0) = closure35()                                     │

00:00:19 #2614 [Verbose] > │     UH0_0(789730223053602816UL, v0)                                          │

00:00:19 #2615 [Verbose] > │ and closure33 () () : UH0 =                                                  │

00:00:19 #2616 [Verbose] > │     let v0 : (unit -> UH0) = closure34()                                     │

00:00:19 #2617 [Verbose] > │     UH0_0(131621703842267136UL, v0)                                          │

00:00:19 #2618 [Verbose] > │ and closure32 () () : UH0 =                                                  │

00:00:19 #2619 [Verbose] > │     let v0 : (unit -> UH0) = closure33()                                     │

00:00:19 #2620 [Verbose] > │     UH0_0(21936950640377856UL, v0)                                           │

00:00:19 #2621 [Verbose] > │ and closure31 () () : UH0 =                                                  │

00:00:19 #2622 [Verbose] > │     let v0 : (unit -> UH0) = closure32()                                     │

00:00:19 #2623 [Verbose] > │     UH0_0(3656158440062976UL, v0)                                            │

00:00:19 #2624 [Verbose] > │ and closure30 () () : UH0 =                                                  │

00:00:19 #2625 [Verbose] > │     let v0 : (unit -> UH0) = closure31()                                     │

00:00:19 #2626 [Verbose] > │     UH0_0(609359740010496UL, v0)                                             │

00:00:19 #2627 [Verbose] > │ and closure29 () () : UH0 =                                                  │

00:00:19 #2628 [Verbose] > │     let v0 : (unit -> UH0) = closure30()                                     │

00:00:19 #2629 [Verbose] > │     UH0_0(101559956668416UL, v0)                                             │

00:00:19 #2630 [Verbose] > │ and closure28 () () : UH0 =                                                  │

00:00:19 #2631 [Verbose] > │     let v0 : (unit -> UH0) = closure29()                                     │

00:00:19 #2632 [Verbose] > │     UH0_0(16926659444736UL, v0)                                              │

00:00:19 #2633 [Verbose] > │ and closure27 () () : UH0 =                                                  │

00:00:19 #2634 [Verbose] > │     let v0 : (unit -> UH0) = closure28()                                     │

00:00:19 #2635 [Verbose] > │     UH0_0(2821109907456UL, v0)                                               │

00:00:19 #2636 [Verbose] > │ and closure26 () () : UH0 =                                                  │

00:00:19 #2637 [Verbose] > │     let v0 : (unit -> UH0) = closure27()                                     │

00:00:19 #2638 [Verbose] > │     UH0_0(470184984576UL, v0)                                                │

00:00:19 #2639 [Verbose] > │ and closure25 () () : UH0 =                                                  │

00:00:19 #2640 [Verbose] > │     let v0 : (unit -> UH0) = closure26()                                     │

00:00:19 #2641 [Verbose] > │     UH0_0(78364164096UL, v0)                                                 │

00:00:19 #2642 [Verbose] > │ and closure24 () () : UH0 =                                                  │

00:00:19 #2643 [Verbose] > │     let v0 : (unit -> UH0) = closure25()                                     │

00:00:19 #2644 [Verbose] > │     UH0_0(13060694016UL, v0)                                                 │

00:00:19 #2645 [Verbose] > │ and closure23 () () : UH0 =                                                  │

00:00:19 #2646 [Verbose] > │     let v0 : (unit -> UH0) = closure24()                                     │

00:00:19 #2647 [Verbose] > │     UH0_0(2176782336UL, v0)                                                  │

00:00:19 #2648 [Verbose] > │ and closure22 () () : UH0 =                                                  │

00:00:19 #2649 [Verbose] > │     let v0 : (unit -> UH0) = closure23()                                     │

00:00:19 #2650 [Verbose] > │     UH0_0(362797056UL, v0)                                                   │

00:00:19 #2651 [Verbose] > │ and closure21 () () : UH0 =                                                  │

00:00:19 #2652 [Verbose] > │     let v0 : (unit -> UH0) = closure22()                                     │

00:00:19 #2653 [Verbose] > │     UH0_0(60466176UL, v0)                                                    │

00:00:19 #2654 [Verbose] > │ and closure20 () () : UH0 =                                                  │

00:00:19 #2655 [Verbose] > │     let v0 : (unit -> UH0) = closure21()                                     │

00:00:19 #2656 [Verbose] > │     UH0_0(10077696UL, v0)                                                    │

00:00:19 #2657 [Verbose] > │ and closure19 () () : UH0 =                                                  │

00:00:19 #2658 [Verbose] > │     let v0 : (unit -> UH0) = closure20()                                     │

00:00:19 #2659 [Verbose] > │     UH0_0(1679616UL, v0)                                                     │

00:00:19 #2660 [Verbose] > │ and closure18 () () : UH0 =                                                  │

00:00:19 #2661 [Verbose] > │     let v0 : (unit -> UH0) = closure19()                                     │

00:00:19 #2662 [Verbose] > │     UH0_0(279936UL, v0)                                                      │

00:00:19 #2663 [Verbose] > │ and closure17 () () : UH0 =                                                  │

00:00:19 #2664 [Verbose] > │     let v0 : (unit -> UH0) = closure18()                                     │

00:00:19 #2665 [Verbose] > │     UH0_0(46656UL, v0)                                                       │

00:00:19 #2666 [Verbose] > │ and closure16 () () : UH0 =                                                  │

00:00:19 #2667 [Verbose] > │     let v0 : (unit -> UH0) = closure17()                                     │

00:00:19 #2668 [Verbose] > │     UH0_0(7776UL, v0)                                                        │

00:00:19 #2669 [Verbose] > │ and closure15 () () : UH0 =                                                  │

00:00:19 #2670 [Verbose] > │     let v0 : (unit -> UH0) = closure16()                                     │

00:00:19 #2671 [Verbose] > │     UH0_0(1296UL, v0)                                                        │

00:00:19 #2672 [Verbose] > │ and closure14 () () : UH0 =                                                  │

00:00:19 #2673 [Verbose] > │     let v0 : (unit -> UH0) = closure15()                                     │

00:00:19 #2674 [Verbose] > │     UH0_0(216UL, v0)                                                         │

00:00:19 #2675 [Verbose] > │ and closure13 () () : UH0 =                                                  │

00:00:19 #2676 [Verbose] > │     let v0 : (unit -> UH0) = closure14()                                     │

00:00:19 #2677 [Verbose] > │     UH0_0(36UL, v0)                                                          │

00:00:19 #2678 [Verbose] > │ and closure12 () () : UH0 =                                                  │

00:00:19 #2679 [Verbose] > │     let v0 : (unit -> UH0) = closure13()                                     │

00:00:19 #2680 [Verbose] > │     UH0_0(6UL, v0)                                                           │

00:00:19 #2681 [Verbose] > │ and method11 (v0 : int64, v1 : UH0) : US1 =                                  │

00:00:19 #2682 [Verbose] > │     match v1 with                                                            │

00:00:19 #2683 [Verbose] > │     | UH0_0(v2, v3) -> (* StreamCons *)                                      │

00:00:19 #2684 [Verbose] > │         let v4 : bool = v0 <= 0L                                             │

00:00:19 #2685 [Verbose] > │         if v4 then                                                           │

00:00:19 #2686 [Verbose] > │             US1_1(v2)                                                        │

00:00:19 #2687 [Verbose] > │         else                                                                 │

00:00:19 #2688 [Verbose] > │             let v6 : int64 = v0 - 1L                                         │

00:00:19 #2689 [Verbose] > │             let v7 : UH0 = v3 ()                                             │

00:00:19 #2690 [Verbose] > │             method11(v6, v7)                                                 │

00:00:19 #2691 [Verbose] > │     | UH0_1 -> (* StreamNil *)                                               │

00:00:19 #2692 [Verbose] > │         US1_0                                                                │

00:00:19 #2693 [Verbose] > │ and method10 (v0 : US2, v1 : int64, v2 : UH1, v3 : uint64) : US3 =           │

00:00:19 #2694 [Verbose] > │     let v4 : bool = v1 < 0L                                                  │

00:00:19 #2695 [Verbose] > │     if v4 then                                                               │

00:00:19 #2696 [Verbose] > │         let v5 : string = $"accumulate_dice_rolls / power: {v1} / acc: {v3}" │

00:00:19 #2697 [Verbose] > │         match v0 with                                                        │

00:00:19 #2698 [Verbose] > │         | US2_0 -> (* None *)                                                │

00:00:19 #2699 [Verbose] > │             ()                                                               │

00:00:19 #2700 [Verbose] > │         | US2_1(v6) -> (* Some *)                                            │

00:00:19 #2701 [Verbose] > │             v6 v5                                                            │

00:00:19 #2702 [Verbose] > │         let v7 : uint64 = v3 + 1UL                                           │

00:00:19 #2703 [Verbose] > │         US3_1(v7, v2)                                                        │

00:00:19 #2704 [Verbose] > │     else                                                                     │

00:00:19 #2705 [Verbose] > │         match v2 with                                                        │

00:00:19 #2706 [Verbose] > │         | UH1_0(v10, v11) -> (* Cons *)                                      │

00:00:19 #2707 [Verbose] > │             let v12 : bool = v10 > 1UL                                       │

00:00:19 #2708 [Verbose] > │             if v12 then                                                      │

00:00:19 #2709 [Verbose] > │                 let v13 : uint64 = 1UL                                       │

00:00:19 #2710 [Verbose] > │                 let v14 : (unit -> UH0) = closure12()                        │

00:00:19 #2711 [Verbose] > │                 let v15 : UH0 = UH0_0(v13, v14)                              │

00:00:19 #2712 [Verbose] > │                 let v16 : US1 = method11(v1, v15)                            │

00:00:19 #2713 [Verbose] > │                 let v20 : uint64 =                                           │

00:00:19 #2714 [Verbose] > │                     match v16 with                                           │

00:00:19 #2715 [Verbose] > │                     | US1_0 -> (* None *)                                    │

00:00:19 #2716 [Verbose] > │                         failwith<uint64> "Option does not have a value."     │

00:00:19 #2717 [Verbose] > │                     | US1_1(v17) -> (* Some *)                               │

00:00:19 #2718 [Verbose] > │                         v17                                                  │

00:00:19 #2719 [Verbose] > │                 let v21 : uint64 = v10 - 1UL                                 │

00:00:19 #2720 [Verbose] > │                 let v22 : uint64 = v21 * v20                                 │

00:00:19 #2721 [Verbose] > │                 let v23 : string = $"accumulate_dice_rolls / power: {v1} /   │

00:00:19 #2722 [Verbose] > │ acc: {v3} / roll: {v10} / value: {v22}"                                      │

00:00:19 #2723 [Verbose] > │                 match v0 with                                                │

00:00:19 #2724 [Verbose] > │                 | US2_0 -> (* None *)                                        │

00:00:19 #2725 [Verbose] > │                     ()                                                       │

00:00:19 #2726 [Verbose] > │                 | US2_1(v24) -> (* Some *)                                   │

00:00:19 #2727 [Verbose] > │                     v24 v23                                                  │

00:00:19 #2728 [Verbose] > │                 let v25 : uint64 = v3 + v22                                  │

00:00:19 #2729 [Verbose] > │                 let v26 : int64 = v1 - 1L                                    │

00:00:19 #2730 [Verbose] > │                 method10(v0, v26, v11, v25)                                  │

00:00:19 #2731 [Verbose] > │             else                                                             │

00:00:19 #2732 [Verbose] > │                 let v28 : string = $"accumulate_dice_rolls / power: {v1} /   │

00:00:19 #2733 [Verbose] > │ acc: {v3} / roll: {v10}"                                                     │

00:00:19 #2734 [Verbose] > │                 match v0 with                                                │

00:00:19 #2735 [Verbose] > │                 | US2_0 -> (* None *)                                        │

00:00:19 #2736 [Verbose] > │                     ()                                                       │

00:00:19 #2737 [Verbose] > │                 | US2_1(v29) -> (* Some *)                                   │

00:00:19 #2738 [Verbose] > │                     v29 v28                                                  │

00:00:19 #2739 [Verbose] > │                 let v30 : int64 = v1 - 1L                                    │

00:00:19 #2740 [Verbose] > │                 method10(v0, v30, v11, v3)                                   │

00:00:19 #2741 [Verbose] > │         | UH1_1 -> (* Nil *)                                                 │

00:00:19 #2742 [Verbose] > │             US3_0                                                            │

00:00:19 #2743 [Verbose] > │ and method12 (v0 : int64, v1 : (unit -> uint64), v2 : int64) : UH1 =         │

00:00:19 #2744 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:19 #2745 [Verbose] > │     if v3 then                                                               │

00:00:19 #2746 [Verbose] > │         let v4 : uint64 = v1 ()                                              │

00:00:19 #2747 [Verbose] > │         let v5 : int64 = v2 + 1L                                             │

00:00:19 #2748 [Verbose] > │         let v6 : UH1 = method12(v0, v1, v5)                                  │

00:00:19 #2749 [Verbose] > │         UH1_0(v4, v6)                                                        │

00:00:19 #2750 [Verbose] > │     else                                                                     │

00:00:19 #2751 [Verbose] > │         UH1_1                                                                │

00:00:19 #2752 [Verbose] > │ and method13 (v0 : US2, v1 : (unit -> uint64), v2 : bool, v3 : uint64, v4 :  │

00:00:19 #2753 [Verbose] > │ int64, v5 : UH1) : uint64 =                                                  │

00:00:19 #2754 [Verbose] > │     let v6 : int64 = v4 + 1L                                                 │

00:00:19 #2755 [Verbose] > │     let v7 : bool = v4 < v6                                                  │

00:00:19 #2756 [Verbose] > │     if v7 then                                                               │

00:00:19 #2757 [Verbose] > │         let v8 : uint64 = v1 ()                                              │

00:00:19 #2758 [Verbose] > │         let v9 : UH1 = UH1_0(v8, v5)                                         │

00:00:19 #2759 [Verbose] > │         method9(v0, v1, v2, v3, v4, v9, v6)                                  │

00:00:19 #2760 [Verbose] > │     else                                                                     │

00:00:19 #2761 [Verbose] > │         let v11 : uint64 = 0UL                                               │

00:00:19 #2762 [Verbose] > │         let v12 : US3 = method10(v0, v4, v5, v11)                            │

00:00:19 #2763 [Verbose] > │         match v12 with                                                       │

00:00:19 #2764 [Verbose] > │         | US3_1(v13, v14) -> (* Some *)                                      │

00:00:19 #2765 [Verbose] > │             let v15 : bool = v13 <= v3                                       │

00:00:19 #2766 [Verbose] > │             if v15 then                                                      │

00:00:19 #2767 [Verbose] > │                 v13                                                          │

00:00:19 #2768 [Verbose] > │             else                                                             │

00:00:19 #2769 [Verbose] > │                 if v2 then                                                   │

00:00:19 #2770 [Verbose] > │                     let v16 : int64 = 0L                                     │

00:00:19 #2771 [Verbose] > │                     let v17 : UH1 = method12(v4, v1, v16)                    │

00:00:19 #2772 [Verbose] > │                     method13(v0, v1, v2, v3, v4, v17)                        │

00:00:19 #2773 [Verbose] > │                 else                                                         │

00:00:19 #2774 [Verbose] > │                     let v19 : uint64 = v1 ()                                 │

00:00:19 #2775 [Verbose] > │                     let v20 : UH1 = UH1_0(v19, v5)                           │

00:00:19 #2776 [Verbose] > │                     method9(v0, v1, v2, v3, v4, v20, v6)                     │

00:00:19 #2777 [Verbose] > │         | _ ->                                                               │

00:00:19 #2778 [Verbose] > │             if v2 then                                                       │

00:00:19 #2779 [Verbose] > │                 let v24 : int64 = 0L                                         │

00:00:19 #2780 [Verbose] > │                 let v25 : UH1 = method12(v4, v1, v24)                        │

00:00:19 #2781 [Verbose] > │                 method13(v0, v1, v2, v3, v4, v25)                            │

00:00:19 #2782 [Verbose] > │             else                                                             │

00:00:19 #2783 [Verbose] > │                 let v27 : uint64 = v1 ()                                     │

00:00:19 #2784 [Verbose] > │                 let v28 : UH1 = UH1_0(v27, v5)                               │

00:00:19 #2785 [Verbose] > │                 method9(v0, v1, v2, v3, v4, v28, v6)                         │

00:00:19 #2786 [Verbose] > │ and method9 (v0 : US2, v1 : (unit -> uint64), v2 : bool, v3 : uint64, v4 :   │

00:00:19 #2787 [Verbose] > │ int64, v5 : UH1, v6 : int64) : uint64 =                                      │

00:00:19 #2788 [Verbose] > │     let v7 : int64 = v4 + 1L                                                 │

00:00:19 #2789 [Verbose] > │     let v8 : bool = v6 < v7                                                  │

00:00:19 #2790 [Verbose] > │     if v8 then                                                               │

00:00:19 #2791 [Verbose] > │         let v9 : uint64 = v1 ()                                              │

00:00:19 #2792 [Verbose] > │         let v10 : UH1 = UH1_0(v9, v5)                                        │

00:00:19 #2793 [Verbose] > │         let v11 : int64 = v6 + 1L                                            │

00:00:19 #2794 [Verbose] > │         method9(v0, v1, v2, v3, v4, v10, v11)                                │

00:00:19 #2795 [Verbose] > │     else                                                                     │

00:00:19 #2796 [Verbose] > │         let v13 : uint64 = 0UL                                               │

00:00:19 #2797 [Verbose] > │         let v14 : US3 = method10(v0, v4, v5, v13)                            │

00:00:19 #2798 [Verbose] > │         match v14 with                                                       │

00:00:19 #2799 [Verbose] > │         | US3_1(v15, v16) -> (* Some *)                                      │

00:00:19 #2800 [Verbose] > │             let v17 : bool = v15 <= v3                                       │

00:00:19 #2801 [Verbose] > │             if v17 then                                                      │

00:00:19 #2802 [Verbose] > │                 v15                                                          │

00:00:19 #2803 [Verbose] > │             else                                                             │

00:00:19 #2804 [Verbose] > │                 if v2 then                                                   │

00:00:19 #2805 [Verbose] > │                     let v18 : int64 = 0L                                     │

00:00:19 #2806 [Verbose] > │                     let v19 : UH1 = method12(v4, v1, v18)                    │

00:00:19 #2807 [Verbose] > │                     method13(v0, v1, v2, v3, v4, v19)                        │

00:00:19 #2808 [Verbose] > │                 else                                                         │

00:00:19 #2809 [Verbose] > │                     let v21 : uint64 = v1 ()                                 │

00:00:19 #2810 [Verbose] > │                     let v22 : UH1 = UH1_0(v21, v5)                           │

00:00:19 #2811 [Verbose] > │                     let v23 : int64 = v6 + 1L                                │

00:00:19 #2812 [Verbose] > │                     method9(v0, v1, v2, v3, v4, v22, v23)                    │

00:00:19 #2813 [Verbose] > │         | _ ->                                                               │

00:00:19 #2814 [Verbose] > │             if v2 then                                                       │

00:00:19 #2815 [Verbose] > │                 let v27 : int64 = 0L                                         │

00:00:19 #2816 [Verbose] > │                 let v28 : UH1 = method12(v4, v1, v27)                        │

00:00:19 #2817 [Verbose] > │                 method13(v0, v1, v2, v3, v4, v28)                            │

00:00:19 #2818 [Verbose] > │             else                                                             │

00:00:19 #2819 [Verbose] > │                 let v30 : uint64 = v1 ()                                     │

00:00:19 #2820 [Verbose] > │                 let v31 : UH1 = UH1_0(v30, v5)                               │

00:00:19 #2821 [Verbose] > │                 let v32 : int64 = v6 + 1L                                    │

00:00:19 #2822 [Verbose] > │                 method9(v0, v1, v2, v3, v4, v31, v32)                        │

00:00:19 #2823 [Verbose] > │ and closure11 (v0 : US2, v1 : (unit -> uint64), v2 : bool) (v3 : uint64) :   │

00:00:19 #2824 [Verbose] > │ uint64 =                                                                     │

00:00:19 #2825 [Verbose] > │     let v4 : bool = v3 = 1UL                                                 │

00:00:19 #2826 [Verbose] > │     let v8 : int64 =                                                         │

00:00:19 #2827 [Verbose] > │         if v4 then                                                           │

00:00:19 #2828 [Verbose] > │             1L                                                               │

00:00:19 #2829 [Verbose] > │         else                                                                 │

00:00:19 #2830 [Verbose] > │             let v5 : int64 = 0L                                              │

00:00:19 #2831 [Verbose] > │             let v6 : uint64 = 1UL                                            │

00:00:19 #2832 [Verbose] > │             method8(v0, v3, v5, v6)                                          │

00:00:19 #2833 [Verbose] > │     let v9 : int64 = v8 - 1L                                                 │

00:00:19 #2834 [Verbose] > │     let v10 : UH1 = UH1_1                                                    │

00:00:19 #2835 [Verbose] > │     let v11 : int64 = 0L                                                     │

00:00:19 #2836 [Verbose] > │     method9(v0, v1, v2, v3, v9, v10, v11)                                    │

00:00:19 #2837 [Verbose] > │ and closure10 (v0 : US2, v1 : (unit -> uint64)) (v2 : bool) : (uint64 ->     │

00:00:19 #2838 [Verbose] > │ uint64) =                                                                    │

00:00:19 #2839 [Verbose] > │     closure11(v0, v1, v2)                                                    │

00:00:19 #2840 [Verbose] > │ and closure9 (v0 : US2) (v1 : (unit -> uint64)) : (bool -> (uint64 ->        │

00:00:19 #2841 [Verbose] > │ uint64)) =                                                                   │

00:00:19 #2842 [Verbose] > │     closure10(v0, v1)                                                        │

00:00:19 #2843 [Verbose] > │ and closure8 () (v0 : US2) : ((unit -> uint64) -> (bool -> (uint64 ->        │

00:00:19 #2844 [Verbose] > │ uint64))) =                                                                  │

00:00:19 #2845 [Verbose] > │     closure9(v0)                                                             │

00:00:19 #2846 [Verbose] > │ and method14 (v0 : UH1, v1 : int64) : int64 =                                │

00:00:19 #2847 [Verbose] > │     match v0 with                                                            │

00:00:19 #2848 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:19 #2849 [Verbose] > │         let v4 : int64 = v1 + 1L                                             │

00:00:19 #2850 [Verbose] > │         method14(v3, v4)                                                     │

00:00:19 #2851 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:19 #2852 [Verbose] > │         v1                                                                   │

00:00:19 #2853 [Verbose] > │ and closure78 (v0 : US2, v1 : uint64) (v2 : UH1) : US1 =                     │

00:00:19 #2854 [Verbose] > │     let v3 : int64 = 0L                                                      │

00:00:19 #2855 [Verbose] > │     let v4 : int64 = method14(v2, v3)                                        │

00:00:19 #2856 [Verbose] > │     let v5 : int64 = v4 - 1L                                                 │

00:00:19 #2857 [Verbose] > │     let v6 : uint64 = 0UL                                                    │

00:00:19 #2858 [Verbose] > │     let v7 : US3 = method10(v0, v5, v2, v6)                                  │

00:00:19 #2859 [Verbose] > │     match v7 with                                                            │

00:00:19 #2860 [Verbose] > │     | US3_1(v8, v9) -> (* Some *)                                            │

00:00:19 #2861 [Verbose] > │         let v10 : bool = v8 >= 1UL                                           │

00:00:19 #2862 [Verbose] > │         let v12 : bool =                                                     │

00:00:19 #2863 [Verbose] > │             if v10 then                                                      │

00:00:19 #2864 [Verbose] > │                 let v11 : bool = v8 <= v1                                    │

00:00:19 #2865 [Verbose] > │                 v11                                                          │

00:00:19 #2866 [Verbose] > │             else                                                             │

00:00:19 #2867 [Verbose] > │                 false                                                        │

00:00:19 #2868 [Verbose] > │         if v12 then                                                          │

00:00:19 #2869 [Verbose] > │             US1_1(v8)                                                        │

00:00:19 #2870 [Verbose] > │         else                                                                 │

00:00:19 #2871 [Verbose] > │             US1_0                                                            │

00:00:19 #2872 [Verbose] > │     | _ ->                                                                   │

00:00:19 #2873 [Verbose] > │         US1_0                                                                │

00:00:19 #2874 [Verbose] > │ and closure77 (v0 : US2) (v1 : uint64) : (UH1 -> US1) =                      │

00:00:19 #2875 [Verbose] > │     closure78(v0, v1)                                                        │

00:00:19 #2876 [Verbose] > │ and closure76 () (v0 : US2) : (uint64 -> (UH1 -> US1)) =                     │

00:00:19 #2877 [Verbose] > │     closure77(v0)                                                            │

00:00:19 #2878 [Verbose] > │ and method0 () : unit =                                                      │

00:00:19 #2879 [Verbose] > │     let v0 : (uint64 -> (UH0 -> UH0)) = closure0()                           │

00:00:19 #2880 [Verbose] > │     let v1 : (UH1 -> (unit -> uint64)) = closure3()                          │

00:00:19 #2881 [Verbose] > │     let v2 : (US2 -> ((unit -> uint64) -> (bool -> (uint64 -> uint64)))) =   │

00:00:19 #2882 [Verbose] > │ closure8()                                                                   │

00:00:19 #2883 [Verbose] > │     let v3 : (US2 -> (uint64 -> (UH1 -> US1))) = closure76()                 │

00:00:19 #2884 [Verbose] > │     ()                                                                       │

00:00:19 #2885 [Verbose] > │ method0()                                                                    │

00:00:19 #2886 [Verbose] > │ let main _args = 0                                                           │

00:00:19 #2887 [Verbose] > │ ()                                                                           │

00:00:19 #2888 [Verbose] > │                                                                              │

00:00:19 #2889 [Verbose] > │                                                                              │

00:00:19 #2890 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:20 #2891 [Verbose] > [NbConvertApp] Converting notebook dice.dib.ipynb to html

00:00:20 #2892 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:00:20 #2893 [Verbose] >   validate(nb)

00:00:21 #2894 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:00:21 #2895 [Verbose] >   return _pygments_highlight(

00:00:21 #2896 [Verbose] > [NbConvertApp] Writing 421738 bytes to dice.dib.html

00:00:22 #2897 [Debug] executeAsync / exitCode: 0 / output.Length: 216875

00:00:22 #2898 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] writeDibCode / output: Spi / path: dice.dib

00:00:00 #2 [Debug] parseDibCode / output: Spi / file: dice.dib

00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@411-297> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\apps\dice

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: [] / typeErrorCount: 0

00:00:01 #11 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: [] / typeErrorCount: 0

00:00:01 #12 [Debug] sendJson / port: 13805 / json: {"FileOpen":{"spiText":"// // # dice (Polyglot)\n\n// // ## sixth_power_sequence\n\ninl sixth_power_sequence () =\n    stream.iterate ((*) 6) 1\n\n// // ## accumulate_dice_rolls\n\ninl accumulate_dice_rolls (log : option (string -\u003E ())) rolls power acc =\n    inl rec body acc power rolls =\n        match rolls with\n        | _ when power \u003C 0 =\u003E\n            log |\u003E optionm\u0027.iter ((|\u003E) $\u0022$\\\u0022accumulate_dice_rolls / power: {!power} / acc: {!acc}\\\u0022\u0022)\n            Some (acc \u002B 1, rolls)\n        | [] =\u003E None\n        | roll :: rest when roll \u003E 1 =\u003E\n            inl coeff = sixth_power_sequence () |\u003E stream.item power\n            inl value = (roll - 1) * coeff\n            log |\u003E optionm\u0027.iter ((|\u003E) $\u0022$\\\u0022accumulate_dice_rolls / power: {!power} / acc: {!acc} / roll: {!roll} / value: {!value}\\\u0022\u0022\n            )\n            loop (acc \u002B value) (power - 1) rest\n        | roll :: rest =\u003E\n            log |\u003E optionm\u0027.iter ((|\u003E) $\u0022$\\\u0022accumulate_dice_rolls / power: {!power} / acc: {!acc} / roll: {!roll}\\\u0022\u0022)\n            loop acc (power - 1) rest\n    and inl loop acc power rolls =\n        if var_is rolls |\u003E not\n        then body acc power rolls\n        else\n            inl acc = dyn acc\n            join body acc power rolls\n    loop acc power rolls\n\n// // ## roll_within_bounds\n\ninl roll_within_bounds (log : option (string -\u003E ())) max rolls =\n    inl power = listm.length rolls - 1i64\n    match accumulate_dice_rolls log rolls power 0 with\n    | Some (result, _) when result \u003E= 1 \u0026\u0026 result \u003C= max =\u003E Some result\n    | _ =\u003E None\n\n// // ## calculate_dice_count\n\ninl calculate_dice_count (log : option (string -\u003E ())) max =\n    inl rec body n p =\n        if p \u003E 0 \u0026\u0026 p \u003C max\n        then loop (n \u002B 1) (p * 6)\n        else\n            log |\u003E optionm\u0027.iter ((|\u003E) $\u0022$\\\u0022calculate_dice_count / max: {!max} / n: {!n} / p: {!p}\\\u0022\u0022)\n            n\n    and inl loop n p =\n        if var_is max |\u003E not\n        then body n p\n        else\n            inl n = dyn n\n            inl p = dyn p\n            join body n p\n    if max = 1\n    then 1\n    else loop 0 1\n\n// // ## roll_dice\n\ninl roll_dice () : i32 =\n    $\u0022System.Random().Next (1, 7)\u0022\n\n// // ## rotate_number\n\ninl rotate_number max n =\n    (n - 1 \u002B max) % max \u002B 1\n\n// // ## rotate_numbers\n\ninl rotate_numbers max items =\n    items |\u003E stream.map (rotate_number max)\n\n// // ## create_sequential_roller\n\ninl create_sequential_roller list =\n    inl s = list |\u003E listm.rev |\u003E listm.append list |\u003E stream.from_list |\u003E stream.memoize\n    inl current_index = mut 0i32\n    inl acc = mut 1\n    inl len = mut -1\n    let rec loop () =\n        match s () |\u003E stream.try_item *current_index with\n        | Some item =\u003E\n            current_index \u003C- *current_index \u002B 1\n            item\n        | None =\u003E\n            if *len = -1\n            then len \u003C- *current_index\n            acc \u003C-\n                if *acc \u003E= *len\n                then 1\n                else *acc \u002B 1\n            current_index \u003C- *acc - 1\n            loop ()\n    loop\n\n// // ## roll_progressively\n\ninl roll_progressively (log : option (string -\u003E ())) roll reroll max =\n    inl power = (calculate_dice_count log max) - 1i64\n    let rec loop rolls size =\n        if size \u003C power \u002B 1\n        then loop (roll () :: rolls) (size \u002B 1)\n        else accumulate_dice_rolls log rolls power 0 |\u003E function\n            | Some (result, _) when result \u003C= max =\u003E result\n            | _ when reroll =\u003E loop (listm.init power (fun _ =\u003E roll ())) power\n            | _ =\u003E loop (roll () :: rolls) (size \u002B 1)\n    loop [] 0\n\n// // ## main\n\ninl main () =\n    let main () =\n        inl rotate_numbers\u0027 : u64 -\u003E stream.stream u64 -\u003E stream.stream u64 = rotate_numbers\n        inl create_sequential_roller\u0027 : (list u64 -\u003E () -\u003E u64) = create_sequential_roller\n        inl roll_progressively\u0027 : (option (string -\u003E ()) -\u003E (() -\u003E u64) -\u003E bool -\u003E u64 -\u003E u64) = roll_progressively\n        inl roll_within_bounds\u0027 : option (string -\u003E ()) -\u003E u64 -\u003E list u64 -\u003E option u64 = roll_within_bounds\n\n        (rotate_numbers\u0027, create_sequential_roller\u0027, roll_progressively\u0027, roll_within_bounds\u0027)\n        |\u003E dyn\n        |\u003E ignore\n    main ()\n    $\u0022let main _args = 0\u0022 : ()\n","uri":"file:///C:\\home\\git\\polyglot\\apps\\dice\\dice.spi"}} / result.Length:

00:00:01 #13 [Debug] sendJson / port: 13805 / json: {"BuildFile":{"backend":"Fsharp","uri":"file:///C:\\home\\git\\polyglot\\apps\\dice\\dice.spi"}} / result.Length:

00:00:01 #14 [Verbose] > Building C:\home\git\polyglot\apps\dice\dice.spi

00:00:02 #15 [Debug] buildFile / takeWhileInclusive / fsxContent:  / errors: [] / typeErrorCount: 0

00:00:02 #16 [Debug] buildFile / takeWhileInclusive / fsxContent: Some(type UH0 =

    | UH0_0 of uint64 * (unit -> UH0)

    | UH0_1

and UH1 =

    | UH1_0 of uint64 * UH1

    | UH1_1

and [<Struct>] US0 =

    | US0_0 of f0_0 : UH0

    | US0_1 of f1_0 : (unit -> UH0)

and Mut0 = {mutable l0 : US0}

and Mut1 = {mutable l0 : int32}

and [<Struct>] US1 =

    | US1_0

    | US1_1 of f1_0 : uint64

and [<Struct>] US2 =

    | US2_0

    | US2_1 of f1_0 : (string -> unit)

and [<Struct>] US3 =

    | US3_0

    | US3_1 of f1_0 : uint64 * f1_1 : UH1

let rec closure2 (v0 : UH0) () : UH0 =

    v0

and method1 (v0 : uint64, v1 : UH0, v2 : UH0) : UH0 =

    match v1 with

    | UH0_0(v3, v4) -> (* StreamCons *)

        let v5 : UH0 = v4 ()

        let v6 : UH0 = method1(v0, v5, v2)

        let v7 : uint64 = v3 - 1UL

        let v8 : uint64 = v7 + v0

        let v9 : uint64 = v8 % v0

        let v10 : uint64 = v9 + 1UL

        let v11 : (unit -> UH0) = closure2(v6)

        UH0_0(v10, v11)

    | UH0_1 -> (* StreamNil *)

        v2

and closure1 (v0 : uint64) (v1 : UH0) : UH0 =

    let v2 : UH0 = UH0_1

    method1(v0, v1, v2)

and closure0 () (v0 : uint64) : (UH0 -> UH0) =

    closure1(v0)

and method2 (v0 : UH1, v1 : UH1) : UH1 =

    match v0 with

    | UH1_0(v2, v3) -> (* Cons *)

        let v4 : UH1 = UH1_0(v2, v1)

        method2(v3, v4)

    | UH1_1 -> (* Nil *)

        v1

and method3 (v0 : UH1, v1 : UH1) : UH1 =

    match v0 with

    | UH1_0(v2, v3) -> (* Cons *)

        let v4 : UH1 = method3(v3, v1)

        UH1_0(v2, v4)

    | UH1_1 -> (* Nil *)

        v1

and closure4 (v0 : UH0) () : UH0 =

    v0

and method4 (v0 : UH1, v1 : UH0) : UH0 =

    match v0 with

    | UH1_0(v2, v3) -> (* Cons *)

        let v4 : UH0 = method4(v3, v1)

        let v5 : (unit -> UH0) = closure4(v4)

        UH0_0(v2, v5)

    | UH1_1 -> (* Nil *)

        v1

and closure5 (v0 : UH0) () : UH0 =

    v0

and closure6 (v0 : UH0, v1 : Mut0) () : UH0 =

    let v2 : US0 = v1.l0

    match v2 with

    | US0_0(v3) -> (* Computed *)

        v3

    | US0_1(v4) -> (* NotComputed *)

        let v5 : UH0 = v4 ()

        let v12 : UH0 =

            match v5 with

            | UH0_0(v7, v8) -> (* StreamCons *)

                let v9 : (unit -> UH0) = method5(v0, v8)

                UH0_0(v7, v9)

            | UH0_1 -> (* StreamNil *)

                UH0_1

        let v13 : US0 = US0_0(v12)

        v1.l0 <- v13

        v12

and method5 (v0 : UH0, v1 : (unit -> UH0)) : (unit -> UH0) =

    let v2 : US0 = US0_1(v1)

    let v3 : Mut0 = {l0 = v2} : Mut0

    closure6(v0, v3)

and method7 (v0 : int32, v1 : UH0) : US1 =

    match v1 with

    | UH0_0(v2, v3) -> (* StreamCons *)

        let v4 : bool = v0 <= 0

        if v4 then

            US1_1(v2)

        else

            let v6 : int32 = v0 - 1

            let v7 : UH0 = v3 ()

            method7(v6, v7)

    | UH0_1 -> (* StreamNil *)

        US1_0

and method6 (v0 : (unit -> UH0), v1 : Mut1, v2 : Mut1, v3 : Mut1) : uint64 =

    let v4 : UH0 = v0 ()

    let v5 : int32 = v1.l0

    let v6 : US1 = method7(v5, v4)

    match v6 with

    | US1_0 -> (* None *)

        let v10 : int32 = v3.l0

        let v11 : bool = v10 = -1

        if v11 then

            let v12 : int32 = v1.l0

            v3.l0 <- v12

            ()

        let v13 : int32 = v2.l0

        let v14 : int32 = v3.l0

        let v15 : bool = v13 >= v14

        let v18 : int32 =

            if v15 then

                1

            else

                let v16 : int32 = v2.l0

                let v17 : int32 = v16 + 1

                v17

        v2.l0 <- v18

        let v19 : int32 = v2.l0

        let v20 : int32 = v19 - 1

        v1.l0 <- v20

        method6(v0, v1, v2, v3)

    | US1_1(v7) -> (* Some *)

        let v8 : int32 = v1.l0

        let v9 : int32 = v8 + 1

        v1.l0 <- v9

        v7

and closure7 (v0 : (unit -> UH0), v1 : Mut1, v2 : Mut1, v3 : Mut1) () : uint64 =

    method6(v0, v1, v2, v3)

and closure3 () (v0 : UH1) : (unit -> uint64) =

    let v1 : UH1 = UH1_1

    let v2 : UH1 = method2(v0, v1)

    let v3 : UH1 = method3(v0, v2)

    let v4 : UH0 = UH0_1

    let v5 : UH0 = method4(v3, v4)

    let v6 : (unit -> UH0) = closure5(v5)

    let v7 : (unit -> UH0) = method5(v5, v6)

    let v8 : Mut1 = {l0 = 0} : Mut1

    let v9 : Mut1 = {l0 = 1} : Mut1

    let v10 : Mut1 = {l0 = -1} : Mut1

    closure7(v7, v8, v9, v10)

and method8 (v0 : US2, v1 : uint64, v2 : int64, v3 : uint64) : int64 =

    let v4 : bool = v3 > 0UL

    let v6 : bool =

        if v4 then

            let v5 : bool = v3 < v1

            v5

        else

            false

    if v6 then

        let v7 : int64 = v2 + 1L

        let v8 : uint64 = v3 * 6UL

        method8(v0, v1, v7, v8)

    else

        let v10 : string = $"calculate_dice_count / max: {v1} / n: {v2} / p: {v3}"

        match v0 with

        | US2_0 -> (* None *)

            ()

        | US2_1(v11) -> (* Some *)

            v11 v10

        v2

and closure75 () () : UH0 =

    let v0 : (unit -> UH0) = closure75()

    UH0_0(0UL, v0)

and closure74 () () : UH0 =

    let v0 : (unit -> UH0) = closure75()

    UH0_0(9223372036854775808UL, v0)

and closure73 () () : UH0 =

    let v0 : (unit -> UH0) = closure74()

    UH0_0(4611686018427387904UL, v0)

and closure72 () () : UH0 =

    let v0 : (unit -> UH0) = closure73()

    UH0_0(6917529027641081856UL, v0)

and closure71 () () : UH0 =

    let v0 : (unit -> UH0) = closure72()

    UH0_0(1152921504606846976UL, v0)

and closure70 () () : UH0 =

    let v0 : (unit -> UH0) = closure71()

    UH0_0(15564440312192434176UL, v0)

and closure69 () () : UH0 =

    let v0 : (unit -> UH0) = closure70()

    UH0_0(11817445422220181504UL, v0)

and closure68 () () : UH0 =

    let v0 : (unit -> UH0) = closure69()

    UH0_0(5044031582654955520UL, v0)

and closure67 () () : UH0 =

    let v0 : (unit -> UH0) = closure68()

    UH0_0(6989586621679009792UL, v0)

and closure66 () () : UH0 =

    let v0 : (unit -> UH0) = closure67()

    UH0_0(16537217831704461312UL, v0)

and closure65 () () : UH0 =

    let v0 : (unit -> UH0) = closure66()

    UH0_0(11979575008805519360UL, v0)

and closure64 () () : UH0 =

    let v0 : (unit -> UH0) = closure65()

    UH0_0(14294425217273954304UL, v0)

and closure63 () () : UH0 =

    let v0 : (unit -> UH0) = closure64()

    UH0_0(2382404202878992384UL, v0)

and closure62 () () : UH0 =

    let v0 : (unit -> UH0) = closure63()

    UH0_0(6545982058383015936UL, v0)

and closure61 () () : UH0 =

    let v0 : (unit -> UH0) = closure62()

    UH0_0(10314369046585278464UL, v0)

and closure60 () () : UH0 =

    let v0 : (unit -> UH0) = closure61()

    UH0_0(4793518853382471680UL, v0)

and closure59 () () : UH0 =

    let v0 : (unit -> UH0) = closure60()

    UH0_0(3873377154515337216UL, v0)

and closure58 () () : UH0 =

    let v0 : (unit -> UH0) = closure59()

    UH0_0(645562859085889536UL, v0)

and closure57 () () : UH0 =

    let v0 : (unit -> UH0) = closure58()

    UH0_0(107593809847648256UL, v0)

and closure56 () () : UH0 =

    let v0 : (unit -> UH0) = closure57()

    UH0_0(3092389647259533312UL, v0)

and closure55 () () : UH0 =

    let v0 : (unit -> UH0) = closure56()

    UH0_0(9738770311398031360UL, v0)

and closure54 () () : UH0 =

    let v0 : (unit -> UH0) = closure55()

    UH0_0(16995415113324298240UL, v0)

and closure53 () () : UH0 =

    let v0 : (unit -> UH0) = closure54()

    UH0_0(8981483876790566912UL, v0)

and closure52 () () : UH0 =

    let v0 : (unit -> UH0) = closure53()

    UH0_0(13794743361938128896UL, v0)

and closure51 () () : UH0 =

    let v0 : (unit -> UH0) = closure52()

    UH0_0(2299123893656354816UL, v0)

and closure50 () () : UH0 =

    let v0 : (unit -> UH0) = closure51()

    UH0_0(3457644661227651072UL, v0)

and closure49 () () : UH0 =

    let v0 : (unit -> UH0) = closure50()

    UH0_0(576274110204608512UL, v0)

and closure48 () () : UH0 =

    let v0 : (unit -> UH0) = closure49()

    UH0_0(6244960376270618624UL, v0)

and closure47 () () : UH0 =

    let v0 : (unit -> UH0) = closure48()

    UH0_0(13338656111851470848UL, v0)

and closure46 () () : UH0 =

    let v0 : (unit -> UH0) = closure47()

    UH0_0(14520938734448279552UL, v0)

and closure45 () () : UH0 =

    let v0 : (unit -> UH0) = closure46()

    UH0_0(14717985838214414336UL, v0)

and closure44 () () : UH0 =

    let v0 : (unit -> UH0) = closure45()

    UH0_0(5527454985320660992UL, v0)

and closure43 () () : UH0 =

    let v0 : (unit -> UH0) = closure44()

    UH0_0(16293529225644736512UL, v0)

and closure42 () () : UH0 =

    let v0 : (unit -> UH0) = closure43()

    UH0_0(11938960241128898560UL, v0)

and closure41 () () : UH0 =

    let v0 : (unit -> UH0) = closure42()

    UH0_0(8138741398091333632UL, v0)

and closure40 () () : UH0 =

    let v0 : (unit -> UH0) = closure41()

    UH0_0(7505371590918406144UL, v0)

and closure39 () () : UH0 =

    let v0 : (unit -> UH0) = closure40()

    UH0_0(16623181993244360704UL, v0)

and closure38 () () : UH0 =

    let v0 : (unit -> UH0) = closure39()

    UH0_0(8919445023443910656UL, v0)

and closure37 () () : UH0 =

    let v0 : (unit -> UH0) = closure38()

    UH0_0(4561031516192243712UL, v0)

and closure36 () () : UH0 =

    let v0 : (unit -> UH0) = closure37()

    UH0_0(9983543956220149760UL, v0)

and closure35 () () : UH0 =

    let v0 : (unit -> UH0) = closure36()

    UH0_0(4738381338321616896UL, v0)

and closure34 () () : UH0 =

    let v0 : (unit -> UH0) = closure35()

    UH0_0(789730223053602816UL, v0)

and closure33 () () : UH0 =

    let v0 : (unit -> UH0) = closure34()

    UH0_0(131621703842267136UL, v0)

and closure32 () () : UH0 =

    let v0 : (unit -> UH0) = closure33()

    UH0_0(21936950640377856UL, v0)

and closure31 () () : UH0 =

    let v0 : (unit -> UH0) = closure32()

    UH0_0(3656158440062976UL, v0)

and closure30 () () : UH0 =

    let v0 : (unit -> UH0) = closure31()

    UH0_0(609359740010496UL, v0)

and closure29 () () : UH0 =

    let v0 : (unit -> UH0) = closure30()

    UH0_0(101559956668416UL, v0)

and closure28 () () : UH0 =

    let v0 : (unit -> UH0) = closure29()

    UH0_0(16926659444736UL, v0)

and closure27 () () : UH0 =

    let v0 : (unit -> UH0) = closure28()

    UH0_0(2821109907456UL, v0)

and closure26 () () : UH0 =

    let v0 : (unit -> UH0) = closure27()

    UH0_0(470184984576UL, v0)

and closure25 () () : UH0 =

    let v0 : (unit -> UH0) = closure26()

    UH0_0(78364164096UL, v0)

and closure24 () () : UH0 =

    let v0 : (unit -> UH0) = closure25()

    UH0_0(13060694016UL, v0)

and closure23 () () : UH0 =

    let v0 : (unit -> UH0) = closure24()

    UH0_0(2176782336UL, v0)

and closure22 () () : UH0 =

    let v0 : (unit -> UH0) = closure23()

    UH0_0(362797056UL, v0)

and closure21 () () : UH0 =

    let v0 : (unit -> UH0) = closure22()

    UH0_0(60466176UL, v0)

and closure20 () () : UH0 =

    let v0 : (unit -> UH0) = closure21()

    UH0_0(10077696UL, v0)

and closure19 () () : UH0 =

    let v0 : (unit -> UH0) = closure20()

    UH0_0(1679616UL, v0)

and closure18 () () : UH0 =

    let v0 : (unit -> UH0) = closure19()

    UH0_0(279936UL, v0)

and closure17 () () : UH0 =

    let v0 : (unit -> UH0) = closure18()

    UH0_0(46656UL, v0)

and closure16 () () : UH0 =

    let v0 : (unit -> UH0) = closure17()

    UH0_0(7776UL, v0)

and closure15 () () : UH0 =

    let v0 : (unit -> UH0) = closure16()

    UH0_0(1296UL, v0)

and closure14 () () : UH0 =

    let v0 : (unit -> UH0) = closure15()

    UH0_0(216UL, v0)

and closure13 () () : UH0 =

    let v0 : (unit -> UH0) = closure14()

    UH0_0(36UL, v0)

and closure12 () () : UH0 =

    let v0 : (unit -> UH0) = closure13()

    UH0_0(6UL, v0)

and method11 (v0 : int64, v1 : UH0) : US1 =

    match v1 with

    | UH0_0(v2, v3) -> (* StreamCons *)

        let v4 : bool = v0 <= 0L

        if v4 then

            US1_1(v2)

        else

            let v6 : int64 = v0 - 1L

            let v7 : UH0 = v3 ()

            method11(v6, v7)

    | UH0_1 -> (* StreamNil *)

        US1_0

and method10 (v0 : US2, v1 : int64, v2 : UH1, v3 : uint64) : US3 =

    let v4 : bool = v1 < 0L

    if v4 then

        let v5 : string = $"accumulate_dice_rolls / power: {v1} / acc: {v3}"

        match v0 with

        | US2_0 -> (* None *)

            ()

        | US2_1(v6) -> (* Some *)

            v6 v5

        let v7 : uint64 = v3 + 1UL

        US3_1(v7, v2)

    else

        match v2 with

        | UH1_0(v10, v11) -> (* Cons *)

            let v12 : bool = v10 > 1UL

            if v12 then

                let v13 : uint64 = 1UL

                let v14 : (unit -> UH0) = closure12()

                let v15 : UH0 = UH0_0(v13, v14)

                let v16 : US1 = method11(v1, v15)

                let v20 : uint64 =

                    match v16 with

                    | US1_0 -> (* None *)

                        failwith<uint64> "Option does not have a value."

                    | US1_1(v17) -> (* Some *)

                        v17

                let v21 : uint64 = v10 - 1UL

                let v22 : uint64 = v21 * v20

                let v23 : string = $"accumulate_dice_rolls / power: {v1} / acc: {v3} / roll: {v10} / value: {v22}"

                match v0 with

                | US2_0 -> (* None *)

                    ()

                | US2_1(v24) -> (* Some *)

                    v24 v23

                let v25 : uint64 = v3 + v22

                let v26 : int64 = v1 - 1L

                method10(v0, v26, v11, v25)

            else

                let v28 : string = $"accumulate_dice_rolls / power: {v1} / acc: {v3} / roll: {v10}"

                match v0 with

                | US2_0 -> (* None *)

                    ()

                | US2_1(v29) -> (* Some *)

                    v29 v28

                let v30 : int64 = v1 - 1L

                method10(v0, v30, v11, v3)

        | UH1_1 -> (* Nil *)

            US3_0

and method12 (v0 : int64, v1 : (unit -> uint64), v2 : int64) : UH1 =

    let v3 : bool = v2 < v0

    if v3 then

        let v4 : uint64 = v1 ()

        let v5 : int64 = v2 + 1L

        let v6 : UH1 = method12(v0, v1, v5)

        UH1_0(v4, v6)

    else

        UH1_1

and method13 (v0 : US2, v1 : (unit -> uint64), v2 : bool, v3 : uint64, v4 : int64, v5 : UH1) : uint64 =

    let v6 : int64 = v4 + 1L

    let v7 : bool = v4 < v6

    if v7 then

        let v8 : uint64 = v1 ()

        let v9 : UH1 = UH1_0(v8, v5)

        method9(v0, v1, v2, v3, v4, v9, v6)

    else

        let v11 : uint64 = 0UL

        let v12 : US3 = method10(v0, v4, v5, v11)

        match v12 with

        | US3_1(v13, v14) -> (* Some *)

            let v15 : bool = v13 <= v3

            if v15 then

                v13

            else

                if v2 then

                    let v16 : int64 = 0L

                    let v17 : UH1 = method12(v4, v1, v16)

                    method13(v0, v1, v2, v3, v4, v17)

                else

                    let v19 : uint64 = v1 ()

                    let v20 : UH1 = UH1_0(v19, v5)

                    method9(v0, v1, v2, v3, v4, v20, v6)

        | _ ->

            if v2 then

                let v24 : int64 = 0L

                let v25 : UH1 = method12(v4, v1, v24)

                method13(v0, v1, v2, v3, v4, v25)

            else

                let v27 : uint64 = v1 ()

                let v28 : UH1 = UH1_0(v27, v5)

                method9(v0, v1, v2, v3, v4, v28, v6)

and method9 (v0 : US2, v1 : (unit -> uint64), v2 : bool, v3 : uint64, v4 : int64, v5 : UH1, v6 : int64) : uint64 =

    let v7 : int64 = v4 + 1L

    let v8 : bool = v6 < v7

    if v8 then

        let v9 : uint64 = v1 ()

        let v10 : UH1 = UH1_0(v9, v5)

        let v11 : int64 = v6 + 1L

        method9(v0, v1, v2, v3, v4, v10, v11)

    else

        let v13 : uint64 = 0UL

        let v14 : US3 = method10(v0, v4, v5, v13)

        match v14 with

        | US3_1(v15, v16) -> (* Some *)

            let v17 : bool = v15 <= v3

            if v17 then

                v15

            else

                if v2 then

                    let v18 : int64 = 0L

                    let v19 : UH1 = method12(v4, v1, v18)

                    method13(v0, v1, v2, v3, v4, v19)

                else

                    let v21 : uint64 = v1 ()

                    let v22 : UH1 = UH1_0(v21, v5)

                    let v23 : int64 = v6 + 1L

                    method9(v0, v1, v2, v3, v4, v22, v23)

        | _ ->

            if v2 then

                let v27 : int64 = 0L

                let v28 : UH1 = method12(v4, v1, v27)

                method13(v0, v1, v2, v3, v4, v28)

            else

                let v30 : uint64 = v1 ()

                let v31 : UH1 = UH1_0(v30, v5)

                let v32 : int64 = v6 + 1L

                method9(v0, v1, v2, v3, v4, v31, v32)

and closure11 (v0 : US2, v1 : (unit -> uint64), v2 : bool) (v3 : uint64) : uint64 =

    let v4 : bool = v3 = 1UL

    let v8 : int64 =

        if v4 then

            1L

        else

            let v5 : int64 = 0L

            let v6 : uint64 = 1UL

            method8(v0, v3, v5, v6)

    let v9 : int64 = v8 - 1L

    let v10 : UH1 = UH1_1

    let v11 : int64 = 0L

    method9(v0, v1, v2, v3, v9, v10, v11)

and closure10 (v0 : US2, v1 : (unit -> uint64)) (v2 : bool) : (uint64 -> uint64) =

    closure11(v0, v1, v2)

and closure9 (v0 : US2) (v1 : (unit -> uint64)) : (bool -> (uint64 -> uint64)) =

    closure10(v0, v1)

and closure8 () (v0 : US2) : ((unit -> uint64) -> (bool -> (uint64 -> uint64))) =

    closure9(v0)

and method14 (v0 : UH1, v1 : int64) : int64 =

    match v0 with

    | UH1_0(v2, v3) -> (* Cons *)

        let v4 : int64 = v1 + 1L

        method14(v3, v4)

    | UH1_1 -> (* Nil *)

        v1

and closure78 (v0 : US2, v1 : uint64) (v2 : UH1) : US1 =

    let v3 : int64 = 0L

    let v4 : int64 = method14(v2, v3)

    let v5 : int64 = v4 - 1L

    let v6 : uint64 = 0UL

    let v7 : US3 = method10(v0, v5, v2, v6)

    match v7 with

    | US3_1(v8, v9) -> (* Some *)

        let v10 : bool = v8 >= 1UL

        let v12 : bool =

            if v10 then

                let v11 : bool = v8 <= v1

                v11

            else

                false

        if v12 then

            US1_1(v8)

        else

            US1_0

    | _ ->

        US1_0

and closure77 (v0 : US2) (v1 : uint64) : (UH1 -> US1) =

    closure78(v0, v1)

and closure76 () (v0 : US2) : (uint64 -> (UH1 -> US1)) =

    closure77(v0)

and method0 () : unit =

    let v0 : (uint64 -> (UH0 -> UH0)) = closure0()

    let v1 : (UH1 -> (unit -> uint64)) = closure3()

    let v2 : (US2 -> ((unit -> uint64) -> (bool -> (uint64 -> uint64)))) = closure8()

    let v3 : (US2 -> (uint64 -> (UH1 -> US1))) = closure76()

    ()

method0()

let main _args = 0

()

) / errors: [] / typeErrorCount: 0

00:00:02 #17 [Debug] watchWithFilter / Disposing watch stream / filter: FileName, LastWrite

00:00:00 #1 [Debug] persistCodeProject / packages: [Fable.Core] / modules: [lib/fsharp/Common.fs] / path: C:\home\git\polyglot\apps\dice / name: dice / code.Length: 18383

00:00:00 #2 [Debug] buildProject / fullPath: C:\home\git\polyglot\apps\dice\target\dice.fsproj

00:00:00 #3 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\dice\target\dice.fsproj" --configuration Release --output ../dist --runtime linux-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\dice\target"

  CancellationToken = None

  OnLine = None }

00:00:00 #4 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:00 #5 [Verbose] >   Determining projects to restore...

00:00:01 #6 [Verbose] >   Restored C:\home\git\polyglot\apps\dice\target\dice.fsproj (in 345 ms).

00:00:01 #7 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\dice\target\dice.fsproj]

00:00:05 #8 [Verbose] >   dice -> C:\home\git\polyglot\apps\dice\target\bin\Release\net8.0\linux-x64\dice.dll

00:00:06 #9 [Verbose] >   dice -> C:\home\git\polyglot\apps\dice\dist\

00:00:06 #10 [Debug] executeAsync / exitCode: 0 / output.Length: 594

00:00:06 #11 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\dice\target\dice.fsproj" --configuration Release --output ../dist --runtime win-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\dice\target"

  CancellationToken = None

  OnLine = None }

00:00:06 #12 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:07 #13 [Verbose] >   Determining projects to restore...

00:00:07 #14 [Verbose] >   Restored C:\home\git\polyglot\apps\dice\target\dice.fsproj (in 326 ms).

00:00:07 #15 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\dice\target\dice.fsproj]

00:00:11 #16 [Verbose] >   dice -> C:\home\git\polyglot\apps\dice\target\bin\Release\net8.0\win-x64\dice.dll

00:00:14 #17 [Verbose] >   dice -> C:\home\git\polyglot\apps\dice\dist\

00:00:14 #18 [Debug] executeAsync / exitCode: 0 / output.Length: 592

Fable 4.2.2: F# to Rust compiler (status: alpha)



Thanks to the contributor! @zanaptak

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 190ms



Started Fable compilation...

Fable compilation finished in 2471ms



.\target\dice.fs(553,0): (553,9) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!

Fable 4.2.2: F# to TypeScript compiler

Minimum fable-library version (when installed from npm): 1.1.1



Thanks to the contributor! @delneg

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 189ms



Started Fable compilation...

Fable compilation finished in 2387ms



Fable 4.2.2: F# to Python compiler (status: beta)



Thanks to the contributor! @SirUppyPancakes

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 190ms



Started Fable compilation...

Fable compilation finished in 2415ms



Fable 4.2.2: F# to PHP compiler (status: experimental)



Thanks to the contributor! @Nhowka

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 187ms



Started Fable compilation...

Fable compilation finished in 2185ms



.\..\..\lib\fsharp\Common.fs(129,23): (129,35) error FABLE: String templates are not supported

.\target\dice.fs(28,31): (28,34) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(31,32): (31,35) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(147,25): (147,28) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(155,30): (155,32) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(156,31): (156,34) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(159,27): (159,82) error FABLE: String templates are not supported

.\target\dice.fs(168,10): (168,13) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(171,10): (171,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(174,10): (174,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(177,10): (177,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(180,10): (180,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(183,10): (183,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(186,10): (186,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(189,10): (189,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(192,10): (192,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(195,10): (195,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(198,10): (198,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(201,10): (201,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(204,10): (204,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(207,10): (207,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(210,10): (210,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(213,10): (213,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(216,10): (216,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(219,10): (219,30) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(222,10): (222,30) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(225,10): (225,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(228,10): (228,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(231,10): (231,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(234,10): (234,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(237,10): (237,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(240,10): (240,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(243,10): (243,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(246,10): (246,30) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(249,10): (249,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(252,10): (252,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(255,10): (255,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(258,10): (258,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(261,10): (261,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(264,10): (264,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(267,10): (267,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(270,10): (270,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(273,10): (273,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(276,10): (276,32) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(279,10): (279,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(282,10): (282,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(285,10): (285,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(288,10): (288,31) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(291,10): (291,30) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(294,10): (294,30) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(297,10): (297,29) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(300,10): (300,28) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(303,10): (303,27) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(306,10): (306,27) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(309,10): (309,26) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(312,10): (312,25) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(315,10): (315,24) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(318,10): (318,23) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(321,10): (321,23) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(324,10): (324,22) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(327,10): (327,21) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(330,10): (330,20) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(333,10): (333,20) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(336,10): (336,19) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(339,10): (339,18) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(342,10): (342,17) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(345,10): (345,16) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(348,10): (348,16) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(351,10): (351,15) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(354,10): (354,14) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(357,10): (357,13) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(361,30): (361,32) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(365,34): (365,36) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(371,25): (371,27) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(373,26): (373,76) error FABLE: String templates are not supported

.\target\dice.fs(379,31): (379,34) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(384,35): (384,38) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(386,35): (386,38) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(396,41): (396,44) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(398,35): (398,114) error FABLE: String templates are not supported

.\target\dice.fs(405,39): (405,41) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(408,35): (408,99) error FABLE: String templates are not supported

.\target\dice.fs(414,39): (414,41) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(422,30): (422,32) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(428,26): (428,28) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(435,27): (435,30) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(444,38): (444,40) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(453,34): (453,36) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(461,26): (461,28) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(466,31): (466,33) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(469,27): (469,30) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(478,38): (478,40) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(484,43): (484,45) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(488,34): (488,36) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(494,39): (494,41) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(497,25): (497,28) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(500,12): (500,14) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(502,29): (502,31) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(503,30): (503,33) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(505,26): (505,28) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(507,22): (507,24) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(518,30): (518,32) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(523,21): (523,23) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(525,26): (525,28) error FABLE: Numeric literal is not supported: System.Int64

.\target\dice.fs(526,22): (526,25) error FABLE: Numeric literal is not supported: System.UInt64

.\target\dice.fs(530,31): (530,34) error FABLE: Numeric literal is not supported: System.UInt64

Compilation failed


# Invoke-Block / $Retries: 1 / $OnError: Continue / $exitcode: 1 / $EnvVars: null / $Error: '' / $ScriptBlock:
'dotnet fable target/dice.fsproj --optimize --lang php --extension .php --outDir target/php'


Fable 4.2.2: F# to Dart compiler (status: beta)



Thanks to the contributor! @cloudRoutine

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 185ms



Started Fable compilation...

Fable compilation finished in 2213ms



.\..\..\lib\fsharp\Common.fs(1,1): error FABLE: Cannot find reference for Microsoft.FSharp.Core.PrintfFormat`5

.\target\dice.fs(553,0): (553,9) error FABLE: Standalone actions are not supported in Dart, please use a function

Compilation failed


# Invoke-Block / $Retries: 1 / $OnError: Continue / $exitcode: 1 / $EnvVars: null / $Error: '' / $ScriptBlock:
'dotnet fable target/dice.fsproj --optimize --lang dart --extension .dart --outDir target/dart'


Fable 4.2.2: F# to Rust compiler (status: alpha)



Thanks to the contributor! @cmeeren

Stand with Ukraine! https://standwithukraine.com.ua/



Parsing target\dice.fsproj...

Retrieving project options from cache, in case of issues run `dotnet fable clean` or try `--noCache` option.

Project and references (2 source files) parsed in 193ms



Started Fable compilation...

Fable compilation finished in 2558ms



.\target\dice.fs(553,0): (553,9) warning FABLE: For Rust, support for F# static and module do bindings is disabled by default. It can be enabled with the 'static_do_bindings' feature. Use at your own risk!

   Compiling dice v0.0.1 (C:\home\git\polyglot\apps\dice)

    Finished release [optimized] target(s) in 3.71s

     Running `target\release\dice.exe`

   Compiling dice_fsharp v0.0.1 (C:\home\git\polyglot\apps\dice\fsharp)

   Compiling dice_contract v0.0.1 (C:\home\git\polyglot\apps\dice\contract)

    Finished release [optimized] target(s) in 4.85s

## 7

    Finished release [optimized] target(s) in 15.33s

     Running `target/release/dice_contract_tests`





new: ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 5273593298808,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 2vumpujKinyAkuiSrbmo5FhwbNn9XqKLDb9GmKeHnZQz,

        block_hash: Daf5RdKMApUnuKqhFB8V4EZ8RGrdtz4QNVcBuKRMXFnb,

        logs: [],

        receipt_ids: [

            CCoBHLWuJv6Xi9KRFnpVBcDf2ER5f7zJrDDhpFSCgCZq,

        ],

        gas_burnt: NearGas {

            inner: 2427927707802,

        },

        tokens_burnt: 242792770780200000000,

        executor_id: AccountId(

            "dev-20231029171101-12765670123434",

        ),

        status: SuccessReceiptId(CCoBHLWuJv6Xi9KRFnpVBcDf2ER5f7zJrDDhpFSCgCZq),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: CCoBHLWuJv6Xi9KRFnpVBcDf2ER5f7zJrDDhpFSCgCZq,

            block_hash: Daf5RdKMApUnuKqhFB8V4EZ8RGrdtz4QNVcBuKRMXFnb,

            logs: [],

            receipt_ids: [

                6zHQSJfxHLvwgLZq9x3VnMEAgGmYrU7F2XheoCfLqua6,

            ],

            gas_burnt: NearGas {

                inner: 2622483028506,

            },

            tokens_burnt: 262248302850600000000,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue(''),

        },

        ExecutionOutcome {

            transaction_hash: 6zHQSJfxHLvwgLZq9x3VnMEAgGmYrU7F2XheoCfLqua6,

            block_hash: BGLNzYq98axaebYY6Vpao6fkdXTVswC2rnzR7arUCHU8,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(''),

}

total_gas_burnt_usd: 0.003522760323603744

outcome (success: true):

  outcome_gas_burnt_usd: 0.001621855708811736

  outcome_tokens_burnt_usd: 0.001621855708811736

outcome (success: true):

  outcome_gas_burnt_usd: 0.0017518186630420078

  outcome_tokens_burnt_usd: 0.0017518186630420083

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





roll_within_bounds(contract, ''): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 5459714667589,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 8oSEomgZ7x71z31UCS24dXv4p3FVdtnEQSRLVtWiggfX,

        block_hash: BBXWzSSRX2PuSJ94WLfQ8cEWLbpQqWr7hFvKRsTNGJ2i,

        logs: [],

        receipt_ids: [

            A7zVNN3Z8XSGiXBSQjfhz3LRdsGM15KEH9x59k9Do3gY,

        ],

        gas_burnt: NearGas {

            inner: 2428032796700,

        },

        tokens_burnt: 242803279670000000000,

        executor_id: AccountId(

            "dev-20231029171101-12765670123434",

        ),

        status: SuccessReceiptId(A7zVNN3Z8XSGiXBSQjfhz3LRdsGM15KEH9x59k9Do3gY),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: A7zVNN3Z8XSGiXBSQjfhz3LRdsGM15KEH9x59k9Do3gY,

            block_hash: BBXWzSSRX2PuSJ94WLfQ8cEWLbpQqWr7hFvKRsTNGJ2i,

            logs: [

                "roll_within_bounds / max: 2000 / rolls: [1, 5, 4, 4, 5]",

                "accumulateDiceRolls / power: 4 / acc: 0 / roll: 1",

                "accumulateDiceRolls / power: 3 / acc: 0 / roll: 5 / value: 864",

                "accumulateDiceRolls / power: 2 / acc: 864 / roll: 4 / value: 108",

                "accumulateDiceRolls / power: 1 / acc: 972 / roll: 4 / value: 18",

                "accumulateDiceRolls / power: 0 / acc: 990 / roll: 5 / value: 4",

                "accumulateDiceRolls / power: -1 / acc: 994",

            ],

            receipt_ids: [

                5JSC6rMkMsqywxmoav43vKHbPYiWy2pNT2msLvKt1SSj,

            ],

            gas_burnt: NearGas {

                inner: 2808499308389,

            },

            tokens_burnt: 280849930838900000000,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue('995'),

        },

        ExecutionOutcome {

            transaction_hash: 5JSC6rMkMsqywxmoav43vKHbPYiWy2pNT2msLvKt1SSj,

            block_hash: 4WHsaMi47i3V3ERhTWZUcQaMHpURmvAGyCQLMhRegLZz,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue('995'),

}

total_gas_burnt_usd: 0.0036470893979494517

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016219259081956

  outcome_tokens_burnt_usd: 0.0016219259081956

outcome (success: true):

  outcome_gas_burnt_usd: 0.0018760775380038518

  outcome_tokens_burnt_usd: 0.0018760775380038518

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0





roll_within_bounds_borsh(contract, ''): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 5470211478926,

    },

    transaction: ExecutionOutcome {

        transaction_hash: EgLgMHthDbVo8QUsA7BbE7SRMw11UCFDM9Rve6UN9QFQ,

        block_hash: BVjWs2YCX4iA7NEppM1xNzN5jbV5mdoUUjcfQncNJuGY,

        logs: [],

        receipt_ids: [

            FQaiwaQfEyUJ6Gu2WtSPGQKcUQGVV66JPDCdbkAEuvMU,

        ],

        gas_burnt: NearGas {

            inner: 2428037268568,

        },

        tokens_burnt: 242803726856800000000,

        executor_id: AccountId(

            "dev-20231029171101-12765670123434",

        ),

        status: SuccessReceiptId(FQaiwaQfEyUJ6Gu2WtSPGQKcUQGVV66JPDCdbkAEuvMU),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: FQaiwaQfEyUJ6Gu2WtSPGQKcUQGVV66JPDCdbkAEuvMU,

            block_hash: BVjWs2YCX4iA7NEppM1xNzN5jbV5mdoUUjcfQncNJuGY,

            logs: [

                "roll_within_bounds / max: 2000 / rolls: [2, 2, 6, 4, 5]",

                "accumulateDiceRolls / power: 4 / acc: 0 / roll: 2 / value: 1296",

                "accumulateDiceRolls / power: 3 / acc: 1296 / roll: 2 / value: 216",

                "accumulateDiceRolls / power: 2 / acc: 1512 / roll: 6 / value: 180",

                "accumulateDiceRolls / power: 1 / acc: 1692 / roll: 4 / value: 18",

                "accumulateDiceRolls / power: 0 / acc: 1710 / roll: 5 / value: 4",

                "accumulateDiceRolls / power: -1 / acc: 1714",

            ],

            receipt_ids: [

                ATAzZRYaw6qW6FicGsAAtxtU3aLGwYoapKEDmmFWfKBG,

            ],

            gas_burnt: NearGas {

                inner: 2818991647858,

            },

            tokens_burnt: 281899164785800000000,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue(AbMGAAA=),

        },

        ExecutionOutcome {

            transaction_hash: ATAzZRYaw6qW6FicGsAAtxtU3aLGwYoapKEDmmFWfKBG,

            block_hash: ABcHv3bgecUmfdbRte55nr81c4necNgArcbAQKVpjwx5,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue(AbMGAAA=),

}

total_gas_burnt_usd: 0.003654101267922568

outcome (success: true):

  outcome_gas_burnt_usd: 0.0016219288954034238

  outcome_tokens_burnt_usd: 0.001621928895403424

outcome (success: true):

  outcome_gas_burnt_usd: 0.0018830864207691437

  outcome_tokens_burnt_usd: 0.0018830864207691437

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0

n: Some(

    Some(

        1715,

    ),

)





generate_random_number(contract, ''): ExecutionFinalResult {

    total_gas_burnt: NearGas {

        inner: 8955607975094,

    },

    transaction: ExecutionOutcome {

        transaction_hash: 5pMssGmxfb11ZRJTp7o8RiqtmySZudydmrJaKVRVy8uq,

        block_hash: B7r1WfszsyqSgtBh1xgiMz7Ex2LdnGwBDWf1Vc6zRDDb,

        logs: [],

        receipt_ids: [

            DVD7za4jevw59mUhQRM482GVB64LG7u7e1BpbtGWbKzP,

        ],

        gas_burnt: NearGas {

            inner: 2427997021756,

        },

        tokens_burnt: 242799702175600000000,

        executor_id: AccountId(

            "dev-20231029171101-12765670123434",

        ),

        status: SuccessReceiptId(DVD7za4jevw59mUhQRM482GVB64LG7u7e1BpbtGWbKzP),

    },

    receipts: [

        ExecutionOutcome {

            transaction_hash: DVD7za4jevw59mUhQRM482GVB64LG7u7e1BpbtGWbKzP,

            block_hash: B7r1WfszsyqSgtBh1xgiMz7Ex2LdnGwBDWf1Vc6zRDDb,

            logs: [

                "generate_random_number / max: 2000 / seed: [37, 52, 212, 25, 248, 221, 120, 127, 149, 3, 108, 72, 198, 171, 159, 154, 127, 28, 221, 89, 241, 252, 97, 154, 152, 71, 35, 20, 87, 73, 148, 104] / block_timestamp: 1698599466035460463 / signer_account_id: \"dev-20231029171101-12765670123434\" / account_balance: 99996914296204354405960000 / block_height: 25 / epoch_height: 1 / entropy: [37, 52, 212, 25, 248, 221, 120, 127, 149, 3, 108, 72, 198, 171, 159, 154, 127, 28, 221, 89, 241, 252, 97, 154, 152, 71, 35, 20, 87, 73, 148, 104, 111, 57, 182, 252, 54, 163, 146, 23, 100, 101, 118, 45, 50, 48, 50, 51, 49, 48, 50, 57, 49, 55, 49, 49, 48, 49, 45, 49, 50, 55, 54, 53, 54, 55, 48, 49, 50, 51, 52, 51, 52, 64, 137, 210, 137, 113, 247, 9, 150, 43, 183, 82, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0] / hash_vec: [120, 158, 33, 213, 37, 217, 200, 200, 115, 121, 207, 112, 238, 11, 123, 123, 140, 74, 211, 224, 130, 223, 167, 214, 54, 109, 82, 181, 124, 219, 128, 248, 146, 147, 9, 207, 120, 142, 102, 229, 207, 91, 148, 216, 54, 243, 240, 18, 165, 242, 172, 101, 77, 193, 210, 91, 1, 94, 49, 212, 168, 145, 152, 243] / rolls_list: [6, 2, 3, 3, 1, 1, 2, 2, 1, 1, 3, 4, 4, 5, 3, 3, 2, 2, 1, 2, 4, 1, 5, 4, 6, 1, 4, 1, 4, 3, 2, 2, 2, 3, 3, 3, 6, 4, 6, 1, 3, 1, 4, 6, 6, 3, 6, 6, 3, 2, 4, 5, 5, 1, 6, 1, 1, 4, 1, 2, 6, 1, 2, 3]",

                "calculateDiceCount / max: 2000 / n: 5 / p: 7776",

                "accumulateDiceRolls / power: 4 / acc: 0 / roll: 1",

                "accumulateDiceRolls / power: 3 / acc: 0 / roll: 3 / value: 432",

                "accumulateDiceRolls / power: 2 / acc: 432 / roll: 3 / value: 72",

                "accumulateDiceRolls / power: 1 / acc: 504 / roll: 2 / value: 6",

                "accumulateDiceRolls / power: 0 / acc: 510 / roll: 6 / value: 5",

                "accumulateDiceRolls / power: -1 / acc: 515",

            ],

            receipt_ids: [

                D3PurvKi11Dctq55ZeMY9BiXnD45EJTGgYXRPh29Peix,

            ],

            gas_burnt: NearGas {

                inner: 6304428390838,

            },

            tokens_burnt: 630442839083800000000,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue('516'),

        },

        ExecutionOutcome {

            transaction_hash: D3PurvKi11Dctq55ZeMY9BiXnD45EJTGgYXRPh29Peix,

            block_hash: 2YDfqGpFEv1a4X5AwTrFQ7Ksh5ehihJwCik4SBE1K1pp,

            logs: [],

            receipt_ids: [],

            gas_burnt: NearGas {

                inner: 223182562500,

            },

            tokens_burnt: 0,

            executor_id: AccountId(

                "dev-20231029171101-12765670123434",

            ),

            status: SuccessValue(''),

        },

    ],

    status: SuccessValue('516'),

}

total_gas_burnt_usd: 0.005982346127362792

outcome (success: true):

  outcome_gas_burnt_usd: 0.001621902010533008

  outcome_tokens_burnt_usd: 0.0016219020105330078

outcome (success: true):

  outcome_gas_burnt_usd: 0.004211358165079784

  outcome_tokens_burnt_usd: 0.004211358165079784

outcome (success: true):

  outcome_gas_burnt_usd: 0.00014908595175

  outcome_tokens_burnt_usd: 0.0

n: 516

In [ ]:
{ . "$ScriptDir/../apps/perf/build.ps1" } | Invoke-Block
00:00:00 #1 [Debug] runWithTimeoutAsync / timeout: 60

00:00:00 #2 [Debug] executeAsync / options: { Command =

   "dotnet "C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release\Spiral.dll" port=13805"

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = Some <fun:main@450-1020> }

00:00:00 #3 [Verbose] > pwd: C:\home\git\polyglot\apps\perf

00:00:00 #4 [Verbose] > dll_path: C:\home\git\polyglot\deps\The-Spiral-Language\The Spiral Language 2\artifacts\bin\The Spiral Language 2\release

00:00:00 #5 [Debug] runWithTimeoutAsync / timeout: 500

00:00:00 #6 [Verbose] waitForPortAccess / port: 13805 / retry: 0

00:00:01 #7 [Debug] sendJson / port: 13805 / json: {"Ping":true} / result.Length:

00:00:01 #8 [Verbose] awaitCompiler / Ping / result: Some(null) / port: 13805 / retry: 0

00:00:01 #9 [Verbose] > Server bound to: http://localhost:13805

00:00:01 #10 [Debug] executeAsync / options: { Command = "pwsh -c "../../scripts/invoke-dib.ps1 Perf.dib""

  WorkingDirectory = None

  CancellationToken = Some System.Threading.CancellationToken

  OnLine = None }

00:00:03 #11 [Verbose] >

00:00:03 #12 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:03 #13 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:03 #14 [Verbose] > │ ## Perf (Polyglot)                                                           │

00:00:03 #15 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:03 #16 [Verbose] >

00:00:03 #17 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:03 #18 [Verbose] > // // test

00:00:03 #19 [Verbose] >

00:00:03 #20 [Verbose] > open testing

00:00:03 #21 [Verbose] > open benchmark

00:00:06 #22 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1311-1404-0424-0d97094f1cd4\main.spi

00:00:08 #23 [Verbose] >

00:00:08 #24 [Verbose] > ╭─[ 5.07s - stdout ]───────────────────────────────────────────────────────────╮

00:00:08 #25 [Verbose] > │ ()                                                                           │

00:00:08 #26 [Verbose] > │                                                                              │

00:00:08 #27 [Verbose] > │                                                                              │

00:00:08 #28 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:08 #29 [Verbose] >

00:00:08 #30 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:08 #31 [Verbose] > inl (/@) x = listm'.(/@) x

00:00:08 #32 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1311-1684-8455-85f5601254a0\main.spi

00:00:09 #33 [Verbose] >

00:00:09 #34 [Verbose] > ╭─[ 190.17ms - stdout ]────────────────────────────────────────────────────────╮

00:00:09 #35 [Verbose] > │ ()                                                                           │

00:00:09 #36 [Verbose] > │                                                                              │

00:00:09 #37 [Verbose] > │                                                                              │

00:00:09 #38 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #39 [Verbose] >

00:00:09 #40 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:09 #41 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:09 #42 [Verbose] > │ ## TestCaseResult                                                            │

00:00:09 #43 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:09 #44 [Verbose] >

00:00:09 #45 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:09 #46 [Verbose] > type TestCaseResult =

00:00:09 #47 [Verbose] >     {

00:00:09 #48 [Verbose] >         Input: string

00:00:09 #49 [Verbose] >         Expected: string

00:00:09 #50 [Verbose] >         Result: string

00:00:09 #51 [Verbose] >         TimeList: int64 list

00:00:09 #52 [Verbose] >     }

00:00:09 #53 [Verbose] >

00:00:09 #54 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:09 #55 [Verbose] > #r

00:00:09 #56 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

00:00:09 #57 [Verbose] > spNetCore.Html.Abstractions.dll"

00:00:09 #58 [Verbose] > #r

00:00:09 #59 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:09 #60 [Verbose] > otNet.Interactive.dll"

00:00:09 #61 [Verbose] > #r

00:00:09 #62 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:09 #63 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:09 #64 [Verbose] > #r

00:00:09 #65 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:09 #66 [Verbose] > otNet.Interactive.Formatting.dll"

00:00:09 #67 [Verbose] > open System

00:00:09 #68 [Verbose] > open System.IO

00:00:09 #69 [Verbose] > open System.Text

00:00:09 #70 [Verbose] > open Microsoft.DotNet.Interactive.Formatting

00:00:10 #71 [Verbose] >

00:00:10 #72 [Verbose] > ── fsharp - import ─────────────────────────────────────────────────────────────

00:00:10 #73 [Verbose] > #r

00:00:10 #74 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:10 #75 [Verbose] > otNet.Interactive.FSharp.dll"

00:00:10 #76 [Verbose] > open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

00:00:10 #77 [Verbose] > #r

00:00:10 #78 [Verbose] > "C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

00:00:10 #79 [Verbose] > otNet.Interactive.dll"

00:00:10 #80 [Verbose] > open type Microsoft.DotNet.Interactive.Kernel

00:00:10 #81 [Verbose] >

00:00:10 #82 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:10 #83 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:10 #84 [Verbose] > │ ## run                                                                       │

00:00:10 #85 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:10 #86 [Verbose] >

00:00:10 #87 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:10 #88 [Verbose] > let run count (solutions: (string * ('TInput -> 'TExpected)) list) (input,

00:00:10 #89 [Verbose] > expected) =

00:00:10 #90 [Verbose] >     let inputStr =

00:00:10 #91 [Verbose] >         match box input with

00:00:10 #92 [Verbose] >         | :? System.Collections.ICollection as input ->

00:00:10 #93 [Verbose] >             System.Linq.Enumerable.Cast<obj> input

00:00:10 #94 [Verbose] >             |> Seq.map string

00:00:10 #95 [Verbose] >             |> String.concat ","

00:00:10 #96 [Verbose] >         | _ -> input.ToString ()

00:00:10 #97 [Verbose] >

00:00:10 #98 [Verbose] >     printfn ""

00:00:10 #99 [Verbose] >     printfn $"Solution: {inputStr}  "

00:00:10 #100 [Verbose] >

00:00:10 #101 [Verbose] >     let performanceInvoke (fn: unit -> 'T) =

00:00:10 #102 [Verbose] >         GC.Collect ()

00:00:10 #103 [Verbose] >         let stopwatch = System.Diagnostics.Stopwatch ()

00:00:10 #104 [Verbose] >         stopwatch.Start ()

00:00:10 #105 [Verbose] >         let time1 = stopwatch.ElapsedMilliseconds

00:00:10 #106 [Verbose] >

00:00:10 #107 [Verbose] >         let result =

00:00:10 #108 [Verbose] >             [[| 0 .. count |]]

00:00:10 #109 [Verbose] >             |> Array.Parallel.map (fun _ ->

00:00:10 #110 [Verbose] >                 fn ()

00:00:10 #111 [Verbose] >             )

00:00:10 #112 [Verbose] >             |> Array.last

00:00:10 #113 [Verbose] >

00:00:10 #114 [Verbose] >         let time2 = stopwatch.ElapsedMilliseconds - time1

00:00:10 #115 [Verbose] >

00:00:10 #116 [Verbose] >         result, time2

00:00:10 #117 [Verbose] >

00:00:10 #118 [Verbose] >     let resultsWithTime =

00:00:10 #119 [Verbose] >         solutions

00:00:10 #120 [Verbose] >         |> List.mapi (fun i (testName, solution) ->

00:00:10 #121 [Verbose] >             let result, time = performanceInvoke (fun () -> solution input)

00:00:10 #122 [Verbose] >             printfn $"Test case %d{i + 1}. %s{testName}. Time: %A{time}  "

00:00:10 #123 [Verbose] >             result, time

00:00:10 #124 [Verbose] >         )

00:00:10 #125 [Verbose] >

00:00:10 #126 [Verbose] >

00:00:10 #127 [Verbose] >     match resultsWithTime |> List.map fst with

00:00:10 #128 [Verbose] >     | ([[]] | [[ _ ]]) -> ()

00:00:10 #129 [Verbose] >     | (head :: tail) when tail |> List.forall ((=) head) -> ()

00:00:10 #130 [Verbose] >     | results -> failwithf $"Challenge error: %A{results}"

00:00:10 #131 [Verbose] >

00:00:10 #132 [Verbose] >     {

00:00:10 #133 [Verbose] >         Input = inputStr

00:00:10 #134 [Verbose] >         Expected = expected.ToString ()

00:00:10 #135 [Verbose] >         Result = resultsWithTime |> Seq.map fst |> Seq.head |> fun x ->

00:00:10 #136 [Verbose] > x.ToString ()

00:00:10 #137 [Verbose] >         TimeList = resultsWithTime |> List.map snd

00:00:10 #138 [Verbose] >     }

00:00:11 #139 [Verbose] >

00:00:11 #140 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #141 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #142 [Verbose] > │ ## runAll                                                                    │

00:00:11 #143 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #144 [Verbose] >

00:00:11 #145 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:11 #146 [Verbose] > let runAll testName count (solutions: (string * ('TInput -> 'TExpected)) list)

00:00:11 #147 [Verbose] > testCases =

00:00:11 #148 [Verbose] >     printfn ""

00:00:11 #149 [Verbose] >     printfn ""

00:00:11 #150 [Verbose] >     printfn $"Test: {testName}"

00:00:11 #151 [Verbose] >     testCases

00:00:11 #152 [Verbose] >     |> Seq.map (run count solutions)

00:00:11 #153 [Verbose] >     |> Seq.toList

00:00:11 #154 [Verbose] >

00:00:11 #155 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:11 #156 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:11 #157 [Verbose] > │ ## sortResultList                                                            │

00:00:11 #158 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:11 #159 [Verbose] >

00:00:11 #160 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:11 #161 [Verbose] > let sortResultList resultList =

00:00:11 #162 [Verbose] >     let table =

00:00:11 #163 [Verbose] >         let rows =

00:00:11 #164 [Verbose] >             resultList

00:00:11 #165 [Verbose] >             |> List.map (fun result ->

00:00:11 #166 [Verbose] >                 let best =

00:00:11 #167 [Verbose] >                     result.TimeList

00:00:11 #168 [Verbose] >                     |> List.mapi (fun i time ->

00:00:11 #169 [Verbose] >                         i + 1, time

00:00:11 #170 [Verbose] >                     )

00:00:11 #171 [Verbose] >                     |> List.sortBy snd

00:00:11 #172 [Verbose] >                     |> List.head

00:00:11 #173 [Verbose] >                     |> fun x -> x.ToString ()

00:00:11 #174 [Verbose] >                 let row =

00:00:11 #175 [Verbose] >                     [[

00:00:11 #176 [Verbose] >                         result.Input

00:00:11 #177 [Verbose] >                         result.Expected

00:00:11 #178 [Verbose] >                         result.Result

00:00:11 #179 [Verbose] >                         best

00:00:11 #180 [Verbose] >                     ]]

00:00:11 #181 [Verbose] >                 let color =

00:00:11 #182 [Verbose] >                     match result.Expected = result.Result with

00:00:11 #183 [Verbose] >                     | true -> Some ConsoleColor.DarkGreen

00:00:11 #184 [Verbose] >                     | false -> Some ConsoleColor.DarkRed

00:00:11 #185 [Verbose] >                 row, color

00:00:11 #186 [Verbose] >             )

00:00:11 #187 [Verbose] >         let header =

00:00:11 #188 [Verbose] >             [[

00:00:11 #189 [Verbose] >                 [[

00:00:11 #190 [Verbose] >                     "Input"

00:00:11 #191 [Verbose] >                     "Expected"

00:00:11 #192 [Verbose] >                     "Result"

00:00:11 #193 [Verbose] >                     "Best"

00:00:11 #194 [Verbose] >                 ]]

00:00:11 #195 [Verbose] >                 [[

00:00:11 #196 [Verbose] >                     "---"

00:00:11 #197 [Verbose] >                     "---"

00:00:11 #198 [Verbose] >                     "---"

00:00:11 #199 [Verbose] >                     "---"

00:00:11 #200 [Verbose] >                 ]]

00:00:11 #201 [Verbose] >             ]]

00:00:11 #202 [Verbose] >             |> List.map (fun row -> row, None)

00:00:11 #203 [Verbose] >         header @ rows

00:00:11 #204 [Verbose] >

00:00:11 #205 [Verbose] >     let formattedTable =

00:00:11 #206 [Verbose] >         let lengthMap =

00:00:11 #207 [Verbose] >             table

00:00:11 #208 [Verbose] >             |> List.map fst

00:00:11 #209 [Verbose] >             |> List.transpose

00:00:11 #210 [Verbose] >             |> List.map (fun column ->

00:00:11 #211 [Verbose] >                 column

00:00:11 #212 [Verbose] >                 |> List.map String.length

00:00:11 #213 [Verbose] >                 |> List.sortDescending

00:00:11 #214 [Verbose] >                 |> List.tryHead

00:00:11 #215 [Verbose] >                 |> Option.defaultValue 0

00:00:11 #216 [Verbose] >             )

00:00:11 #217 [Verbose] >             |> List.indexed

00:00:11 #218 [Verbose] >             |> Map.ofList

00:00:11 #219 [Verbose] >         table

00:00:11 #220 [Verbose] >         |> List.map (fun (row, color) ->

00:00:11 #221 [Verbose] >             let newRow =

00:00:11 #222 [Verbose] >                 row

00:00:11 #223 [Verbose] >                 |> List.mapi (fun i cell ->

00:00:11 #224 [Verbose] >                     cell.PadRight lengthMap.[[i]]

00:00:11 #225 [Verbose] >                 )

00:00:11 #226 [Verbose] >             newRow, color

00:00:11 #227 [Verbose] >         )

00:00:11 #228 [Verbose] >

00:00:11 #229 [Verbose] >     printfn ""

00:00:11 #230 [Verbose] >     formattedTable

00:00:11 #231 [Verbose] >     |> List.iter (fun (row, color) ->

00:00:11 #232 [Verbose] >         match color with

00:00:11 #233 [Verbose] >         | Some color -> Console.ForegroundColor <- color

00:00:11 #234 [Verbose] >         | None -> Console.ResetColor ()

00:00:11 #235 [Verbose] >

00:00:11 #236 [Verbose] >         printfn "%s" (String.Join ("\t| ", row))

00:00:11 #237 [Verbose] >

00:00:11 #238 [Verbose] >         Console.ResetColor ()

00:00:11 #239 [Verbose] >     )

00:00:11 #240 [Verbose] >

00:00:11 #241 [Verbose] >     let averages =

00:00:11 #242 [Verbose] >         resultList

00:00:11 #243 [Verbose] >         |> List.map (fun result -> result.TimeList |> List.map float)

00:00:11 #244 [Verbose] >         |> List.transpose

00:00:11 #245 [Verbose] >         |> List.map List.average

00:00:11 #246 [Verbose] >         |> List.map int64

00:00:11 #247 [Verbose] >         |> List.indexed

00:00:11 #248 [Verbose] >

00:00:11 #249 [Verbose] >     printfn ""

00:00:11 #250 [Verbose] >     printfn "Average Ranking  "

00:00:11 #251 [Verbose] >     averages

00:00:11 #252 [Verbose] >     |> List.sortBy snd

00:00:11 #253 [Verbose] >     |> List.iter (fun (i, avg) ->

00:00:11 #254 [Verbose] >         printfn $"Test case %d{i + 1}. Average Time: %A{avg}  "

00:00:11 #255 [Verbose] >     )

00:00:11 #256 [Verbose] >

00:00:11 #257 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:11 #258 [Verbose] > let mutable _count =

00:00:11 #259 [Verbose] >     if ("CI" |> System.Environment.GetEnvironmentVariable |> fun x -> $"%A{x}")

00:00:11 #260 [Verbose] > <> "<null>"

00:00:11 #261 [Verbose] >     then 2000000

00:00:11 #262 [Verbose] >     else 2000

00:00:11 #263 [Verbose] >

00:00:11 #264 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:11 #265 [Verbose] > inl is_fast () =

00:00:11 #266 [Verbose] >     false

00:00:11 #267 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1311-1980-8052-8526245b7130\main.spi

00:00:12 #268 [Verbose] >

00:00:12 #269 [Verbose] > ╭─[ 211.86ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #270 [Verbose] > │ ()                                                                           │

00:00:12 #271 [Verbose] > │                                                                              │

00:00:12 #272 [Verbose] > │                                                                              │

00:00:12 #273 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #274 [Verbose] >

00:00:12 #275 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #276 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #277 [Verbose] > │ ## empty3Tests                                                               │

00:00:12 #278 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #279 [Verbose] >

00:00:12 #280 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #281 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #282 [Verbose] > │ Test: Empty3                                                                 │

00:00:12 #283 [Verbose] > │                                                                              │

00:00:12 #284 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #285 [Verbose] > │ Test case 1. A. Time: 91L                                                    │

00:00:12 #286 [Verbose] > │                                                                              │

00:00:12 #287 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #288 [Verbose] > │ Test case 1. A. Time: 56L                                                    │

00:00:12 #289 [Verbose] > │                                                                              │

00:00:12 #290 [Verbose] > │ Input  | Expected      | Result | Best                                       │

00:00:12 #291 [Verbose] > │ ---    | ---           | ---    | ---                                        │

00:00:12 #292 [Verbose] > │ (a, a) | a             | a      | (1, 91)                                    │

00:00:12 #293 [Verbose] > │ (a, a) | a             | a      | (1, 56)                                    │

00:00:12 #294 [Verbose] > │                                                                              │

00:00:12 #295 [Verbose] > │ Averages                                                                     │

00:00:12 #296 [Verbose] > │ Test case 1. Average Time: 73L                                               │

00:00:12 #297 [Verbose] > │                                                                              │

00:00:12 #298 [Verbose] > │ Ranking                                                                      │

00:00:12 #299 [Verbose] > │ Test case 1. Average Time: 73L                                               │

00:00:12 #300 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #301 [Verbose] >

00:00:12 #302 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:12 #303 [Verbose] > //// test

00:00:12 #304 [Verbose] >

00:00:12 #305 [Verbose] > let solutions = [[

00:00:12 #306 [Verbose] >     "A",

00:00:12 #307 [Verbose] >     fun (a, _b) ->

00:00:12 #308 [Verbose] >         a

00:00:12 #309 [Verbose] > ]]

00:00:12 #310 [Verbose] > let testCases = seq {

00:00:12 #311 [Verbose] >     ("a", "a"), "a"

00:00:12 #312 [Verbose] >     ("a", "a"), "a"

00:00:12 #313 [Verbose] > }

00:00:12 #314 [Verbose] > let rec empty3Tests = runAll (nameof empty3Tests) _count solutions testCases

00:00:12 #315 [Verbose] > empty3Tests

00:00:12 #316 [Verbose] > |> sortResultList

00:00:12 #317 [Verbose] >

00:00:12 #318 [Verbose] > ╭─[ 303.18ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #319 [Verbose] > │                                                                              │

00:00:12 #320 [Verbose] > │                                                                              │

00:00:12 #321 [Verbose] > │ Test: empty3Tests                                                            │

00:00:12 #322 [Verbose] > │                                                                              │

00:00:12 #323 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #324 [Verbose] > │ Test case 1. A. Time: 1L                                                     │

00:00:12 #325 [Verbose] > │                                                                              │

00:00:12 #326 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #327 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:12 #328 [Verbose] > │                                                                              │

00:00:12 #329 [Verbose] > │ Input 	| Expected	| Result	| Best                                                  │

00:00:12 #330 [Verbose] > │ ---   	| ---     	| ---   	| ---                                                   │

00:00:12 #331 [Verbose] > │ (a, a)	| a       	| a     	| (1, 1)                                                │

00:00:12 #332 [Verbose] > │ (a, a)	| a       	| a     	| (1, 0)                                                │

00:00:12 #333 [Verbose] > │                                                                              │

00:00:12 #334 [Verbose] > │ Average Ranking                                                              │

00:00:12 #335 [Verbose] > │ Test case 1. Average Time: 0L                                                │

00:00:12 #336 [Verbose] > │                                                                              │

00:00:12 #337 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #338 [Verbose] >

00:00:12 #339 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #340 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #341 [Verbose] > │ ## empty2Tests                                                               │

00:00:12 #342 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #343 [Verbose] >

00:00:12 #344 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #345 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #346 [Verbose] > │ Test: Empty2                                                                 │

00:00:12 #347 [Verbose] > │                                                                              │

00:00:12 #348 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #349 [Verbose] > │ Test case 1. A. Time: 59L                                                    │

00:00:12 #350 [Verbose] > │                                                                              │

00:00:12 #351 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #352 [Verbose] > │ Test case 1. A. Time: 53L                                                    │

00:00:12 #353 [Verbose] > │                                                                              │

00:00:12 #354 [Verbose] > │ Input   | Expected        | Result  | Best                                   │

00:00:12 #355 [Verbose] > │ ---     | ---             | ---     | ---                                    │

00:00:12 #356 [Verbose] > │ (a, a)  | a               | a       | (1, 59)                                │

00:00:12 #357 [Verbose] > │ (a, a)  | a               | a       | (1, 53)                                │

00:00:12 #358 [Verbose] > │                                                                              │

00:00:12 #359 [Verbose] > │ Averages                                                                     │

00:00:12 #360 [Verbose] > │ Test case 1. Average Time: 56L                                               │

00:00:12 #361 [Verbose] > │                                                                              │

00:00:12 #362 [Verbose] > │ Ranking                                                                      │

00:00:12 #363 [Verbose] > │ Test case 1. Average Time: 56L                                               │

00:00:12 #364 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #365 [Verbose] >

00:00:12 #366 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:12 #367 [Verbose] > //// test

00:00:12 #368 [Verbose] >

00:00:12 #369 [Verbose] > let solutions = [[

00:00:12 #370 [Verbose] >     "A",

00:00:12 #371 [Verbose] >     fun (a, _b) ->

00:00:12 #372 [Verbose] >         a

00:00:12 #373 [Verbose] > ]]

00:00:12 #374 [Verbose] > let testCases = seq {

00:00:12 #375 [Verbose] >     ("a", "a"), "a"

00:00:12 #376 [Verbose] >     ("a", "a"), "a"

00:00:12 #377 [Verbose] > }

00:00:12 #378 [Verbose] > let rec empty2Tests = runAll (nameof empty2Tests) _count solutions testCases

00:00:12 #379 [Verbose] > empty2Tests

00:00:12 #380 [Verbose] > |> sortResultList

00:00:12 #381 [Verbose] >

00:00:12 #382 [Verbose] > ╭─[ 237.18ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #383 [Verbose] > │                                                                              │

00:00:12 #384 [Verbose] > │                                                                              │

00:00:12 #385 [Verbose] > │ Test: empty2Tests                                                            │

00:00:12 #386 [Verbose] > │                                                                              │

00:00:12 #387 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #388 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:12 #389 [Verbose] > │                                                                              │

00:00:12 #390 [Verbose] > │ Solution: (a, a)                                                             │

00:00:12 #391 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:12 #392 [Verbose] > │                                                                              │

00:00:12 #393 [Verbose] > │ Input 	| Expected	| Result	| Best                                                  │

00:00:12 #394 [Verbose] > │ ---   	| ---     	| ---   	| ---                                                   │

00:00:12 #395 [Verbose] > │ (a, a)	| a       	| a     	| (1, 0)                                                │

00:00:12 #396 [Verbose] > │ (a, a)	| a       	| a     	| (1, 0)                                                │

00:00:12 #397 [Verbose] > │                                                                              │

00:00:12 #398 [Verbose] > │ Average Ranking                                                              │

00:00:12 #399 [Verbose] > │ Test case 1. Average Time: 0L                                                │

00:00:12 #400 [Verbose] > │                                                                              │

00:00:12 #401 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #402 [Verbose] >

00:00:12 #403 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #404 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #405 [Verbose] > │ ## emptyTests                                                                │

00:00:12 #406 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #407 [Verbose] >

00:00:12 #408 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #409 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #410 [Verbose] > │ Test: Empty                                                                  │

00:00:12 #411 [Verbose] > │                                                                              │

00:00:12 #412 [Verbose] > │ Solution: 0                                                                  │

00:00:12 #413 [Verbose] > │ Test case 1. A. Time: 61L                                                    │

00:00:12 #414 [Verbose] > │                                                                              │

00:00:12 #415 [Verbose] > │ Solution: 2                                                                  │

00:00:12 #416 [Verbose] > │ Test case 1. A. Time: 62L                                                    │

00:00:12 #417 [Verbose] > │                                                                              │

00:00:12 #418 [Verbose] > │ Solution: 5                                                                  │

00:00:12 #419 [Verbose] > │ Test case 1. A. Time: 70L                                                    │

00:00:12 #420 [Verbose] > │                                                                              │

00:00:12 #421 [Verbose] > │ Input   | Expected        | Result  | Best                                   │

00:00:12 #422 [Verbose] > │ ---     | ---             | ---     | ---                                    │

00:00:12 #423 [Verbose] > │ 0       | 0               | 0       | (1, 61)                                │

00:00:12 #424 [Verbose] > │ 2       | 2               | 2       | (1, 62)                                │

00:00:12 #425 [Verbose] > │ 5       | 5               | 5       | (1, 70)                                │

00:00:12 #426 [Verbose] > │                                                                              │

00:00:12 #427 [Verbose] > │ Averages                                                                     │

00:00:12 #428 [Verbose] > │ Test case 1. Average Time: 64L                                               │

00:00:12 #429 [Verbose] > │                                                                              │

00:00:12 #430 [Verbose] > │ Ranking                                                                      │

00:00:12 #431 [Verbose] > │ Test case 1. Average Time: 64L                                               │

00:00:12 #432 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #433 [Verbose] >

00:00:12 #434 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:12 #435 [Verbose] > //// test

00:00:12 #436 [Verbose] >

00:00:12 #437 [Verbose] > let solutions = [[

00:00:12 #438 [Verbose] >     "A",

00:00:12 #439 [Verbose] >     fun n ->

00:00:12 #440 [Verbose] >         n + 0

00:00:12 #441 [Verbose] > ]]

00:00:12 #442 [Verbose] > let testCases = seq {

00:00:12 #443 [Verbose] >     0, 0

00:00:12 #444 [Verbose] >     2, 2

00:00:12 #445 [Verbose] >     5, 5

00:00:12 #446 [Verbose] > }

00:00:12 #447 [Verbose] > let rec emptyTests = runAll (nameof emptyTests) _count solutions testCases

00:00:12 #448 [Verbose] > emptyTests

00:00:12 #449 [Verbose] > |> sortResultList

00:00:12 #450 [Verbose] >

00:00:12 #451 [Verbose] > ╭─[ 370.59ms - stdout ]────────────────────────────────────────────────────────╮

00:00:12 #452 [Verbose] > │                                                                              │

00:00:12 #453 [Verbose] > │                                                                              │

00:00:12 #454 [Verbose] > │ Test: emptyTests                                                             │

00:00:12 #455 [Verbose] > │                                                                              │

00:00:12 #456 [Verbose] > │ Solution: 0                                                                  │

00:00:12 #457 [Verbose] > │ Test case 1. A. Time: 2L                                                     │

00:00:12 #458 [Verbose] > │                                                                              │

00:00:12 #459 [Verbose] > │ Solution: 2                                                                  │

00:00:12 #460 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:12 #461 [Verbose] > │                                                                              │

00:00:12 #462 [Verbose] > │ Solution: 5                                                                  │

00:00:12 #463 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:12 #464 [Verbose] > │                                                                              │

00:00:12 #465 [Verbose] > │ Input	| Expected	| Result	| Best                                                   │

00:00:12 #466 [Verbose] > │ ---  	| ---     	| ---   	| ---                                                    │

00:00:12 #467 [Verbose] > │ 0    	| 0       	| 0     	| (1, 2)                                                 │

00:00:12 #468 [Verbose] > │ 2    	| 2       	| 2     	| (1, 0)                                                 │

00:00:12 #469 [Verbose] > │ 5    	| 5       	| 5     	| (1, 0)                                                 │

00:00:12 #470 [Verbose] > │                                                                              │

00:00:12 #471 [Verbose] > │ Average Ranking                                                              │

00:00:12 #472 [Verbose] > │ Test case 1. Average Time: 0L                                                │

00:00:12 #473 [Verbose] > │                                                                              │

00:00:12 #474 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #475 [Verbose] >

00:00:12 #476 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:12 #477 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:12 #478 [Verbose] > │ ## uniqueLettersTests                                                        │

00:00:12 #479 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:12 #480 [Verbose] >

00:00:12 #481 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:13 #482 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:13 #483 [Verbose] > │ Test: UniqueLetters                                                          │

00:00:13 #484 [Verbose] > │                                                                              │

00:00:13 #485 [Verbose] > │ Solution: abc                                                                │

00:00:13 #486 [Verbose] > │ Test case 1. A. Time: 1512L                                                  │

00:00:13 #487 [Verbose] > │ Test case 2. B. Time: 1947L                                                  │

00:00:13 #488 [Verbose] > │ Test case 3. C. Time: 2023L                                                  │

00:00:13 #489 [Verbose] > │ Test case 4. D. Time: 1358L                                                  │

00:00:13 #490 [Verbose] > │ Test case 5. E. Time: 1321L                                                  │

00:00:13 #491 [Verbose] > │ Test case 6. F. Time: 1346L                                                  │

00:00:13 #492 [Verbose] > │ Test case 7. G. Time: 1304L                                                  │

00:00:13 #493 [Verbose] > │ Test case 8. H. Time: 1383L                                                  │

00:00:13 #494 [Verbose] > │ Test case 9. I. Time: 1495L                                                  │

00:00:13 #495 [Verbose] > │ Test case 10. J. Time: 1245L                                                 │

00:00:13 #496 [Verbose] > │ Test case 11. K. Time: 1219L                                                 │

00:00:13 #497 [Verbose] > │                                                                              │

00:00:13 #498 [Verbose] > │ Solution: accabb                                                             │

00:00:13 #499 [Verbose] > │ Test case 1. A. Time: 1648L                                                  │

00:00:13 #500 [Verbose] > │ Test case 2. B. Time: 2061L                                                  │

00:00:13 #501 [Verbose] > │ Test case 3. C. Time: 2413L                                                  │

00:00:13 #502 [Verbose] > │ Test case 4. D. Time: 1561L                                                  │

00:00:13 #503 [Verbose] > │ Test case 5. E. Time: 1593L                                                  │

00:00:13 #504 [Verbose] > │ Test case 6. F. Time: 1518L                                                  │

00:00:13 #505 [Verbose] > │ Test case 7. G. Time: 1415L                                                  │

00:00:13 #506 [Verbose] > │ Test case 8. H. Time: 1510L                                                  │

00:00:13 #507 [Verbose] > │ Test case 9. I. Time: 1445L                                                  │

00:00:13 #508 [Verbose] > │ Test case 10. J. Time: 1636L                                                 │

00:00:13 #509 [Verbose] > │ Test case 11. K. Time: 1317L                                                 │

00:00:13 #510 [Verbose] > │                                                                              │

00:00:13 #511 [Verbose] > │ Solution: pprrqqpp                                                           │

00:00:13 #512 [Verbose] > │ Test case 1. A. Time: 2255L                                                  │

00:00:13 #513 [Verbose] > │ Test case 2. B. Time: 2408L                                                  │

00:00:13 #514 [Verbose] > │ Test case 3. C. Time: 2393L                                                  │

00:00:13 #515 [Verbose] > │ Test case 4. D. Time: 1675L                                                  │

00:00:13 #516 [Verbose] > │ Test case 5. E. Time: 1911L                                                  │

00:00:13 #517 [Verbose] > │ Test case 6. F. Time: 2126L                                                  │

00:00:13 #518 [Verbose] > │ Test case 7. G. Time: 1504L                                                  │

00:00:13 #519 [Verbose] > │ Test case 8. H. Time: 1715L                                                  │

00:00:13 #520 [Verbose] > │ Test case 9. I. Time: 1537L                                                  │

00:00:13 #521 [Verbose] > │ Test case 10. J. Time: 1522L                                                 │

00:00:13 #522 [Verbose] > │ Test case 11. K. Time: 1322L                                                 │

00:00:13 #523 [Verbose] > │                                                                              │

00:00:13 #524 [Verbose] > │ Solution:                                                                    │

00:00:13 #525 [Verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │

00:00:13 #526 [Verbose] > │ bbb                                                                          │

00:00:13 #527 [Verbose] > │ Test case 1. A. Time: 13073L                                                 │

00:00:13 #528 [Verbose] > │ Test case 2. B. Time: 11519L                                                 │

00:00:13 #529 [Verbose] > │ Test case 3. C. Time: 8373L                                                  │

00:00:13 #530 [Verbose] > │ Test case 4. D. Time: 5860L                                                  │

00:00:13 #531 [Verbose] > │ Test case 5. E. Time: 6490L                                                  │

00:00:13 #532 [Verbose] > │ Test case 6. F. Time: 6325L                                                  │

00:00:13 #533 [Verbose] > │ Test case 7. G. Time: 5799L                                                  │

00:00:13 #534 [Verbose] > │ Test case 8. H. Time: 7099L                                                  │

00:00:13 #535 [Verbose] > │ Test case 9. I. Time: 6133L                                                  │

00:00:13 #536 [Verbose] > │ Test case 10. J. Time: 5993L                                                 │

00:00:13 #537 [Verbose] > │ Test case 11. K. Time: 2040L                                                 │

00:00:13 #538 [Verbose] > │                                                                              │

00:00:13 #539 [Verbose] > │ Input                                                                        │

00:00:13 #540 [Verbose] > │ | Expected        | Result  | Best                                           │

00:00:13 #541 [Verbose] > │ ---                                                                          │

00:00:13 #542 [Verbose] > │                                                                              │

00:00:13 #543 [Verbose] > │ | ---             | ---     | ---                                            │

00:00:13 #544 [Verbose] > │ abc                                                                          │

00:00:13 #545 [Verbose] > │                                                                              │

00:00:13 #546 [Verbose] > │ | abc             | abc     | (11, 1219)                                     │

00:00:13 #547 [Verbose] > │ accabb                                                                       │

00:00:13 #548 [Verbose] > │ | acb             | acb     | (11, 1317)                                     │

00:00:13 #549 [Verbose] > │ pprrqqpp                                                                     │

00:00:13 #550 [Verbose] > │ | prq             | prq     | (11, 1322)                                     │

00:00:13 #551 [Verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │

00:00:13 #552 [Verbose] > │ bbb | acb             | acb     | (11, 2040)                                 │

00:00:13 #553 [Verbose] > │                                                                              │

00:00:13 #554 [Verbose] > │ Averages                                                                     │

00:00:13 #555 [Verbose] > │ Test case 1. Average Time: 4622L                                             │

00:00:13 #556 [Verbose] > │ Test case 2. Average Time: 4483L                                             │

00:00:13 #557 [Verbose] > │ Test case 3. Average Time: 3800L                                             │

00:00:13 #558 [Verbose] > │ Test case 4. Average Time: 2613L                                             │

00:00:13 #559 [Verbose] > │ Test case 5. Average Time: 2828L                                             │

00:00:13 #560 [Verbose] > │ Test case 6. Average Time: 2828L                                             │

00:00:13 #561 [Verbose] > │ Test case 7. Average Time: 2505L                                             │

00:00:13 #562 [Verbose] > │ Test case 8. Average Time: 2926L                                             │

00:00:13 #563 [Verbose] > │ Test case 9. Average Time: 2652L                                             │

00:00:13 #564 [Verbose] > │ Test case 10. Average Time: 2599L                                            │

00:00:13 #565 [Verbose] > │ Test case 11. Average Time: 1474L                                            │

00:00:13 #566 [Verbose] > │                                                                              │

00:00:13 #567 [Verbose] > │ Ranking                                                                      │

00:00:13 #568 [Verbose] > │ Test case 1. Average Time: 4622L                                             │

00:00:13 #569 [Verbose] > │ Test case 2. Average Time: 4483L                                             │

00:00:13 #570 [Verbose] > │ Test case 3. Average Time: 3800L                                             │

00:00:13 #571 [Verbose] > │ Test case 8. Average Time: 2926L                                             │

00:00:13 #572 [Verbose] > │ Test case 5. Average Time: 2828L                                             │

00:00:13 #573 [Verbose] > │ Test case 6. Average Time: 2828L                                             │

00:00:13 #574 [Verbose] > │ Test case 9. Average Time: 2652L                                             │

00:00:13 #575 [Verbose] > │ Test case 4. Average Time: 2613L                                             │

00:00:13 #576 [Verbose] > │ Test case 10. Average Time: 2599L                                            │

00:00:13 #577 [Verbose] > │ Test case 7. Average Time: 2505L                                             │

00:00:13 #578 [Verbose] > │ Test case 11. Average Time: 1474L                                            │

00:00:13 #579 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:13 #580 [Verbose] >

00:00:13 #581 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:13 #582 [Verbose] > //// test

00:00:13 #583 [Verbose] >

00:00:13 #584 [Verbose] > let solutions = [[

00:00:13 #585 [Verbose] >     "A",

00:00:13 #586 [Verbose] >     fun input ->

00:00:13 #587 [Verbose] >         input

00:00:13 #588 [Verbose] >         |> Seq.toList

00:00:13 #589 [Verbose] >         |> List.fold (fun acc x -> if List.contains x acc then acc else acc @ [[

00:00:13 #590 [Verbose] > x ]]) [[]]

00:00:13 #591 [Verbose] >         |> Seq.toArray

00:00:13 #592 [Verbose] >         |> String

00:00:13 #593 [Verbose] >

00:00:13 #594 [Verbose] >     "B",

00:00:13 #595 [Verbose] >     fun input ->

00:00:13 #596 [Verbose] >         input

00:00:13 #597 [Verbose] >         |> Seq.rev

00:00:13 #598 [Verbose] >         |> fun list -> Seq.foldBack (fun x acc -> if List.contains x acc then

00:00:13 #599 [Verbose] > acc else x :: acc) list [[]]

00:00:13 #600 [Verbose] >         |> Seq.rev

00:00:13 #601 [Verbose] >         |> Seq.toArray

00:00:13 #602 [Verbose] >         |> String

00:00:13 #603 [Verbose] >

00:00:13 #604 [Verbose] >     "C",

00:00:13 #605 [Verbose] >     fun input ->

00:00:13 #606 [Verbose] >         input

00:00:13 #607 [Verbose] >         |> Seq.rev

00:00:13 #608 [Verbose] >         |> fun list -> Seq.foldBack (fun x (set, acc) -> if Set.contains x set

00:00:13 #609 [Verbose] > then set, acc else set.Add x, x :: acc) list (Set.empty, [[]])

00:00:13 #610 [Verbose] >         |> snd

00:00:13 #611 [Verbose] >         |> Seq.rev

00:00:13 #612 [Verbose] >         |> Seq.toArray

00:00:13 #613 [Verbose] >         |> String

00:00:13 #614 [Verbose] >

00:00:13 #615 [Verbose] >     "D",

00:00:13 #616 [Verbose] >     fun input ->

00:00:13 #617 [Verbose] >         input

00:00:13 #618 [Verbose] >         |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc

00:00:13 #619 [Verbose] > else set.Add x, Array.append acc [[| x |]]) (Set.empty, [[||]])

00:00:13 #620 [Verbose] >         |> snd

00:00:13 #621 [Verbose] >         |> String

00:00:13 #622 [Verbose] >

00:00:13 #623 [Verbose] >     "E",

00:00:13 #624 [Verbose] >     fun input ->

00:00:13 #625 [Verbose] >         input

00:00:13 #626 [Verbose] >         |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc

00:00:13 #627 [Verbose] > else set.Add x, x :: acc) (Set.empty, [[]])

00:00:13 #628 [Verbose] >         |> snd

00:00:13 #629 [Verbose] >         |> List.rev

00:00:13 #630 [Verbose] >         |> List.toArray

00:00:13 #631 [Verbose] >         |> String

00:00:13 #632 [Verbose] >

00:00:13 #633 [Verbose] >     "F",

00:00:13 #634 [Verbose] >     fun input ->

00:00:13 #635 [Verbose] >         input

00:00:13 #636 [Verbose] >         |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc

00:00:13 #637 [Verbose] > else set.Add x, acc @ [[ x ]]) (Set.empty, [[]])

00:00:13 #638 [Verbose] >         |> snd

00:00:13 #639 [Verbose] >         |> List.toArray

00:00:13 #640 [Verbose] >         |> String

00:00:13 #641 [Verbose] >

00:00:13 #642 [Verbose] >     "G",

00:00:13 #643 [Verbose] >     fun input ->

00:00:13 #644 [Verbose] >         input

00:00:13 #645 [Verbose] >         |> Seq.fold (fun (set, acc) x -> if Set.contains x set then set, acc

00:00:13 #646 [Verbose] > else set.Add x, x :: acc) (Set.empty, [[]])

00:00:13 #647 [Verbose] >         |> snd

00:00:13 #648 [Verbose] >         |> List.toArray

00:00:13 #649 [Verbose] >         |> Array.rev

00:00:13 #650 [Verbose] >         |> String

00:00:13 #651 [Verbose] >

00:00:13 #652 [Verbose] >     "H",

00:00:13 #653 [Verbose] >     fun input ->

00:00:13 #654 [Verbose] >         input

00:00:13 #655 [Verbose] >         |> Seq.toList

00:00:13 #656 [Verbose] >         |> fun list ->

00:00:13 #657 [Verbose] >             let rec loop set = function

00:00:13 #658 [Verbose] >                 | head :: tail when Set.contains head set -> loop set tail

00:00:13 #659 [Verbose] >                 | head :: tail -> (loop (set.Add head) tail) @ [[ head ]]

00:00:13 #660 [Verbose] >                 | [[]] -> [[]]

00:00:13 #661 [Verbose] >             loop Set.empty list

00:00:13 #662 [Verbose] >             |> List.rev

00:00:13 #663 [Verbose] >         |> List.toArray

00:00:13 #664 [Verbose] >         |> String

00:00:13 #665 [Verbose] >

00:00:13 #666 [Verbose] >     "I",

00:00:13 #667 [Verbose] >     fun input ->

00:00:13 #668 [Verbose] >         input

00:00:13 #669 [Verbose] >         |> Seq.toList

00:00:13 #670 [Verbose] >         |> fun list ->

00:00:13 #671 [Verbose] >             let rec loop set = function

00:00:13 #672 [Verbose] >                 | head :: tail when Set.contains head set -> loop set tail

00:00:13 #673 [Verbose] >                 | head :: tail -> loop (set.Add head) tail |> Array.append [[|

00:00:13 #674 [Verbose] > head |]]

00:00:13 #675 [Verbose] >                 | [[]] -> [[||]]

00:00:13 #676 [Verbose] >             loop Set.empty list

00:00:13 #677 [Verbose] >         |> String

00:00:13 #678 [Verbose] >

00:00:13 #679 [Verbose] >     "J",

00:00:13 #680 [Verbose] >     fun input ->

00:00:13 #681 [Verbose] >         input

00:00:13 #682 [Verbose] >         |> Seq.toList

00:00:13 #683 [Verbose] >         |> fun list ->

00:00:13 #684 [Verbose] >             let rec loop set = function

00:00:13 #685 [Verbose] >                 | head :: tail when Set.contains head set -> loop set tail

00:00:13 #686 [Verbose] >                 | head :: tail -> head :: loop (set.Add head) tail

00:00:13 #687 [Verbose] >                 | [[]] -> [[]]

00:00:13 #688 [Verbose] >             loop Set.empty list

00:00:13 #689 [Verbose] >         |> List.toArray

00:00:13 #690 [Verbose] >         |> String

00:00:13 #691 [Verbose] >

00:00:13 #692 [Verbose] >     "K",

00:00:13 #693 [Verbose] >     fun input ->

00:00:13 #694 [Verbose] >         input

00:00:13 #695 [Verbose] >         |> Seq.distinct

00:00:13 #696 [Verbose] >         |> Seq.toArray

00:00:13 #697 [Verbose] >         |> String

00:00:13 #698 [Verbose] > ]]

00:00:13 #699 [Verbose] > let testCases = seq {

00:00:13 #700 [Verbose] >     "abc", "abc"

00:00:13 #701 [Verbose] >     "accabb", "acb"

00:00:13 #702 [Verbose] >     "pprrqqpp", "prq"

00:00:13 #703 [Verbose] >

00:00:13 #704 [Verbose] > "aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbbbbb

00:00:13 #705 [Verbose] > ", "acb"

00:00:13 #706 [Verbose] > }

00:00:13 #707 [Verbose] > let rec uniqueLettersTests = runAll (nameof uniqueLettersTests) _count solutions

00:00:13 #708 [Verbose] > testCases

00:00:13 #709 [Verbose] > uniqueLettersTests

00:00:13 #710 [Verbose] > |> sortResultList

00:00:18 #711 [Verbose] >

00:00:18 #712 [Verbose] > ╭─[ 5.26s - stdout ]───────────────────────────────────────────────────────────╮

00:00:18 #713 [Verbose] > │                                                                              │

00:00:18 #714 [Verbose] > │                                                                              │

00:00:18 #715 [Verbose] > │ Test: uniqueLettersTests                                                     │

00:00:18 #716 [Verbose] > │                                                                              │

00:00:18 #717 [Verbose] > │ Solution: abc                                                                │

00:00:18 #718 [Verbose] > │ Test case 1. A. Time: 4L                                                     │

00:00:18 #719 [Verbose] > │ Test case 2. B. Time: 6L                                                     │

00:00:18 #720 [Verbose] > │ Test case 3. C. Time: 4L                                                     │

00:00:18 #721 [Verbose] > │ Test case 4. D. Time: 2L                                                     │

00:00:18 #722 [Verbose] > │ Test case 5. E. Time: 5L                                                     │

00:00:18 #723 [Verbose] > │ Test case 6. F. Time: 1L                                                     │

00:00:18 #724 [Verbose] > │ Test case 7. G. Time: 1L                                                     │

00:00:18 #725 [Verbose] > │ Test case 8. H. Time: 2L                                                     │

00:00:18 #726 [Verbose] > │ Test case 9. I. Time: 2L                                                     │

00:00:18 #727 [Verbose] > │ Test case 10. J. Time: 1L                                                    │

00:00:18 #728 [Verbose] > │ Test case 11. K. Time: 3L                                                    │

00:00:18 #729 [Verbose] > │                                                                              │

00:00:18 #730 [Verbose] > │ Solution: accabb                                                             │

00:00:18 #731 [Verbose] > │ Test case 1. A. Time: 1L                                                     │

00:00:18 #732 [Verbose] > │ Test case 2. B. Time: 2L                                                     │

00:00:18 #733 [Verbose] > │ Test case 3. C. Time: 1L                                                     │

00:00:18 #734 [Verbose] > │ Test case 4. D. Time: 1L                                                     │

00:00:18 #735 [Verbose] > │ Test case 5. E. Time: 1L                                                     │

00:00:18 #736 [Verbose] > │ Test case 6. F. Time: 1L                                                     │

00:00:18 #737 [Verbose] > │ Test case 7. G. Time: 0L                                                     │

00:00:18 #738 [Verbose] > │ Test case 8. H. Time: 1L                                                     │

00:00:18 #739 [Verbose] > │ Test case 9. I. Time: 0L                                                     │

00:00:18 #740 [Verbose] > │ Test case 10. J. Time: 0L                                                    │

00:00:18 #741 [Verbose] > │ Test case 11. K. Time: 1L                                                    │

00:00:18 #742 [Verbose] > │                                                                              │

00:00:18 #743 [Verbose] > │ Solution: pprrqqpp                                                           │

00:00:18 #744 [Verbose] > │ Test case 1. A. Time: 1L                                                     │

00:00:18 #745 [Verbose] > │ Test case 2. B. Time: 1L                                                     │

00:00:18 #746 [Verbose] > │ Test case 3. C. Time: 1L                                                     │

00:00:18 #747 [Verbose] > │ Test case 4. D. Time: 1L                                                     │

00:00:18 #748 [Verbose] > │ Test case 5. E. Time: 1L                                                     │

00:00:18 #749 [Verbose] > │ Test case 6. F. Time: 1L                                                     │

00:00:18 #750 [Verbose] > │ Test case 7. G. Time: 1L                                                     │

00:00:18 #751 [Verbose] > │ Test case 8. H. Time: 1L                                                     │

00:00:18 #752 [Verbose] > │ Test case 9. I. Time: 1L                                                     │

00:00:18 #753 [Verbose] > │ Test case 10. J. Time: 1L                                                    │

00:00:18 #754 [Verbose] > │ Test case 11. K. Time: 1L                                                    │

00:00:18 #755 [Verbose] > │                                                                              │

00:00:18 #756 [Verbose] > │ Solution:                                                                    │

00:00:18 #757 [Verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │

00:00:18 #758 [Verbose] > │ bbb                                                                          │

00:00:18 #759 [Verbose] > │ Test case 1. A. Time: 13L                                                    │

00:00:18 #760 [Verbose] > │ Test case 2. B. Time: 9L                                                     │

00:00:18 #761 [Verbose] > │ Test case 3. C. Time: 12L                                                    │

00:00:18 #762 [Verbose] > │ Test case 4. D. Time: 7L                                                     │

00:00:18 #763 [Verbose] > │ Test case 5. E. Time: 9L                                                     │

00:00:18 #764 [Verbose] > │ Test case 6. F. Time: 9L                                                     │

00:00:18 #765 [Verbose] > │ Test case 7. G. Time: 8L                                                     │

00:00:18 #766 [Verbose] > │ Test case 8. H. Time: 8L                                                     │

00:00:18 #767 [Verbose] > │ Test case 9. I. Time: 7L                                                     │

00:00:18 #768 [Verbose] > │ Test case 10. J. Time: 8L                                                    │

00:00:18 #769 [Verbose] > │ Test case 11. K. Time: 3L                                                    │

00:00:18 #770 [Verbose] > │                                                                              │

00:00:18 #771 [Verbose] > │ Input                                                                        │

00:00:18 #772 [Verbose] > │ | Expected	| Result	| Best                                                       │

00:00:18 #773 [Verbose] > │ ---                                                                          │

00:00:18 #774 [Verbose] > │ | ---     	| ---   	| ---                                                        │

00:00:18 #775 [Verbose] > │ abc                                                                          │

00:00:18 #776 [Verbose] > │ | abc     	| abc   	| (6, 1)                                                     │

00:00:18 #777 [Verbose] > │ accabb                                                                       │

00:00:18 #778 [Verbose] > │ | acb     	| acb   	| (7, 0)                                                     │

00:00:18 #779 [Verbose] > │ pprrqqpp                                                                     │

00:00:18 #780 [Verbose] > │ | prq     	| prq   	| (1, 1)                                                     │

00:00:18 #781 [Verbose] > │ aaaaaaaaaaaaaaccccccabbbbbbbaaacccbbbaaccccccccccacbbbbbbbbbbbbbcccccccbbbbb │

00:00:18 #782 [Verbose] > │ bbb	| acb     	| acb   	| (11, 3)                                                  │

00:00:18 #783 [Verbose] > │                                                                              │

00:00:18 #784 [Verbose] > │ Average Ranking                                                              │

00:00:18 #785 [Verbose] > │ Test case 4. Average Time: 2L                                                │

00:00:18 #786 [Verbose] > │ Test case 7. Average Time: 2L                                                │

00:00:18 #787 [Verbose] > │ Test case 9. Average Time: 2L                                                │

00:00:18 #788 [Verbose] > │ Test case 10. Average Time: 2L                                               │

00:00:18 #789 [Verbose] > │ Test case 11. Average Time: 2L                                               │

00:00:18 #790 [Verbose] > │ Test case 6. Average Time: 3L                                                │

00:00:18 #791 [Verbose] > │ Test case 8. Average Time: 3L                                                │

00:00:18 #792 [Verbose] > │ Test case 1. Average Time: 4L                                                │

00:00:18 #793 [Verbose] > │ Test case 2. Average Time: 4L                                                │

00:00:18 #794 [Verbose] > │ Test case 3. Average Time: 4L                                                │

00:00:18 #795 [Verbose] > │ Test case 5. Average Time: 4L                                                │

00:00:18 #796 [Verbose] > │                                                                              │

00:00:18 #797 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #798 [Verbose] >

00:00:18 #799 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:18 #800 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:18 #801 [Verbose] > │ ## rotateStringsTests                                                        │

00:00:18 #802 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #803 [Verbose] >

00:00:18 #804 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:18 #805 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:18 #806 [Verbose] > │ https://www.hackerrank.com/challenges/rotate-string/forum                    │

00:00:18 #807 [Verbose] > │                                                                              │

00:00:18 #808 [Verbose] > │ Test: RotateStrings                                                          │

00:00:18 #809 [Verbose] > │                                                                              │

00:00:18 #810 [Verbose] > │ Solution: abc                                                                │

00:00:18 #811 [Verbose] > │ Test case 1. A. Time: 1842L                                                  │

00:00:18 #812 [Verbose] > │ Test case 2. B. Time: 1846L                                                  │

00:00:18 #813 [Verbose] > │ Test case 3. C. Time: 1936L                                                  │

00:00:18 #814 [Verbose] > │ Test case 4. CA. Time: 2224L                                                 │

00:00:18 #815 [Verbose] > │ Test case 5. CB. Time: 2329L                                                 │

00:00:18 #816 [Verbose] > │ Test case 6. D. Time: 2474L                                                  │

00:00:18 #817 [Verbose] > │ Test case 7. E. Time: 1664L                                                  │

00:00:18 #818 [Verbose] > │ Test case 8. F. Time: 1517L                                                  │

00:00:18 #819 [Verbose] > │ Test case 9. FA. Time: 1651L                                                 │

00:00:18 #820 [Verbose] > │ Test case 10. FB. Time: 3764L                                                │

00:00:18 #821 [Verbose] > │ Test case 11. FC. Time: 5415L                                                │

00:00:18 #822 [Verbose] > │                                                                              │

00:00:18 #823 [Verbose] > │ Solution: abcde                                                              │

00:00:18 #824 [Verbose] > │ Test case 1. A. Time: 3356L                                                  │

00:00:18 #825 [Verbose] > │ Test case 2. B. Time: 2592L                                                  │

00:00:18 #826 [Verbose] > │ Test case 3. C. Time: 2346L                                                  │

00:00:18 #827 [Verbose] > │ Test case 4. CA. Time: 2997L                                                 │

00:00:18 #828 [Verbose] > │ Test case 5. CB. Time: 3061L                                                 │

00:00:18 #829 [Verbose] > │ Test case 6. D. Time: 4051L                                                  │

00:00:18 #830 [Verbose] > │ Test case 7. E. Time: 1905L                                                  │

00:00:18 #831 [Verbose] > │ Test case 8. F. Time: 1771L                                                  │

00:00:18 #832 [Verbose] > │ Test case 9. FA. Time: 2175L                                                 │

00:00:18 #833 [Verbose] > │ Test case 10. FB. Time: 3275L                                                │

00:00:18 #834 [Verbose] > │ Test case 11. FC. Time: 5266L                                                │

00:00:18 #835 [Verbose] > │                                                                              │

00:00:18 #836 [Verbose] > │ Solution: abcdefghi                                                          │

00:00:18 #837 [Verbose] > │ Test case 1. A. Time: 4492L                                                  │

00:00:18 #838 [Verbose] > │ Test case 2. B. Time: 3526L                                                  │

00:00:18 #839 [Verbose] > │ Test case 3. C. Time: 3583L                                                  │

00:00:18 #840 [Verbose] > │ Test case 4. CA. Time: 3711L                                                 │

00:00:18 #841 [Verbose] > │ Test case 5. CB. Time: 4783L                                                 │

00:00:18 #842 [Verbose] > │ Test case 6. D. Time: 7557L                                                  │

00:00:18 #843 [Verbose] > │ Test case 7. E. Time: 3452L                                                  │

00:00:18 #844 [Verbose] > │ Test case 8. F. Time: 3050L                                                  │

00:00:18 #845 [Verbose] > │ Test case 9. FA. Time: 3275L                                                 │

00:00:18 #846 [Verbose] > │ Test case 10. FB. Time: 4635L                                                │

00:00:18 #847 [Verbose] > │ Test case 11. FC. Time: 5616L                                                │

00:00:18 #848 [Verbose] > │                                                                              │

00:00:18 #849 [Verbose] > │ Solution: abab                                                               │

00:00:18 #850 [Verbose] > │ Test case 1. A. Time: 2093L                                                  │

00:00:18 #851 [Verbose] > │ Test case 2. B. Time: 1843L                                                  │

00:00:18 #852 [Verbose] > │ Test case 3. C. Time: 1746L                                                  │

00:00:18 #853 [Verbose] > │ Test case 4. CA. Time: 2085L                                                 │

00:00:18 #854 [Verbose] > │ Test case 5. CB. Time: 2139L                                                 │

00:00:18 #855 [Verbose] > │ Test case 6. D. Time: 2095L                                                  │

00:00:18 #856 [Verbose] > │ Test case 7. E. Time: 1723L                                                  │

00:00:18 #857 [Verbose] > │ Test case 8. F. Time: 1558L                                                  │

00:00:18 #858 [Verbose] > │ Test case 9. FA. Time: 1620L                                                 │

00:00:18 #859 [Verbose] > │ Test case 10. FB. Time: 2319L                                                │

00:00:18 #860 [Verbose] > │ Test case 11. FC. Time: 3918L                                                │

00:00:18 #861 [Verbose] > │                                                                              │

00:00:18 #862 [Verbose] > │ Solution: aa                                                                 │

00:00:18 #863 [Verbose] > │ Test case 1. A. Time: 1107L                                                  │

00:00:18 #864 [Verbose] > │ Test case 2. B. Time: 1241L                                                  │

00:00:18 #865 [Verbose] > │ Test case 3. C. Time: 1183L                                                  │

00:00:18 #866 [Verbose] > │ Test case 4. CA. Time: 1563L                                                 │

00:00:18 #867 [Verbose] > │ Test case 5. CB. Time: 1525L                                                 │

00:00:18 #868 [Verbose] > │ Test case 6. D. Time: 1591L                                                  │

00:00:18 #869 [Verbose] > │ Test case 7. E. Time: 1327L                                                  │

00:00:18 #870 [Verbose] > │ Test case 8. F. Time: 1151L                                                  │

00:00:18 #871 [Verbose] > │ Test case 9. FA. Time: 1180L                                                 │

00:00:18 #872 [Verbose] > │ Test case 10. FB. Time: 1733L                                                │

00:00:18 #873 [Verbose] > │ Test case 11. FC. Time: 2817L                                                │

00:00:18 #874 [Verbose] > │                                                                              │

00:00:18 #875 [Verbose] > │ Solution: z                                                                  │

00:00:18 #876 [Verbose] > │ Test case 1. A. Time: 816L                                                   │

00:00:18 #877 [Verbose] > │ Test case 2. B. Time: 745L                                                   │

00:00:18 #878 [Verbose] > │ Test case 3. C. Time: 928L                                                   │

00:00:18 #879 [Verbose] > │ Test case 4. CA. Time: 1375L                                                 │

00:00:18 #880 [Verbose] > │ Test case 5. CB. Time: 1029L                                                 │

00:00:18 #881 [Verbose] > │ Test case 6. D. Time: 852L                                                   │

00:00:18 #882 [Verbose] > │ Test case 7. E. Time: 712L                                                   │

00:00:18 #883 [Verbose] > │ Test case 8. F. Time: 263L                                                   │

00:00:18 #884 [Verbose] > │ Test case 9. FA. Time: 232L                                                  │

00:00:18 #885 [Verbose] > │ Test case 10. FB. Time: 773L                                                 │

00:00:18 #886 [Verbose] > │ Test case 11. FC. Time: 1789L                                                │

00:00:18 #887 [Verbose] > │                                                                              │

00:00:18 #888 [Verbose] > │ Input           | Expected                                                   │

00:00:18 #889 [Verbose] > │                                                                              │

00:00:18 #890 [Verbose] > │ | Result                                                                     │

00:00:18 #891 [Verbose] > │                                                                              │

00:00:18 #892 [Verbose] > │ | Best                                                                       │

00:00:18 #893 [Verbose] > │ ---             | ---                                                        │

00:00:18 #894 [Verbose] > │                                                                              │

00:00:18 #895 [Verbose] > │ | ---                                                                        │

00:00:18 #896 [Verbose] > │                                                                              │

00:00:18 #897 [Verbose] > │ | ---                                                                        │

00:00:18 #898 [Verbose] > │ abc             | bca cab abc                                                │

00:00:18 #899 [Verbose] > │                                                                              │

00:00:18 #900 [Verbose] > │ | bca cab abc                                                                │

00:00:18 #901 [Verbose] > │                                                                              │

00:00:18 #902 [Verbose] > │ | (8, 1517)                                                                  │

00:00:18 #903 [Verbose] > │ abcde           | bcdea cdeab deabc eabcd abcde                              │

00:00:18 #904 [Verbose] > │ | bcdea cdeab deabc eabcd abcde                                              │

00:00:18 #905 [Verbose] > │ | (8, 1771)                                                                  │

00:00:18 #906 [Verbose] > │ abcdefghi       | bcdefghia cdefghiab defghiabc efghiabcd fghiabcde          │

00:00:18 #907 [Verbose] > │ ghiabcdef hiabcdefg iabcdefgh abcdefghi       | bcdefghia cdefghiab          │

00:00:18 #908 [Verbose] > │ defghiabc efghiabcd fghiabcde ghiabcdef hiabcdefg iabcdefgh abcdefghi        │

00:00:18 #909 [Verbose] > │ | (8, 3050)                                                                  │

00:00:18 #910 [Verbose] > │ abab            | baba abab baba abab                                        │

00:00:18 #911 [Verbose] > │                                                                              │

00:00:18 #912 [Verbose] > │ | baba abab baba abab                                                        │

00:00:18 #913 [Verbose] > │                                                                              │

00:00:18 #914 [Verbose] > │ | (8, 1558)                                                                  │

00:00:18 #915 [Verbose] > │ aa              | aa aa                                                      │

00:00:18 #916 [Verbose] > │                                                                              │

00:00:18 #917 [Verbose] > │ | aa aa                                                                      │

00:00:18 #918 [Verbose] > │                                                                              │

00:00:18 #919 [Verbose] > │ | (1, 1107)                                                                  │

00:00:18 #920 [Verbose] > │ z               | z                                                          │

00:00:18 #921 [Verbose] > │                                                                              │

00:00:18 #922 [Verbose] > │ | z                                                                          │

00:00:18 #923 [Verbose] > │                                                                              │

00:00:18 #924 [Verbose] > │ | (9, 232)                                                                   │

00:00:18 #925 [Verbose] > │                                                                              │

00:00:18 #926 [Verbose] > │ Averages                                                                     │

00:00:18 #927 [Verbose] > │ Test case 1. Average Time: 2284L                                             │

00:00:18 #928 [Verbose] > │ Test case 2. Average Time: 1965L                                             │

00:00:18 #929 [Verbose] > │ Test case 3. Average Time: 1953L                                             │

00:00:18 #930 [Verbose] > │ Test case 4. Average Time: 2325L                                             │

00:00:18 #931 [Verbose] > │ Test case 5. Average Time: 2477L                                             │

00:00:18 #932 [Verbose] > │ Test case 6. Average Time: 3103L                                             │

00:00:18 #933 [Verbose] > │ Test case 7. Average Time: 1797L                                             │

00:00:18 #934 [Verbose] > │ Test case 8. Average Time: 1551L                                             │

00:00:18 #935 [Verbose] > │ Test case 9. Average Time: 1688L                                             │

00:00:18 #936 [Verbose] > │ Test case 10. Average Time: 2749L                                            │

00:00:18 #937 [Verbose] > │ Test case 11. Average Time: 4136L                                            │

00:00:18 #938 [Verbose] > │                                                                              │

00:00:18 #939 [Verbose] > │ Ranking                                                                      │

00:00:18 #940 [Verbose] > │ Test case 11. Average Time: 4136L                                            │

00:00:18 #941 [Verbose] > │ Test case 6. Average Time: 3103L                                             │

00:00:18 #942 [Verbose] > │ Test case 10. Average Time: 2749L                                            │

00:00:18 #943 [Verbose] > │ Test case 5. Average Time: 2477L                                             │

00:00:18 #944 [Verbose] > │ Test case 4. Average Time: 2325L                                             │

00:00:18 #945 [Verbose] > │ Test case 1. Average Time: 2284L                                             │

00:00:18 #946 [Verbose] > │ Test case 2. Average Time: 1965L                                             │

00:00:18 #947 [Verbose] > │ Test case 3. Average Time: 1953L                                             │

00:00:18 #948 [Verbose] > │ Test case 7. Average Time: 1797L                                             │

00:00:18 #949 [Verbose] > │ Test case 9. Average Time: 1688L                                             │

00:00:18 #950 [Verbose] > │ Test case 8. Average Time: 1551L                                             │

00:00:18 #951 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:18 #952 [Verbose] >

00:00:18 #953 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:00:18 #954 [Verbose] > //// test

00:00:18 #955 [Verbose] >

00:00:18 #956 [Verbose] > let solutions = [[

00:00:18 #957 [Verbose] >     "A",

00:00:18 #958 [Verbose] >     fun (input: string) ->

00:00:18 #959 [Verbose] >         let resultList =

00:00:18 #960 [Verbose] >             List.fold (fun acc x ->

00:00:18 #961 [Verbose] >                 let rotate (text: string) (letter: string) = text.Substring (1,

00:00:18 #962 [Verbose] > input.Length - 1) + letter

00:00:18 #963 [Verbose] >                 [[ rotate (if acc.IsEmpty then input else acc.Head) (string x)

00:00:18 #964 [Verbose] > ]] @ acc

00:00:18 #965 [Verbose] >             ) [[]] (Seq.toList input)

00:00:18 #966 [Verbose] >

00:00:18 #967 [Verbose] >         List.foldBack (fun acc x -> x + acc + " ") resultList ""

00:00:18 #968 [Verbose] >         |> fun x -> x.TrimEnd ()

00:00:18 #969 [Verbose] >

00:00:18 #970 [Verbose] >     "B",

00:00:18 #971 [Verbose] >     fun input ->

00:00:18 #972 [Verbose] >         input

00:00:18 #973 [Verbose] >         |> Seq.toList

00:00:18 #974 [Verbose] >         |> List.fold (fun (acc: string list) letter ->

00:00:18 #975 [Verbose] >             let last =

00:00:18 #976 [Verbose] >                 if acc.IsEmpty

00:00:18 #977 [Verbose] >                 then input

00:00:18 #978 [Verbose] >                 else acc.Head

00:00:18 #979 [Verbose] >

00:00:18 #980 [Verbose] >             let item = last.[[1 .. input.Length - 1]] + string letter

00:00:18 #981 [Verbose] >

00:00:18 #982 [Verbose] >             item :: acc

00:00:18 #983 [Verbose] >         ) [[]]

00:00:18 #984 [Verbose] >         |> List.rev

00:00:18 #985 [Verbose] >         |> String.concat " "

00:00:18 #986 [Verbose] >

00:00:18 #987 [Verbose] >     "C",

00:00:18 #988 [Verbose] >     fun input ->

00:00:18 #989 [Verbose] >         input

00:00:18 #990 [Verbose] >         |> Seq.toList

00:00:18 #991 [Verbose] >         |> List.fold (fun (acc: string list) letter -> acc.Head.[[ 1 ..

00:00:18 #992 [Verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]

00:00:18 #993 [Verbose] >         |> List.rev

00:00:18 #994 [Verbose] >         |> List.skip 1

00:00:18 #995 [Verbose] >         |> String.concat " "

00:00:18 #996 [Verbose] >

00:00:18 #997 [Verbose] >     "CA",

00:00:18 #998 [Verbose] >     fun input ->

00:00:18 #999 [Verbose] >         input

00:00:18 #1000 [Verbose] >         |> Seq.fold (fun (acc: string list) letter -> acc.Head.[[ 1 ..

00:00:18 #1001 [Verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]

00:00:18 #1002 [Verbose] >         |> Seq.rev

00:00:18 #1003 [Verbose] >         |> Seq.skip 1

00:00:18 #1004 [Verbose] >         |> String.concat " "

00:00:18 #1005 [Verbose] >

00:00:18 #1006 [Verbose] >     "CB",

00:00:18 #1007 [Verbose] >     fun input ->

00:00:18 #1008 [Verbose] >         input

00:00:18 #1009 [Verbose] >         |> Seq.toArray

00:00:18 #1010 [Verbose] >         |> Array.fold (fun (acc: string[[]]) letter -> acc |> Array.append [[|

00:00:18 #1011 [Verbose] > acc.[[0]].[[ 1 .. input.Length - 1 ]] + string letter |]]) [[| input |]]

00:00:18 #1012 [Verbose] >         |> Array.rev

00:00:18 #1013 [Verbose] >         |> Array.skip 1

00:00:18 #1014 [Verbose] >         |> String.concat " "

00:00:18 #1015 [Verbose] >

00:00:18 #1016 [Verbose] >     "D",

00:00:18 #1017 [Verbose] >     fun input ->

00:00:18 #1018 [Verbose] >         input

00:00:18 #1019 [Verbose] >         |> Seq.toList

00:00:18 #1020 [Verbose] >         |> fun list ->

00:00:18 #1021 [Verbose] >             let rec loop (acc: char list list) = function

00:00:18 #1022 [Verbose] >                 | _ when acc.Length = list.Length -> acc

00:00:18 #1023 [Verbose] >                 | head :: tail ->

00:00:18 #1024 [Verbose] >                     let item = tail @ [[ head ]]

00:00:18 #1025 [Verbose] >                     loop (item :: acc) item

00:00:18 #1026 [Verbose] >                 | [[]] -> [[]]

00:00:18 #1027 [Verbose] >             loop [[]] list

00:00:18 #1028 [Verbose] >         |> List.rev

00:00:18 #1029 [Verbose] >         |> List.map (List.toArray >> String)

00:00:18 #1030 [Verbose] >         |> String.concat " "

00:00:18 #1031 [Verbose] >

00:00:18 #1032 [Verbose] >     "E",

00:00:18 #1033 [Verbose] >     fun input ->

00:00:18 #1034 [Verbose] >         input

00:00:18 #1035 [Verbose] >         |> Seq.toList

00:00:18 #1036 [Verbose] >         |> fun list ->

00:00:18 #1037 [Verbose] >             let rec loop (last: string) = function

00:00:18 #1038 [Verbose] >                 | head :: tail ->

00:00:18 #1039 [Verbose] >                     let item = last.[[1 .. input.Length - 1]] + string head

00:00:18 #1040 [Verbose] >                     item :: loop item tail

00:00:18 #1041 [Verbose] >                 | [[]] -> [[]]

00:00:18 #1042 [Verbose] >             loop input list

00:00:18 #1043 [Verbose] >         |> String.concat " "

00:00:18 #1044 [Verbose] >

00:00:18 #1045 [Verbose] >     "F",

00:00:18 #1046 [Verbose] >     fun input ->

00:00:18 #1047 [Verbose] >         Array.singleton 0

00:00:18 #1048 [Verbose] >         |> Array.append [[| 1 .. input.Length - 1 |]]

00:00:18 #1049 [Verbose] >         |> Array.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])

00:00:18 #1050 [Verbose] >         |> String.concat " "

00:00:18 #1051 [Verbose] >

00:00:18 #1052 [Verbose] >     "FA",

00:00:18 #1053 [Verbose] >     fun input ->

00:00:18 #1054 [Verbose] >         List.singleton 0

00:00:18 #1055 [Verbose] >         |> List.append [[ 1 .. input.Length - 1 ]]

00:00:18 #1056 [Verbose] >         |> List.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])

00:00:18 #1057 [Verbose] >         |> String.concat " "

00:00:18 #1058 [Verbose] >

00:00:18 #1059 [Verbose] >     "FB",

00:00:18 #1060 [Verbose] >     fun input ->

00:00:18 #1061 [Verbose] >         Seq.singleton 0

00:00:18 #1062 [Verbose] >         |> Seq.append (seq { 1 .. input.Length - 1 })

00:00:18 #1063 [Verbose] >         |> Seq.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])

00:00:18 #1064 [Verbose] >         |> String.concat " "

00:00:18 #1065 [Verbose] >

00:00:18 #1066 [Verbose] >     "FC",

00:00:18 #1067 [Verbose] >     fun input ->

00:00:18 #1068 [Verbose] >         Array.singleton 0

00:00:18 #1069 [Verbose] >         |> Array.append [[| 1 .. input.Length - 1 |]]

00:00:18 #1070 [Verbose] >         |> Array.Parallel.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])

00:00:18 #1071 [Verbose] >         |> String.concat " "

00:00:18 #1072 [Verbose] > ]]

00:00:18 #1073 [Verbose] > let testCases = seq {

00:00:18 #1074 [Verbose] >     "abc", "bca cab abc"

00:00:18 #1075 [Verbose] >     "abcde", "bcdea cdeab deabc eabcd abcde"

00:00:18 #1076 [Verbose] >     "abcdefghi", "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde ghiabcdef

00:00:18 #1077 [Verbose] > hiabcdefg iabcdefgh abcdefghi"

00:00:18 #1078 [Verbose] >     "abab", "baba abab baba abab"

00:00:18 #1079 [Verbose] >     "aa", "aa aa"

00:00:18 #1080 [Verbose] >     "z", "z"

00:00:18 #1081 [Verbose] > }

00:00:18 #1082 [Verbose] > let rec rotateStringsTests = runAll (nameof rotateStringsTests) _count solutions

00:00:18 #1083 [Verbose] > testCases

00:00:18 #1084 [Verbose] > rotateStringsTests

00:00:18 #1085 [Verbose] > |> sortResultList

00:00:26 #1086 [Verbose] >

00:00:26 #1087 [Verbose] > ╭─[ 7.56s - stdout ]───────────────────────────────────────────────────────────╮

00:00:26 #1088 [Verbose] > │                                                                              │

00:00:26 #1089 [Verbose] > │                                                                              │

00:00:26 #1090 [Verbose] > │ Test: rotateStringsTests                                                     │

00:00:26 #1091 [Verbose] > │                                                                              │

00:00:26 #1092 [Verbose] > │ Solution: abc                                                                │

00:00:26 #1093 [Verbose] > │ Test case 1. A. Time: 2L                                                     │

00:00:26 #1094 [Verbose] > │ Test case 2. B. Time: 2L                                                     │

00:00:26 #1095 [Verbose] > │ Test case 3. C. Time: 3L                                                     │

00:00:26 #1096 [Verbose] > │ Test case 4. CA. Time: 3L                                                    │

00:00:26 #1097 [Verbose] > │ Test case 5. CB. Time: 2L                                                    │

00:00:26 #1098 [Verbose] > │ Test case 6. D. Time: 2L                                                     │

00:00:26 #1099 [Verbose] > │ Test case 7. E. Time: 1L                                                     │

00:00:26 #1100 [Verbose] > │ Test case 8. F. Time: 1L                                                     │

00:00:26 #1101 [Verbose] > │ Test case 9. FA. Time: 2L                                                    │

00:00:26 #1102 [Verbose] > │ Test case 10. FB. Time: 8L                                                   │

00:00:26 #1103 [Verbose] > │ Test case 11. FC. Time: 8L                                                   │

00:00:26 #1104 [Verbose] > │                                                                              │

00:00:26 #1105 [Verbose] > │ Solution: abcde                                                              │

00:00:26 #1106 [Verbose] > │ Test case 1. A. Time: 1L                                                     │

00:00:26 #1107 [Verbose] > │ Test case 2. B. Time: 1L                                                     │

00:00:26 #1108 [Verbose] > │ Test case 3. C. Time: 1L                                                     │

00:00:26 #1109 [Verbose] > │ Test case 4. CA. Time: 1L                                                    │

00:00:26 #1110 [Verbose] > │ Test case 5. CB. Time: 1L                                                    │

00:00:26 #1111 [Verbose] > │ Test case 6. D. Time: 4L                                                     │

00:00:26 #1112 [Verbose] > │ Test case 7. E. Time: 1L                                                     │

00:00:26 #1113 [Verbose] > │ Test case 8. F. Time: 0L                                                     │

00:00:26 #1114 [Verbose] > │ Test case 9. FA. Time: 1L                                                    │

00:00:26 #1115 [Verbose] > │ Test case 10. FB. Time: 4L                                                   │

00:00:26 #1116 [Verbose] > │ Test case 11. FC. Time: 5L                                                   │

00:00:26 #1117 [Verbose] > │                                                                              │

00:00:26 #1118 [Verbose] > │ Solution: abcdefghi                                                          │

00:00:26 #1119 [Verbose] > │ Test case 1. A. Time: 4L                                                     │

00:00:26 #1120 [Verbose] > │ Test case 2. B. Time: 3L                                                     │

00:00:26 #1121 [Verbose] > │ Test case 3. C. Time: 1L                                                     │

00:00:26 #1122 [Verbose] > │ Test case 4. CA. Time: 4L                                                    │

00:00:26 #1123 [Verbose] > │ Test case 5. CB. Time: 2L                                                    │

00:00:26 #1124 [Verbose] > │ Test case 6. D. Time: 13L                                                    │

00:00:26 #1125 [Verbose] > │ Test case 7. E. Time: 1L                                                     │

00:00:26 #1126 [Verbose] > │ Test case 8. F. Time: 1L                                                     │

00:00:26 #1127 [Verbose] > │ Test case 9. FA. Time: 4L                                                    │

00:00:26 #1128 [Verbose] > │ Test case 10. FB. Time: 2L                                                   │

00:00:26 #1129 [Verbose] > │ Test case 11. FC. Time: 7L                                                   │

00:00:26 #1130 [Verbose] > │                                                                              │

00:00:26 #1131 [Verbose] > │ Solution: abab                                                               │

00:00:26 #1132 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:26 #1133 [Verbose] > │ Test case 2. B. Time: 0L                                                     │

00:00:26 #1134 [Verbose] > │ Test case 3. C. Time: 0L                                                     │

00:00:26 #1135 [Verbose] > │ Test case 4. CA. Time: 1L                                                    │

00:00:26 #1136 [Verbose] > │ Test case 5. CB. Time: 0L                                                    │

00:00:26 #1137 [Verbose] > │ Test case 6. D. Time: 1L                                                     │

00:00:26 #1138 [Verbose] > │ Test case 7. E. Time: 0L                                                     │

00:00:26 #1139 [Verbose] > │ Test case 8. F. Time: 0L                                                     │

00:00:26 #1140 [Verbose] > │ Test case 9. FA. Time: 0L                                                    │

00:00:26 #1141 [Verbose] > │ Test case 10. FB. Time: 1L                                                   │

00:00:26 #1142 [Verbose] > │ Test case 11. FC. Time: 5L                                                   │

00:00:26 #1143 [Verbose] > │                                                                              │

00:00:26 #1144 [Verbose] > │ Solution: aa                                                                 │

00:00:26 #1145 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:26 #1146 [Verbose] > │ Test case 2. B. Time: 0L                                                     │

00:00:26 #1147 [Verbose] > │ Test case 3. C. Time: 0L                                                     │

00:00:26 #1148 [Verbose] > │ Test case 4. CA. Time: 1L                                                    │

00:00:26 #1149 [Verbose] > │ Test case 5. CB. Time: 0L                                                    │

00:00:26 #1150 [Verbose] > │ Test case 6. D. Time: 0L                                                     │

00:00:26 #1151 [Verbose] > │ Test case 7. E. Time: 0L                                                     │

00:00:26 #1152 [Verbose] > │ Test case 8. F. Time: 0L                                                     │

00:00:26 #1153 [Verbose] > │ Test case 9. FA. Time: 0L                                                    │

00:00:26 #1154 [Verbose] > │ Test case 10. FB. Time: 1L                                                   │

00:00:26 #1155 [Verbose] > │ Test case 11. FC. Time: 5L                                                   │

00:00:26 #1156 [Verbose] > │                                                                              │

00:00:26 #1157 [Verbose] > │ Solution: z                                                                  │

00:00:26 #1158 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:00:26 #1159 [Verbose] > │ Test case 2. B. Time: 0L                                                     │

00:00:26 #1160 [Verbose] > │ Test case 3. C. Time: 0L                                                     │

00:00:26 #1161 [Verbose] > │ Test case 4. CA. Time: 0L                                                    │

00:00:26 #1162 [Verbose] > │ Test case 5. CB. Time: 0L                                                    │

00:00:26 #1163 [Verbose] > │ Test case 6. D. Time: 0L                                                     │

00:00:26 #1164 [Verbose] > │ Test case 7. E. Time: 0L                                                     │

00:00:26 #1165 [Verbose] > │ Test case 8. F. Time: 0L                                                     │

00:00:26 #1166 [Verbose] > │ Test case 9. FA. Time: 0L                                                    │

00:00:26 #1167 [Verbose] > │ Test case 10. FB. Time: 0L                                                   │

00:00:26 #1168 [Verbose] > │ Test case 11. FC. Time: 4L                                                   │

00:00:26 #1169 [Verbose] > │                                                                              │

00:00:26 #1170 [Verbose] > │ Input    	| Expected                                                           │

00:00:26 #1171 [Verbose] > │                                                                              │

00:00:26 #1172 [Verbose] > │ | Result                                                                     │

00:00:26 #1173 [Verbose] > │                                                                              │

00:00:26 #1174 [Verbose] > │ | Best                                                                       │

00:00:26 #1175 [Verbose] > │ ---      	| ---                                                                │

00:00:26 #1176 [Verbose] > │                                                                              │

00:00:26 #1177 [Verbose] > │ | ---                                                                        │

00:00:26 #1178 [Verbose] > │                                                                              │

00:00:26 #1179 [Verbose] > │ | ---                                                                        │

00:00:26 #1180 [Verbose] > │ abc      	| bca cab abc                                                        │

00:00:26 #1181 [Verbose] > │                                                                              │

00:00:26 #1182 [Verbose] > │ | bca cab abc                                                                │

00:00:26 #1183 [Verbose] > │                                                                              │

00:00:26 #1184 [Verbose] > │ | (7, 1)                                                                     │

00:00:26 #1185 [Verbose] > │ abcde    	| bcdea cdeab deabc eabcd abcde                                      │

00:00:26 #1186 [Verbose] > │ | bcdea cdeab deabc eabcd abcde                                              │

00:00:26 #1187 [Verbose] > │ | (8, 0)                                                                     │

00:00:26 #1188 [Verbose] > │ abcdefghi	| bcdefghia cdefghiab defghiabc efghiabcd fghiabcde ghiabcdef        │

00:00:26 #1189 [Verbose] > │ hiabcdefg iabcdefgh abcdefghi	| bcdefghia cdefghiab defghiabc efghiabcd        │

00:00:26 #1190 [Verbose] > │ fghiabcde ghiabcdef hiabcdefg iabcdefgh abcdefghi	| (3, 1)                     │

00:00:26 #1191 [Verbose] > │ abab     	| baba abab baba abab                                                │

00:00:26 #1192 [Verbose] > │ | baba abab baba abab                                                        │

00:00:26 #1193 [Verbose] > │ | (1, 0)                                                                     │

00:00:26 #1194 [Verbose] > │ aa       	| aa aa                                                              │

00:00:26 #1195 [Verbose] > │                                                                              │

00:00:26 #1196 [Verbose] > │ | aa aa                                                                      │

00:00:26 #1197 [Verbose] > │                                                                              │

00:00:26 #1198 [Verbose] > │ | (1, 0)                                                                     │

00:00:26 #1199 [Verbose] > │ z        	| z                                                                  │

00:00:26 #1200 [Verbose] > │                                                                              │

00:00:26 #1201 [Verbose] > │ | z                                                                          │

00:00:26 #1202 [Verbose] > │                                                                              │

00:00:26 #1203 [Verbose] > │ | (1, 0)                                                                     │

00:00:26 #1204 [Verbose] > │                                                                              │

00:00:26 #1205 [Verbose] > │ Average Ranking                                                              │

00:00:26 #1206 [Verbose] > │ Test case 3. Average Time: 0L                                                │

00:00:26 #1207 [Verbose] > │ Test case 5. Average Time: 0L                                                │

00:00:26 #1208 [Verbose] > │ Test case 7. Average Time: 0L                                                │

00:00:26 #1209 [Verbose] > │ Test case 8. Average Time: 0L                                                │

00:00:26 #1210 [Verbose] > │ Test case 1. Average Time: 1L                                                │

00:00:26 #1211 [Verbose] > │ Test case 2. Average Time: 1L                                                │

00:00:26 #1212 [Verbose] > │ Test case 4. Average Time: 1L                                                │

00:00:26 #1213 [Verbose] > │ Test case 9. Average Time: 1L                                                │

00:00:26 #1214 [Verbose] > │ Test case 10. Average Time: 2L                                               │

00:00:26 #1215 [Verbose] > │ Test case 6. Average Time: 3L                                                │

00:00:26 #1216 [Verbose] > │ Test case 11. Average Time: 5L                                               │

00:00:26 #1217 [Verbose] > │                                                                              │

00:00:26 #1218 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #1219 [Verbose] >

00:00:26 #1220 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:26 #1221 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:26 #1222 [Verbose] > │ ## rotate_strings_tests                                                      │

00:00:26 #1223 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:26 #1224 [Verbose] >

00:00:26 #1225 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:26 #1226 [Verbose] > // // test

00:00:26 #1227 [Verbose] > // // timeout=60000

00:00:26 #1228 [Verbose] > // // print_code=true

00:00:26 #1229 [Verbose] >

00:00:26 #1230 [Verbose] > inl get_solutions () =

00:00:26 #1231 [Verbose] >     [[

00:00:26 #1232 [Verbose] >         // "A",

00:00:26 #1233 [Verbose] >         // fun (input : string) =>

00:00:26 #1234 [Verbose] >         //     let resultList =

00:00:26 #1235 [Verbose] >         //         List.fold (fun acc x =>

00:00:26 #1236 [Verbose] >         //             let rotate (text : string) (letter : string) =

00:00:26 #1237 [Verbose] > text.Substring (1, input.Length - 1) + letter

00:00:26 #1238 [Verbose] >         //             [[ rotate (if acc.IsEmpty then input else acc.Head)

00:00:26 #1239 [Verbose] > (string x) ]] /@ acc

00:00:26 #1240 [Verbose] >         //         ) [[]] (Seq.toList input)

00:00:26 #1241 [Verbose] >

00:00:26 #1242 [Verbose] >         //     List.foldBack (fun acc x => x + acc + " ") resultList ""

00:00:26 #1243 [Verbose] >         //     |> fun x => x.TrimEnd ()

00:00:26 #1244 [Verbose] >

00:00:26 #1245 [Verbose] >         // "B",

00:00:26 #1246 [Verbose] >         // fun input =>

00:00:26 #1247 [Verbose] >         //     input

00:00:26 #1248 [Verbose] >         //     |> Seq.toList

00:00:26 #1249 [Verbose] >         //     |> List.fold (fun (acc : string list) letter =>

00:00:26 #1250 [Verbose] >         //         let last =

00:00:26 #1251 [Verbose] >         //             if acc.IsEmpty

00:00:26 #1252 [Verbose] >         //             then input

00:00:26 #1253 [Verbose] >         //             else acc.Head

00:00:26 #1254 [Verbose] >

00:00:26 #1255 [Verbose] >         //         let item = last.[[1 .. input.Length - 1]] + string letter

00:00:26 #1256 [Verbose] >

00:00:26 #1257 [Verbose] >         //         item :: acc

00:00:26 #1258 [Verbose] >         //     ) [[]]

00:00:26 #1259 [Verbose] >         //     |> List.rev

00:00:26 #1260 [Verbose] >         //     |> String.concat " "

00:00:26 #1261 [Verbose] >

00:00:26 #1262 [Verbose] >         // "C",

00:00:26 #1263 [Verbose] >         // fun input =>

00:00:26 #1264 [Verbose] >         //     input

00:00:26 #1265 [Verbose] >         //     |> Seq.toList

00:00:26 #1266 [Verbose] >         //     |> List.fold (fun (acc : list string) letter => acc.Head.[[ 1 ..

00:00:26 #1267 [Verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]

00:00:26 #1268 [Verbose] >         //     |> List.rev

00:00:26 #1269 [Verbose] >         //     |> List.skip 1

00:00:26 #1270 [Verbose] >         //     |> String.concat " "

00:00:26 #1271 [Verbose] >

00:00:26 #1272 [Verbose] >         // "CA",

00:00:26 #1273 [Verbose] >         // fun input =>

00:00:26 #1274 [Verbose] >         //     input

00:00:26 #1275 [Verbose] >         //     |> Seq.fold (fun (acc : list string) letter => acc.Head.[[ 1 ..

00:00:26 #1276 [Verbose] > input.Length - 1 ]] + string letter :: acc) [[ input ]]

00:00:26 #1277 [Verbose] >         //     |> Seq.rev

00:00:26 #1278 [Verbose] >         //     |> Seq.skip 1

00:00:26 #1279 [Verbose] >         //     |> String.concat " "

00:00:26 #1280 [Verbose] >

00:00:26 #1281 [Verbose] >         // "CB",

00:00:26 #1282 [Verbose] >         // fun input =>

00:00:26 #1283 [Verbose] >         //     input

00:00:26 #1284 [Verbose] >         //     |> Seq.toArray

00:00:26 #1285 [Verbose] >         //     |> Array.fold (fun (acc : a _ string) letter => acc |>

00:00:26 #1286 [Verbose] > Array.append (a ;[[ acc.[[0]].[[ 1 .. input.Length - 1 ]] + string letter ]]))

00:00:26 #1287 [Verbose] > (a ;[[ input ]])

00:00:26 #1288 [Verbose] >         //     |> Array.rev

00:00:26 #1289 [Verbose] >         //     |> Array.skip 1

00:00:26 #1290 [Verbose] >         //     |> String.concat " "

00:00:26 #1291 [Verbose] >

00:00:26 #1292 [Verbose] >         // "D",

00:00:26 #1293 [Verbose] >         // fun input =>

00:00:26 #1294 [Verbose] >         //     input

00:00:26 #1295 [Verbose] >         //     |> Seq.toList

00:00:26 #1296 [Verbose] >         //     |> fun list =>

00:00:26 #1297 [Verbose] >         //         let rec loop (acc : list (list char)) = function

00:00:26 #1298 [Verbose] >         //             | _ when acc.Length = list.Length => acc

00:00:26 #1299 [Verbose] >         //             | head :: tail =>

00:00:26 #1300 [Verbose] >         //                 let item = tail /@ [[ head ]]

00:00:26 #1301 [Verbose] >         //                 loop (item :: acc) item

00:00:26 #1302 [Verbose] >         //             | [[]] => [[]]

00:00:26 #1303 [Verbose] >         //         loop [[]] list

00:00:26 #1304 [Verbose] >         //     |> List.rev

00:00:26 #1305 [Verbose] >         //     |> List.map (List.toArray >> String)

00:00:26 #1306 [Verbose] >         //     |> String.concat " "

00:00:26 #1307 [Verbose] >

00:00:26 #1308 [Verbose] >         // "E",

00:00:26 #1309 [Verbose] >         // fun input =>

00:00:26 #1310 [Verbose] >         //     input

00:00:26 #1311 [Verbose] >         //     |> Seq.toList

00:00:26 #1312 [Verbose] >         //     |> fun list =>

00:00:26 #1313 [Verbose] >         //         let rec loop (last : string) = function

00:00:26 #1314 [Verbose] >         //             | head :: tail =>

00:00:26 #1315 [Verbose] >         //                 let item = last.[[1 .. input.Length - 1]] + string

00:00:26 #1316 [Verbose] > head

00:00:26 #1317 [Verbose] >         //                 item :: loop item tail

00:00:26 #1318 [Verbose] >         //             | [[]] => [[]]

00:00:26 #1319 [Verbose] >         //         loop input list

00:00:26 #1320 [Verbose] >         //     |> String.concat " "

00:00:26 #1321 [Verbose] >

00:00:26 #1322 [Verbose] >         "F",

00:00:26 #1323 [Verbose] >         fun input =>

00:00:26 #1324 [Verbose] >         // Array.singleton 0

00:00:26 #1325 [Verbose] >         // |> Array.append [[| 1 .. input.Length - 1 |]]

00:00:26 #1326 [Verbose] >         // |> Array.map (fun i -> input.[[ i .. ]] + input.[[ .. i - 1 ]])

00:00:26 #1327 [Verbose] >         // |> String.concat " "

00:00:26 #1328 [Verbose] >             inl input_length = input |> sm.length

00:00:26 #1329 [Verbose] >             am.singleton 0i32

00:00:26 #1330 [Verbose] >             |> am.append (am'.init_series 1 (input_length - 1) 1)

00:00:26 #1331 [Verbose] >             |> am.map (fun i =>

00:00:26 #1332 [Verbose] >                 inl a = sm.slice input { from = i; to = input_length - 1 } :

00:00:26 #1333 [Verbose] > string

00:00:26 #1334 [Verbose] >                 inl b = sm.slice input { from = 0; to = i - 1 } : string

00:00:26 #1335 [Verbose] >                 $"!a + !b" : string

00:00:26 #1336 [Verbose] >             )

00:00:26 #1337 [Verbose] >             |> string_concat " "

00:00:26 #1338 [Verbose] >

00:00:26 #1339 [Verbose] >         "FA",

00:00:26 #1340 [Verbose] >         fun input =>

00:00:26 #1341 [Verbose] >         //     List.singleton 0

00:00:26 #1342 [Verbose] >         //     |> List.append [[ 1 .. input.Length - 1 ]]

00:00:26 #1343 [Verbose] >         //   //  |> List.map (fun i => input.[[ i .. ]] + input.[[ .. i - 1 ]])

00:00:26 #1344 [Verbose] >         //     |> String.concat " "

00:00:26 #1345 [Verbose] >             inl input_length = input |> sm.length

00:00:26 #1346 [Verbose] >             listm.singleton 0i32

00:00:26 #1347 [Verbose] >             |> listm.append (listm'.init_series 1 (input_length - 1) 1)

00:00:26 #1348 [Verbose] >             |> listm.map (fun i =>

00:00:26 #1349 [Verbose] >                 inl a = sm.slice input { from = i; to = input_length - 1 } :

00:00:26 #1350 [Verbose] > string

00:00:26 #1351 [Verbose] >                 inl b = if i = 0 then "" else sm.slice input { from = 0; to = i

00:00:26 #1352 [Verbose] > - 1 } : string

00:00:26 #1353 [Verbose] >                 $"!a + !b" : string

00:00:26 #1354 [Verbose] >             )

00:00:26 #1355 [Verbose] >             |> listm.toArray

00:00:26 #1356 [Verbose] >             |> fun x => x : a i32 _

00:00:26 #1357 [Verbose] >             |> string_concat " "

00:00:26 #1358 [Verbose] >

00:00:26 #1359 [Verbose] >         // "FB",

00:00:26 #1360 [Verbose] >         // fun input =>

00:00:26 #1361 [Verbose] >         //     Seq.singleton 0

00:00:26 #1362 [Verbose] >         //   //  |> Seq.append (seq { 1 .. input.Length - 1 })

00:00:26 #1363 [Verbose] >         //   //  |> Seq.map (fun i => input.[[ i .. ]] + input.[[ .. i - 1 ]])

00:00:26 #1364 [Verbose] >         //     |> String.concat " "

00:00:26 #1365 [Verbose] >

00:00:26 #1366 [Verbose] >         // "FC",

00:00:26 #1367 [Verbose] >         // fun input =>

00:00:26 #1368 [Verbose] >         //     Array.singleton 0

00:00:26 #1369 [Verbose] >         //     |> Array.append (a ;[[ 1 .. input.Length - 1 ]])

00:00:26 #1370 [Verbose] >         // //    |> Array.Parallel.map (fun i => input.[[ i .. ]] + input.[[ ..

00:00:26 #1371 [Verbose] > i - 1 ]])

00:00:26 #1372 [Verbose] >         //     |> String.concat " "

00:00:26 #1373 [Verbose] >     ]]

00:00:26 #1374 [Verbose] >

00:00:26 #1375 [Verbose] > inl rec rotate_strings_tests () =

00:00:26 #1376 [Verbose] >     inl test_cases = [[

00:00:26 #1377 [Verbose] >         "abc", "bca cab abc"

00:00:26 #1378 [Verbose] >         "abcde", "bcdea cdeab deabc eabcd abcde"

00:00:26 #1379 [Verbose] >         "abcdefghi", "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde

00:00:26 #1380 [Verbose] > ghiabcdef hiabcdefg iabcdefgh abcdefghi"

00:00:26 #1381 [Verbose] >         "abab", "baba abab baba abab"

00:00:26 #1382 [Verbose] >         "aa", "aa aa"

00:00:26 #1383 [Verbose] >         "z", "z"

00:00:26 #1384 [Verbose] >     ]]

00:00:26 #1385 [Verbose] >

00:00:26 #1386 [Verbose] >     inl solutions = get_solutions ()

00:00:26 #1387 [Verbose] >

00:00:26 #1388 [Verbose] >     // inl is_fast () = true

00:00:26 #1389 [Verbose] >

00:00:26 #1390 [Verbose] >     inl count =

00:00:26 #1391 [Verbose] >         if is_fast ()

00:00:26 #1392 [Verbose] >         then 1000i32

00:00:26 #1393 [Verbose] >         else 2000000i32

00:00:26 #1394 [Verbose] >

00:00:26 #1395 [Verbose] >     run_all (nameof rotate_strings_tests) count solutions test_cases

00:00:26 #1396 [Verbose] >     |> sort_result_list

00:00:26 #1397 [Verbose] >

00:00:26 #1398 [Verbose] > rotate_strings_tests ()

00:00:26 #1399 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1311-3412-1292-16d32260fed5\main.spi

00:00:49 #1400 [Verbose] >

00:00:49 #1401 [Verbose] > ╭─[ 22.94s - stdout ]──────────────────────────────────────────────────────────╮

00:00:49 #1402 [Verbose] > │ type UH0 =                                                                   │

00:00:49 #1403 [Verbose] > │     | UH0_0 of string * string * UH0                                         │

00:00:49 #1404 [Verbose] > │     | UH0_1                                                                  │

00:00:49 #1405 [Verbose] > │ and Mut0 = {mutable l0 : uint64}                                             │

00:00:49 #1406 [Verbose] > │ and Mut1 = {mutable l0 : int32}                                              │

00:00:49 #1407 [Verbose] > │ and UH1 =                                                                    │

00:00:49 #1408 [Verbose] > │     | UH1_0 of int32 * UH1                                                   │

00:00:49 #1409 [Verbose] > │     | UH1_1                                                                  │

00:00:49 #1410 [Verbose] > │ and UH2 =                                                                    │

00:00:49 #1411 [Verbose] > │     | UH2_0 of string * UH2                                                  │

00:00:49 #1412 [Verbose] > │     | UH2_1                                                                  │

00:00:49 #1413 [Verbose] > │ and UH3 =                                                                    │

00:00:49 #1414 [Verbose] > │     | UH3_0 of int32 * string * (string -> string) * UH3                     │

00:00:49 #1415 [Verbose] > │     | UH3_1                                                                  │

00:00:49 #1416 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:00:49 #1417 [Verbose] > │     | US0_0                                                                  │

00:00:49 #1418 [Verbose] > │     | US0_1 of f1_0 : System.ConsoleColor                                    │

00:00:49 #1419 [Verbose] > │ and UH4 =                                                                    │

00:00:49 #1420 [Verbose] > │     | UH4_0 of int64 * int64 * UH4                                           │

00:00:49 #1421 [Verbose] > │     | UH4_1                                                                  │

00:00:49 #1422 [Verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH4; mutable l2 : int64}       │

00:00:49 #1423 [Verbose] > │ and UH5 =                                                                    │

00:00:49 #1424 [Verbose] > │     | UH5_0 of UH2 * US0 * UH5                                               │

00:00:49 #1425 [Verbose] > │     | UH5_1                                                                  │

00:00:49 #1426 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:00:49 #1427 [Verbose] > │     | US1_0                                                                  │

00:00:49 #1428 [Verbose] > │     | US1_1 of f1_0 : int64                                                  │

00:00:49 #1429 [Verbose] > │ and UH6 =                                                                    │

00:00:49 #1430 [Verbose] > │     | UH6_0 of int32 * int64 * UH6                                           │

00:00:49 #1431 [Verbose] > │     | UH6_1                                                                  │

00:00:49 #1432 [Verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH6; mutable l2 : int32}       │

00:00:49 #1433 [Verbose] > │ and UH7 =                                                                    │

00:00:49 #1434 [Verbose] > │     | UH7_0 of int32 * string * UH7                                          │

00:00:49 #1435 [Verbose] > │     | UH7_1                                                                  │

00:00:49 #1436 [Verbose] > │ let rec method2 (v0 : UH0, v1 : uint64) : uint64 =                           │

00:00:49 #1437 [Verbose] > │     match v0 with                                                            │

00:00:49 #1438 [Verbose] > │     | UH0_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1439 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:49 #1440 [Verbose] > │         method2(v4, v5)                                                      │

00:00:49 #1441 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:49 #1442 [Verbose] > │         v1                                                                   │

00:00:49 #1443 [Verbose] > │ and method3 (v0 : (struct (string * string) []), v1 : UH0, v2 : uint64) :    │

00:00:49 #1444 [Verbose] > │ uint64 =                                                                     │

00:00:49 #1445 [Verbose] > │     match v1 with                                                            │

00:00:49 #1446 [Verbose] > │     | UH0_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:49 #1447 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:49 #1448 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:49 #1449 [Verbose] > │         method3(v0, v5, v6)                                                  │

00:00:49 #1450 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:00:49 #1451 [Verbose] > │         v2                                                                   │

00:00:49 #1452 [Verbose] > │ and method1 (v0 : UH0) : (struct (string * string) []) =                     │

00:00:49 #1453 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:49 #1454 [Verbose] > │     let v2 : uint64 = method2(v0, v1)                                        │

00:00:49 #1455 [Verbose] > │     let v3 : (struct (string * string) []) = Array.zeroCreate<struct (string │

00:00:49 #1456 [Verbose] > │ * string)> (System.Convert.ToInt32(v2))                                      │

00:00:49 #1457 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:49 #1458 [Verbose] > │     let v5 : uint64 = method3(v3, v0, v4)                                    │

00:00:49 #1459 [Verbose] > │     v3                                                                       │

00:00:49 #1460 [Verbose] > │ and method4 (v0 : uint64, v1 : Mut0) : bool =                                │

00:00:49 #1461 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:49 #1462 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:49 #1463 [Verbose] > │     v3                                                                       │

00:00:49 #1464 [Verbose] > │ and method5 (v0 : int32, v1 : Mut1) : bool =                                 │

00:00:49 #1465 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:00:49 #1466 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:49 #1467 [Verbose] > │     v3                                                                       │

00:00:49 #1468 [Verbose] > │ and closure1 () (v0 : string) : string =                                     │

00:00:49 #1469 [Verbose] > │     let v1 : int32 = v0.Length                                               │

00:00:49 #1470 [Verbose] > │     let v2 : (int32 []) = Array.zeroCreate<int32> (1)                        │

00:00:49 #1471 [Verbose] > │     v2.[int 0] <- 0                                                          │

00:00:49 #1472 [Verbose] > │     let v3 : int32 = v1 - 1                                                  │

00:00:49 #1473 [Verbose] > │     let v4 : int32 = v3 - 1                                                  │

00:00:49 #1474 [Verbose] > │     let v5 : int32 = v4 + 1                                                  │

00:00:49 #1475 [Verbose] > │     let v6 : (int32 []) = Array.zeroCreate<int32> (v5)                       │

00:00:49 #1476 [Verbose] > │     let v7 : Mut1 = {l0 = 0} : Mut1                                          │

00:00:49 #1477 [Verbose] > │     while method5(v5, v7) do                                                 │

00:00:49 #1478 [Verbose] > │         let v9 : int32 = v7.l0                                               │

00:00:49 #1479 [Verbose] > │         let v10 : int32 = 1 + v9                                             │

00:00:49 #1480 [Verbose] > │         v6.[int v9] <- v10                                                   │

00:00:49 #1481 [Verbose] > │         let v11 : int32 = v9 + 1                                             │

00:00:49 #1482 [Verbose] > │         v7.l0 <- v11                                                         │

00:00:49 #1483 [Verbose] > │         ()                                                                   │

00:00:49 #1484 [Verbose] > │     let v12 : int32 = v6.Length                                              │

00:00:49 #1485 [Verbose] > │     let v13 : int32 = v2.Length                                              │

00:00:49 #1486 [Verbose] > │     let v14 : int32 = v12 + v13                                              │

00:00:49 #1487 [Verbose] > │     let v15 : (int32 []) = Array.zeroCreate<int32> (v14)                     │

00:00:49 #1488 [Verbose] > │     let v16 : Mut1 = {l0 = 0} : Mut1                                         │

00:00:49 #1489 [Verbose] > │     while method5(v14, v16) do                                               │

00:00:49 #1490 [Verbose] > │         let v18 : int32 = v16.l0                                             │

00:00:49 #1491 [Verbose] > │         let v19 : bool = v18 < v12                                           │

00:00:49 #1492 [Verbose] > │         let v23 : int32 =                                                    │

00:00:49 #1493 [Verbose] > │             if v19 then                                                      │

00:00:49 #1494 [Verbose] > │                 let v20 : int32 = v6.[int v18]                               │

00:00:49 #1495 [Verbose] > │                 v20                                                          │

00:00:49 #1496 [Verbose] > │             else                                                             │

00:00:49 #1497 [Verbose] > │                 let v21 : int32 = v18 - v12                                  │

00:00:49 #1498 [Verbose] > │                 let v22 : int32 = v2.[int v21]                               │

00:00:49 #1499 [Verbose] > │                 v22                                                          │

00:00:49 #1500 [Verbose] > │         v15.[int v18] <- v23                                                 │

00:00:49 #1501 [Verbose] > │         let v24 : int32 = v18 + 1                                            │

00:00:49 #1502 [Verbose] > │         v16.l0 <- v24                                                        │

00:00:49 #1503 [Verbose] > │         ()                                                                   │

00:00:49 #1504 [Verbose] > │     let v25 : int32 = v15.Length                                             │

00:00:49 #1505 [Verbose] > │     let v26 : (string []) = Array.zeroCreate<string> (v25)                   │

00:00:49 #1506 [Verbose] > │     let v27 : Mut1 = {l0 = 0} : Mut1                                         │

00:00:49 #1507 [Verbose] > │     while method5(v25, v27) do                                               │

00:00:49 #1508 [Verbose] > │         let v29 : int32 = v27.l0                                             │

00:00:49 #1509 [Verbose] > │         let v30 : int32 = v15.[int v29]                                      │

00:00:49 #1510 [Verbose] > │         let v31 : string = v0.[int v30..int v3]                              │

00:00:49 #1511 [Verbose] > │         let v32 : int32 = v30 - 1                                            │

00:00:49 #1512 [Verbose] > │         let v33 : string = v0.[int 0..int v32]                               │

00:00:49 #1513 [Verbose] > │         let v34 : string = v31 + v33                                         │

00:00:49 #1514 [Verbose] > │         v26.[int v29] <- v34                                                 │

00:00:49 #1515 [Verbose] > │         let v35 : int32 = v29 + 1                                            │

00:00:49 #1516 [Verbose] > │         v27.l0 <- v35                                                        │

00:00:49 #1517 [Verbose] > │         ()                                                                   │

00:00:49 #1518 [Verbose] > │     let v36 : string = " "                                                   │

00:00:49 #1519 [Verbose] > │     let v37 : string = v26 |> String.concat v36                              │

00:00:49 #1520 [Verbose] > │     v37                                                                      │

00:00:49 #1521 [Verbose] > │ and method6 (v0 : float, v1 : float) : UH1 =                                 │

00:00:49 #1522 [Verbose] > │     let v2 : bool = v1 < v0                                                  │

00:00:49 #1523 [Verbose] > │     if v2 then                                                               │

00:00:49 #1524 [Verbose] > │         let v3 : int32 = int32 v1                                            │

00:00:49 #1525 [Verbose] > │         let v4 : int32 = 1 + v3                                              │

00:00:49 #1526 [Verbose] > │         let v5 : float = v1 + 1.0                                            │

00:00:49 #1527 [Verbose] > │         let v6 : UH1 = method6(v0, v5)                                       │

00:00:49 #1528 [Verbose] > │         UH1_0(v4, v6)                                                        │

00:00:49 #1529 [Verbose] > │     else                                                                     │

00:00:49 #1530 [Verbose] > │         UH1_1                                                                │

00:00:49 #1531 [Verbose] > │ and method7 (v0 : UH1, v1 : UH1) : UH1 =                                     │

00:00:49 #1532 [Verbose] > │     match v0 with                                                            │

00:00:49 #1533 [Verbose] > │     | UH1_0(v2, v3) -> (* Cons *)                                            │

00:00:49 #1534 [Verbose] > │         let v4 : UH1 = method7(v3, v1)                                       │

00:00:49 #1535 [Verbose] > │         UH1_0(v2, v4)                                                        │

00:00:49 #1536 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:49 #1537 [Verbose] > │         v1                                                                   │

00:00:49 #1538 [Verbose] > │ and method8 (v0 : string, v1 : int32, v2 : UH1, v3 : UH2) : UH2 =            │

00:00:49 #1539 [Verbose] > │     match v2 with                                                            │

00:00:49 #1540 [Verbose] > │     | UH1_0(v4, v5) -> (* Cons *)                                            │

00:00:49 #1541 [Verbose] > │         let v6 : UH2 = method8(v0, v1, v5, v3)                               │

00:00:49 #1542 [Verbose] > │         let v7 : int32 = v1 - 1                                              │

00:00:49 #1543 [Verbose] > │         let v8 : string = v0.[int v4..int v7]                                │

00:00:49 #1544 [Verbose] > │         let v9 : bool = v4 = 0                                               │

00:00:49 #1545 [Verbose] > │         let v13 : string =                                                   │

00:00:49 #1546 [Verbose] > │             if v9 then                                                       │

00:00:49 #1547 [Verbose] > │                 let v10 : string = ""                                        │

00:00:49 #1548 [Verbose] > │                 v10                                                          │

00:00:49 #1549 [Verbose] > │             else                                                             │

00:00:49 #1550 [Verbose] > │                 let v11 : int32 = v4 - 1                                     │

00:00:49 #1551 [Verbose] > │                 let v12 : string = v0.[int 0..int v11]                       │

00:00:49 #1552 [Verbose] > │                 v12                                                          │

00:00:49 #1553 [Verbose] > │         let v14 : string = v8 + v13                                          │

00:00:49 #1554 [Verbose] > │         UH2_0(v14, v6)                                                       │

00:00:49 #1555 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:00:49 #1556 [Verbose] > │         v3                                                                   │

00:00:49 #1557 [Verbose] > │ and method10 (v0 : UH2, v1 : int32) : int32 =                                │

00:00:49 #1558 [Verbose] > │     match v0 with                                                            │

00:00:49 #1559 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:49 #1560 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:00:49 #1561 [Verbose] > │         method10(v3, v4)                                                     │

00:00:49 #1562 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:49 #1563 [Verbose] > │         v1                                                                   │

00:00:49 #1564 [Verbose] > │ and method11 (v0 : (string []), v1 : UH2, v2 : int32) : int32 =              │

00:00:49 #1565 [Verbose] > │     match v1 with                                                            │

00:00:49 #1566 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:49 #1567 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:49 #1568 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:49 #1569 [Verbose] > │         method11(v0, v4, v5)                                                 │

00:00:49 #1570 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:49 #1571 [Verbose] > │         v2                                                                   │

00:00:49 #1572 [Verbose] > │ and method9 (v0 : UH2) : (string []) =                                       │

00:00:49 #1573 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:49 #1574 [Verbose] > │     let v2 : int32 = method10(v0, v1)                                        │

00:00:49 #1575 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string> (v2)                     │

00:00:49 #1576 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:49 #1577 [Verbose] > │     let v5 : int32 = method11(v3, v0, v4)                                    │

00:00:49 #1578 [Verbose] > │     v3                                                                       │

00:00:49 #1579 [Verbose] > │ and closure2 () (v0 : string) : string =                                     │

00:00:49 #1580 [Verbose] > │     let v1 : int32 = v0.Length                                               │

00:00:49 #1581 [Verbose] > │     let v2 : int32 = v1 - 1                                                  │

00:00:49 #1582 [Verbose] > │     let v3 : int32 = v2 - 1                                                  │

00:00:49 #1583 [Verbose] > │     let v4 : float = float v3                                                │

00:00:49 #1584 [Verbose] > │     let v5 : float = v4 + 1.0                                                │

00:00:49 #1585 [Verbose] > │     let v6 : float = 0.0                                                     │

00:00:49 #1586 [Verbose] > │     let v7 : UH1 = method6(v5, v6)                                           │

00:00:49 #1587 [Verbose] > │     let v8 : int32 = 0                                                       │

00:00:49 #1588 [Verbose] > │     let v9 : UH1 = UH1_1                                                     │

00:00:49 #1589 [Verbose] > │     let v10 : UH1 = UH1_0(v8, v9)                                            │

00:00:49 #1590 [Verbose] > │     let v11 : UH1 = method7(v7, v10)                                         │

00:00:49 #1591 [Verbose] > │     let v12 : UH2 = UH2_1                                                    │

00:00:49 #1592 [Verbose] > │     let v13 : UH2 = method8(v0, v1, v11, v12)                                │

00:00:49 #1593 [Verbose] > │     let v14 : (string []) = method9(v13)                                     │

00:00:49 #1594 [Verbose] > │     let v15 : string = " "                                                   │

00:00:49 #1595 [Verbose] > │     let v16 : string = v14 |> String.concat v15                              │

00:00:49 #1596 [Verbose] > │     v16                                                                      │

00:00:49 #1597 [Verbose] > │ and method13 (v0 : UH3, v1 : uint64) : uint64 =                              │

00:00:49 #1598 [Verbose] > │     match v0 with                                                            │

00:00:49 #1599 [Verbose] > │     | UH3_0(v2, v3, v4, v5) -> (* Cons *)                                    │

00:00:49 #1600 [Verbose] > │         let v6 : uint64 = v1 + 1UL                                           │

00:00:49 #1601 [Verbose] > │         method13(v5, v6)                                                     │

00:00:49 #1602 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:49 #1603 [Verbose] > │         v1                                                                   │

00:00:49 #1604 [Verbose] > │ and method14 (v0 : (struct (int32 * string * (string -> string)) []), v1 :   │

00:00:49 #1605 [Verbose] > │ UH3, v2 : uint64) : uint64 =                                                 │

00:00:49 #1606 [Verbose] > │     match v1 with                                                            │

00:00:49 #1607 [Verbose] > │     | UH3_0(v3, v4, v5, v6) -> (* Cons *)                                    │

00:00:49 #1608 [Verbose] > │         v0.[int v2] <- struct (v3, v4, v5)                                   │

00:00:49 #1609 [Verbose] > │         let v7 : uint64 = v2 + 1UL                                           │

00:00:49 #1610 [Verbose] > │         method14(v0, v6, v7)                                                 │

00:00:49 #1611 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:00:49 #1612 [Verbose] > │         v2                                                                   │

00:00:49 #1613 [Verbose] > │ and method12 (v0 : UH3) : (struct (int32 * string * (string -> string)) [])  │

00:00:49 #1614 [Verbose] > │ =                                                                            │

00:00:49 #1615 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:49 #1616 [Verbose] > │     let v2 : uint64 = method13(v0, v1)                                       │

00:00:49 #1617 [Verbose] > │     let v3 : (struct (int32 * string * (string -> string)) []) =             │

00:00:49 #1618 [Verbose] > │ Array.zeroCreate<struct (int32 * string * (string -> string))>               │

00:00:49 #1619 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:49 #1620 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:49 #1621 [Verbose] > │     let v5 : uint64 = method14(v3, v0, v4)                                   │

00:00:49 #1622 [Verbose] > │     v3                                                                       │

00:00:49 #1623 [Verbose] > │ and closure3 () () : unit =                                                  │

00:00:49 #1624 [Verbose] > │     ()                                                                       │

00:00:49 #1625 [Verbose] > │ and closure4 () () : unit =                                                  │

00:00:49 #1626 [Verbose] > │     System.GC.Collect ()                                                     │

00:00:49 #1627 [Verbose] > │     ()                                                                       │

00:00:49 #1628 [Verbose] > │ and method15 (v0 : Mut1) : bool =                                            │

00:00:49 #1629 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:00:49 #1630 [Verbose] > │     let v2 : bool = v1 < 2000001                                             │

00:00:49 #1631 [Verbose] > │     v2                                                                       │

00:00:49 #1632 [Verbose] > │ and closure5 (v0 : string, v1 : (string -> string)) (v2 : int32) : string =  │

00:00:49 #1633 [Verbose] > │     v1 v0                                                                    │

00:00:49 #1634 [Verbose] > │ and method16 (v0 : string, v1 : (string []), v2 : uint64) : bool =           │

00:00:49 #1635 [Verbose] > │     let v3 : uint64 = System.Convert.ToUInt64 v1.Length                      │

00:00:49 #1636 [Verbose] > │     let v4 : bool = v2 < v3                                                  │

00:00:49 #1637 [Verbose] > │     if v4 then                                                               │

00:00:49 #1638 [Verbose] > │         let v5 : string = v1.[int v2]                                        │

00:00:49 #1639 [Verbose] > │         let v6 : bool = v0 = v5                                              │

00:00:49 #1640 [Verbose] > │         if v6 then                                                           │

00:00:49 #1641 [Verbose] > │             let v7 : uint64 = v2 + 1UL                                       │

00:00:49 #1642 [Verbose] > │             method16(v0, v1, v7)                                             │

00:00:49 #1643 [Verbose] > │         else                                                                 │

00:00:49 #1644 [Verbose] > │             false                                                            │

00:00:49 #1645 [Verbose] > │     else                                                                     │

00:00:49 #1646 [Verbose] > │         true                                                                 │

00:00:49 #1647 [Verbose] > │ and method17 (v0 : uint64, v1 : Mut2) : bool =                               │

00:00:49 #1648 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:49 #1649 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:49 #1650 [Verbose] > │     v3                                                                       │

00:00:49 #1651 [Verbose] > │ and method18 (v0 : UH4, v1 : UH4) : UH4 =                                    │

00:00:49 #1652 [Verbose] > │     match v0 with                                                            │

00:00:49 #1653 [Verbose] > │     | UH4_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1654 [Verbose] > │         let v5 : UH4 = UH4_0(v2, v3, v1)                                     │

00:00:49 #1655 [Verbose] > │         method18(v4, v5)                                                     │

00:00:49 #1656 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:49 #1657 [Verbose] > │         v1                                                                   │

00:00:49 #1658 [Verbose] > │ and method20 (v0 : UH4, v1 : int32) : int32 =                                │

00:00:49 #1659 [Verbose] > │     match v0 with                                                            │

00:00:49 #1660 [Verbose] > │     | UH4_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1661 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:49 #1662 [Verbose] > │         method20(v4, v5)                                                     │

00:00:49 #1663 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:49 #1664 [Verbose] > │         v1                                                                   │

00:00:49 #1665 [Verbose] > │ and method21 (v0 : (struct (int64 * int64) []), v1 : UH4, v2 : int32) :      │

00:00:49 #1666 [Verbose] > │ int32 =                                                                      │

00:00:49 #1667 [Verbose] > │     match v1 with                                                            │

00:00:49 #1668 [Verbose] > │     | UH4_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:49 #1669 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:49 #1670 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:49 #1671 [Verbose] > │         method21(v0, v5, v6)                                                 │

00:00:49 #1672 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:00:49 #1673 [Verbose] > │         v2                                                                   │

00:00:49 #1674 [Verbose] > │ and method19 (v0 : UH4) : (struct (int64 * int64) []) =                      │

00:00:49 #1675 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:49 #1676 [Verbose] > │     let v2 : int32 = method20(v0, v1)                                        │

00:00:49 #1677 [Verbose] > │     let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 *  │

00:00:49 #1678 [Verbose] > │ int64)> (v2)                                                                 │

00:00:49 #1679 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:49 #1680 [Verbose] > │     let v5 : int32 = method21(v3, v0, v4)                                    │

00:00:49 #1681 [Verbose] > │     v3                                                                       │

00:00:49 #1682 [Verbose] > │ and closure6 () struct (v0 : int64, v1 : int64) : int64 =                    │

00:00:49 #1683 [Verbose] > │     v1                                                                       │

00:00:49 #1684 [Verbose] > │ and method23 (v0 : UH5, v1 : uint64) : uint64 =                              │

00:00:49 #1685 [Verbose] > │     match v0 with                                                            │

00:00:49 #1686 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1687 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:49 #1688 [Verbose] > │         method23(v4, v5)                                                     │

00:00:49 #1689 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:49 #1690 [Verbose] > │         v1                                                                   │

00:00:49 #1691 [Verbose] > │ and method24 (v0 : (struct (UH2 * US0) []), v1 : UH5, v2 : uint64) : uint64  │

00:00:49 #1692 [Verbose] > │ =                                                                            │

00:00:49 #1693 [Verbose] > │     match v1 with                                                            │

00:00:49 #1694 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:49 #1695 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:49 #1696 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:49 #1697 [Verbose] > │         method24(v0, v5, v6)                                                 │

00:00:49 #1698 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:00:49 #1699 [Verbose] > │         v2                                                                   │

00:00:49 #1700 [Verbose] > │ and method22 (v0 : UH5) : (struct (UH2 * US0) []) =                          │

00:00:49 #1701 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:49 #1702 [Verbose] > │     let v2 : uint64 = method23(v0, v1)                                       │

00:00:49 #1703 [Verbose] > │     let v3 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 * US0)>  │

00:00:49 #1704 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:49 #1705 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:49 #1706 [Verbose] > │     let v5 : uint64 = method24(v3, v0, v4)                                   │

00:00:49 #1707 [Verbose] > │     v3                                                                       │

00:00:49 #1708 [Verbose] > │ and method26 (v0 : UH2, v1 : uint64) : uint64 =                              │

00:00:49 #1709 [Verbose] > │     match v0 with                                                            │

00:00:49 #1710 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:00:49 #1711 [Verbose] > │         let v4 : uint64 = v1 + 1UL                                           │

00:00:49 #1712 [Verbose] > │         method26(v3, v4)                                                     │

00:00:49 #1713 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:49 #1714 [Verbose] > │         v1                                                                   │

00:00:49 #1715 [Verbose] > │ and method27 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 =            │

00:00:49 #1716 [Verbose] > │     match v1 with                                                            │

00:00:49 #1717 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:49 #1718 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:00:49 #1719 [Verbose] > │         let v5 : uint64 = v2 + 1UL                                           │

00:00:49 #1720 [Verbose] > │         method27(v0, v4, v5)                                                 │

00:00:49 #1721 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:49 #1722 [Verbose] > │         v2                                                                   │

00:00:49 #1723 [Verbose] > │ and method25 (v0 : UH2) : (string []) =                                      │

00:00:49 #1724 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:49 #1725 [Verbose] > │     let v2 : uint64 = method26(v0, v1)                                       │

00:00:49 #1726 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string>                          │

00:00:49 #1727 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:00:49 #1728 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:49 #1729 [Verbose] > │     let v5 : uint64 = method27(v3, v0, v4)                                   │

00:00:49 #1730 [Verbose] > │     v3                                                                       │

00:00:49 #1731 [Verbose] > │ and closure7 () (v0 : int64) : US1 =                                         │

00:00:49 #1732 [Verbose] > │     US1_1(v0)                                                                │

00:00:49 #1733 [Verbose] > │ and method28 (v0 : uint64, v1 : Mut3) : bool =                               │

00:00:49 #1734 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:00:49 #1735 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:00:49 #1736 [Verbose] > │     v3                                                                       │

00:00:49 #1737 [Verbose] > │ and method29 (v0 : UH6, v1 : UH6) : UH6 =                                    │

00:00:49 #1738 [Verbose] > │     match v0 with                                                            │

00:00:49 #1739 [Verbose] > │     | UH6_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1740 [Verbose] > │         let v5 : UH6 = UH6_0(v2, v3, v1)                                     │

00:00:49 #1741 [Verbose] > │         method29(v4, v5)                                                     │

00:00:49 #1742 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:49 #1743 [Verbose] > │         v1                                                                   │

00:00:49 #1744 [Verbose] > │ and method31 (v0 : UH6, v1 : int32) : int32 =                                │

00:00:49 #1745 [Verbose] > │     match v0 with                                                            │

00:00:49 #1746 [Verbose] > │     | UH6_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1747 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:00:49 #1748 [Verbose] > │         method31(v4, v5)                                                     │

00:00:49 #1749 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:49 #1750 [Verbose] > │         v1                                                                   │

00:00:49 #1751 [Verbose] > │ and method32 (v0 : (struct (int32 * int64) []), v1 : UH6, v2 : int32) :      │

00:00:49 #1752 [Verbose] > │ int32 =                                                                      │

00:00:49 #1753 [Verbose] > │     match v1 with                                                            │

00:00:49 #1754 [Verbose] > │     | UH6_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:49 #1755 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:49 #1756 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:00:49 #1757 [Verbose] > │         method32(v0, v5, v6)                                                 │

00:00:49 #1758 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:49 #1759 [Verbose] > │         v2                                                                   │

00:00:49 #1760 [Verbose] > │ and method30 (v0 : UH6) : (struct (int32 * int64) []) =                      │

00:00:49 #1761 [Verbose] > │     let v1 : int32 = 0                                                       │

00:00:49 #1762 [Verbose] > │     let v2 : int32 = method31(v0, v1)                                        │

00:00:49 #1763 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:00:49 #1764 [Verbose] > │ int64)> (v2)                                                                 │

00:00:49 #1765 [Verbose] > │     let v4 : int32 = 0                                                       │

00:00:49 #1766 [Verbose] > │     let v5 : int32 = method32(v3, v0, v4)                                    │

00:00:49 #1767 [Verbose] > │     v3                                                                       │

00:00:49 #1768 [Verbose] > │ and method33 (v0 : UH2, v1 : UH7, v2 : int32) : struct (UH7 * int32) =       │

00:00:49 #1769 [Verbose] > │     match v0 with                                                            │

00:00:49 #1770 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:00:49 #1771 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:00:49 #1772 [Verbose] > │         let v6 : UH7 = UH7_0(v2, v3, v1)                                     │

00:00:49 #1773 [Verbose] > │         method33(v4, v6, v5)                                                 │

00:00:49 #1774 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:00:49 #1775 [Verbose] > │         struct (v1, v2)                                                      │

00:00:49 #1776 [Verbose] > │ and method34 (v0 : UH7, v1 : UH7) : UH7 =                                    │

00:00:49 #1777 [Verbose] > │     match v0 with                                                            │

00:00:49 #1778 [Verbose] > │     | UH7_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1779 [Verbose] > │         let v5 : UH7 = UH7_0(v2, v3, v1)                                     │

00:00:49 #1780 [Verbose] > │         method34(v4, v5)                                                     │

00:00:49 #1781 [Verbose] > │     | UH7_1 -> (* Nil *)                                                     │

00:00:49 #1782 [Verbose] > │         v1                                                                   │

00:00:49 #1783 [Verbose] > │ and method35 (v0 : Map<int32, int64>, v1 : UH7, v2 : UH2) : UH2 =            │

00:00:49 #1784 [Verbose] > │     match v1 with                                                            │

00:00:49 #1785 [Verbose] > │     | UH7_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:49 #1786 [Verbose] > │         let v6 : UH2 = method35(v0, v5, v2)                                  │

00:00:49 #1787 [Verbose] > │         let v7 : int64 = v0.[v3]                                             │

00:00:49 #1788 [Verbose] > │         let v8 : int32 = int32 v7                                            │

00:00:49 #1789 [Verbose] > │         let v9 : string = v4.PadRight v8                                     │

00:00:49 #1790 [Verbose] > │         UH2_0(v9, v6)                                                        │

00:00:49 #1791 [Verbose] > │     | UH7_1 -> (* Nil *)                                                     │

00:00:49 #1792 [Verbose] > │         v2                                                                   │

00:00:49 #1793 [Verbose] > │ and closure8 () () : unit =                                                  │

00:00:49 #1794 [Verbose] > │     ()                                                                       │

00:00:49 #1795 [Verbose] > │ and closure9 () () : unit =                                                  │

00:00:49 #1796 [Verbose] > │     System.Console.ResetColor ()                                             │

00:00:49 #1797 [Verbose] > │     ()                                                                       │

00:00:49 #1798 [Verbose] > │ and closure10 () () : unit =                                                 │

00:00:49 #1799 [Verbose] > │     ()                                                                       │

00:00:49 #1800 [Verbose] > │ and closure11 (v0 : System.ConsoleColor) () : unit =                         │

00:00:49 #1801 [Verbose] > │     System.Console.ForegroundColor <- v0                                     │

00:00:49 #1802 [Verbose] > │     ()                                                                       │

00:00:49 #1803 [Verbose] > │ and method37 (v0 : UH6, v1 : uint64) : uint64 =                              │

00:00:49 #1804 [Verbose] > │     match v0 with                                                            │

00:00:49 #1805 [Verbose] > │     | UH6_0(v2, v3, v4) -> (* Cons *)                                        │

00:00:49 #1806 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:00:49 #1807 [Verbose] > │         method37(v4, v5)                                                     │

00:00:49 #1808 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:49 #1809 [Verbose] > │         v1                                                                   │

00:00:49 #1810 [Verbose] > │ and method38 (v0 : (struct (int32 * int64) []), v1 : UH6, v2 : uint64) :     │

00:00:49 #1811 [Verbose] > │ uint64 =                                                                     │

00:00:49 #1812 [Verbose] > │     match v1 with                                                            │

00:00:49 #1813 [Verbose] > │     | UH6_0(v3, v4, v5) -> (* Cons *)                                        │

00:00:49 #1814 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:00:49 #1815 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:00:49 #1816 [Verbose] > │         method38(v0, v5, v6)                                                 │

00:00:49 #1817 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:00:49 #1818 [Verbose] > │         v2                                                                   │

00:00:49 #1819 [Verbose] > │ and method36 (v0 : UH6) : (struct (int32 * int64) []) =                      │

00:00:49 #1820 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:00:49 #1821 [Verbose] > │     let v2 : uint64 = method37(v0, v1)                                       │

00:00:49 #1822 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:00:49 #1823 [Verbose] > │ int64)> (System.Convert.ToInt32(v2))                                         │

00:00:49 #1824 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:00:49 #1825 [Verbose] > │     let v5 : uint64 = method38(v3, v0, v4)                                   │

00:00:49 #1826 [Verbose] > │     v3                                                                       │

00:00:49 #1827 [Verbose] > │ and closure12 () struct (v0 : int32, v1 : int64) : int64 =                   │

00:00:49 #1828 [Verbose] > │     v1                                                                       │

00:00:49 #1829 [Verbose] > │ and closure0 () () : unit =                                                  │

00:00:49 #1830 [Verbose] > │     let v0 : (unit -> unit) = closure0()                                     │

00:00:49 #1831 [Verbose] > │     let v1 : string = nameof v0                                              │

00:00:49 #1832 [Verbose] > │     let v2 : string = ""                                                     │

00:00:49 #1833 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #1834 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #1835 [Verbose] > │     let v3 : string = $"Test: {v1}"                                          │

00:00:49 #1836 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:49 #1837 [Verbose] > │     let v4 : string = "abc"                                                  │

00:00:49 #1838 [Verbose] > │     let v5 : string = "bca cab abc"                                          │

00:00:49 #1839 [Verbose] > │     let v6 : string = "abcde"                                                │

00:00:49 #1840 [Verbose] > │     let v7 : string = "bcdea cdeab deabc eabcd abcde"                        │

00:00:49 #1841 [Verbose] > │     let v8 : string = "abcdefghi"                                            │

00:00:49 #1842 [Verbose] > │     let v9 : string = "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde     │

00:00:49 #1843 [Verbose] > │ ghiabcdef hiabcdefg iabcdefgh abcdefghi"                                     │

00:00:49 #1844 [Verbose] > │     let v10 : string = "abab"                                                │

00:00:49 #1845 [Verbose] > │     let v11 : string = "baba abab baba abab"                                 │

00:00:49 #1846 [Verbose] > │     let v12 : string = "aa"                                                  │

00:00:49 #1847 [Verbose] > │     let v13 : string = "aa aa"                                               │

00:00:49 #1848 [Verbose] > │     let v14 : string = "z"                                                   │

00:00:49 #1849 [Verbose] > │     let v15 : UH0 = UH0_1                                                    │

00:00:49 #1850 [Verbose] > │     let v16 : UH0 = UH0_0(v14, v14, v15)                                     │

00:00:49 #1851 [Verbose] > │     let v17 : UH0 = UH0_0(v12, v13, v16)                                     │

00:00:49 #1852 [Verbose] > │     let v18 : UH0 = UH0_0(v10, v11, v17)                                     │

00:00:49 #1853 [Verbose] > │     let v19 : UH0 = UH0_0(v8, v9, v18)                                       │

00:00:49 #1854 [Verbose] > │     let v20 : UH0 = UH0_0(v6, v7, v19)                                       │

00:00:49 #1855 [Verbose] > │     let v21 : UH0 = UH0_0(v4, v5, v20)                                       │

00:00:49 #1856 [Verbose] > │     let v22 : (struct (string * string) []) = method1(v21)                   │

00:00:49 #1857 [Verbose] > │     let v23 : uint64 = System.Convert.ToUInt64 v22.Length                    │

00:00:49 #1858 [Verbose] > │     let v24 : (struct (string * string * string * (int64 [])) []) =          │

00:00:49 #1859 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:00:49 #1860 [Verbose] > │ (System.Convert.ToInt32(v23))                                                │

00:00:49 #1861 [Verbose] > │     let v25 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:49 #1862 [Verbose] > │     while method4(v23, v25) do                                               │

00:00:49 #1863 [Verbose] > │         let v27 : uint64 = v25.l0                                            │

00:00:49 #1864 [Verbose] > │         let struct (v28 : string, v29 : string) = v22.[int v27]              │

00:00:49 #1865 [Verbose] > │         let v30 : string = $"%A{v28}"                                        │

00:00:49 #1866 [Verbose] > │         System.Console.WriteLine v2                                          │

00:00:49 #1867 [Verbose] > │         let v31 : string = $"Solution: {v30}  "                              │

00:00:49 #1868 [Verbose] > │         System.Console.WriteLine v31                                         │

00:00:49 #1869 [Verbose] > │         let v32 : int32 = 0                                                  │

00:00:49 #1870 [Verbose] > │         let v33 : string = "F"                                               │

00:00:49 #1871 [Verbose] > │         let v34 : (string -> string) = closure1()                            │

00:00:49 #1872 [Verbose] > │         let v35 : int32 = 1                                                  │

00:00:49 #1873 [Verbose] > │         let v36 : string = "FA"                                              │

00:00:49 #1874 [Verbose] > │         let v37 : (string -> string) = closure2()                            │

00:00:49 #1875 [Verbose] > │         let v38 : UH3 = UH3_1                                                │

00:00:49 #1876 [Verbose] > │         let v39 : UH3 = UH3_0(v35, v36, v37, v38)                            │

00:00:49 #1877 [Verbose] > │         let v40 : UH3 = UH3_0(v32, v33, v34, v39)                            │

00:00:49 #1878 [Verbose] > │         let v41 : (struct (int32 * string * (string -> string)) []) =        │

00:00:49 #1879 [Verbose] > │ method12(v40)                                                                │

00:00:49 #1880 [Verbose] > │         let v42 : uint64 = System.Convert.ToUInt64 v41.Length                │

00:00:49 #1881 [Verbose] > │         let v43 : (struct (string * int64) []) = Array.zeroCreate<struct     │

00:00:49 #1882 [Verbose] > │ (string * int64)> (System.Convert.ToInt32(v42))                              │

00:00:49 #1883 [Verbose] > │         let v44 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #1884 [Verbose] > │         while method4(v42, v44) do                                           │

00:00:49 #1885 [Verbose] > │             let v46 : uint64 = v44.l0                                        │

00:00:49 #1886 [Verbose] > │             let struct (v47 : int32, v48 : string, v49 : (string -> string)) │

00:00:49 #1887 [Verbose] > │ = v41.[int v46]                                                              │

00:00:49 #1888 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:49 #1889 [Verbose] > │             let v50 : (unit -> unit) = closure3()                            │

00:00:49 #1890 [Verbose] > │             v50 ()                                                           │

00:00:49 #1891 [Verbose] > │             #else                                                            │

00:00:49 #1892 [Verbose] > │             let v51 : (unit -> unit) = closure4()                            │

00:00:49 #1893 [Verbose] > │             v51 ()                                                           │

00:00:49 #1894 [Verbose] > │             #endif                                                           │

00:00:49 #1895 [Verbose] > │             let v52 : (unit -> System.Diagnostics.Stopwatch) =               │

00:00:49 #1896 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:00:49 #1897 [Verbose] > │             let v53 : System.Diagnostics.Stopwatch = v52 ()                  │

00:00:49 #1898 [Verbose] > │             v53.Start ()                                                     │

00:00:49 #1899 [Verbose] > │             let v54 : int64 = v53.ElapsedMilliseconds                        │

00:00:49 #1900 [Verbose] > │             let v55 : (int32 []) = Array.zeroCreate<int32> (2000001)         │

00:00:49 #1901 [Verbose] > │             let v56 : Mut1 = {l0 = 0} : Mut1                                 │

00:00:49 #1902 [Verbose] > │             while method15(v56) do                                           │

00:00:49 #1903 [Verbose] > │                 let v58 : int32 = v56.l0                                     │

00:00:49 #1904 [Verbose] > │                 v55.[int v58] <- v58                                         │

00:00:49 #1905 [Verbose] > │                 let v59 : int32 = v58 + 1                                    │

00:00:49 #1906 [Verbose] > │                 v56.l0 <- v59                                                │

00:00:49 #1907 [Verbose] > │                 ()                                                           │

00:00:49 #1908 [Verbose] > │             let v60 : (int32 -> string) = closure5(v28, v49)                 │

00:00:49 #1909 [Verbose] > │             let v61 : (string []) = v55 |> Array.Parallel.map v60            │

00:00:49 #1910 [Verbose] > │             let v62 : int32 = v61.Length                                     │

00:00:49 #1911 [Verbose] > │             let v63 : int32 = v62 - 1                                        │

00:00:49 #1912 [Verbose] > │             let v64 : string = v61.[int v63]                                 │

00:00:49 #1913 [Verbose] > │             let v65 : int64 = v53.ElapsedMilliseconds                        │

00:00:49 #1914 [Verbose] > │             let v66 : int64 = v65 - v54                                      │

00:00:49 #1915 [Verbose] > │             let v67 : string = $"Test case {v47 + 1}. {v48}. Time: {v66}  "  │

00:00:49 #1916 [Verbose] > │             System.Console.WriteLine v67                                     │

00:00:49 #1917 [Verbose] > │             v43.[int v46] <- struct (v64, v66)                               │

00:00:49 #1918 [Verbose] > │             let v68 : uint64 = v46 + 1UL                                     │

00:00:49 #1919 [Verbose] > │             v44.l0 <- v68                                                    │

00:00:49 #1920 [Verbose] > │             ()                                                               │

00:00:49 #1921 [Verbose] > │         let v69 : uint64 = System.Convert.ToUInt64 v43.Length                │

00:00:49 #1922 [Verbose] > │         let v70 : (string []) = Array.zeroCreate<string>                     │

00:00:49 #1923 [Verbose] > │ (System.Convert.ToInt32(v69))                                                │

00:00:49 #1924 [Verbose] > │         let v71 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #1925 [Verbose] > │         while method4(v69, v71) do                                           │

00:00:49 #1926 [Verbose] > │             let v73 : uint64 = v71.l0                                        │

00:00:49 #1927 [Verbose] > │             let struct (v74 : string, v75 : int64) = v43.[int v73]           │

00:00:49 #1928 [Verbose] > │             v70.[int v73] <- v74                                             │

00:00:49 #1929 [Verbose] > │             let v76 : uint64 = v73 + 1UL                                     │

00:00:49 #1930 [Verbose] > │             v71.l0 <- v76                                                    │

00:00:49 #1931 [Verbose] > │             ()                                                               │

00:00:49 #1932 [Verbose] > │         let v77 : uint64 = System.Convert.ToUInt64 v70.Length                │

00:00:49 #1933 [Verbose] > │         let v78 : bool = v77 <= 1UL                                          │

00:00:49 #1934 [Verbose] > │         if v78 then                                                          │

00:00:49 #1935 [Verbose] > │             ()                                                               │

00:00:49 #1936 [Verbose] > │         else                                                                 │

00:00:49 #1937 [Verbose] > │             let v79 : string = v70.[int 0UL]                                 │

00:00:49 #1938 [Verbose] > │             let v80 : uint64 = 0UL                                           │

00:00:49 #1939 [Verbose] > │             let v81 : bool = method16(v79, v70, v80)                         │

00:00:49 #1940 [Verbose] > │             if v81 then                                                      │

00:00:49 #1941 [Verbose] > │                 ()                                                           │

00:00:49 #1942 [Verbose] > │             else                                                             │

00:00:49 #1943 [Verbose] > │                 let v82 : string = $"Challenge error: {v70}"                 │

00:00:49 #1944 [Verbose] > │                 failwith<unit> v82                                           │

00:00:49 #1945 [Verbose] > │         let v83 : string = $"%A{v29}"                                        │

00:00:49 #1946 [Verbose] > │         let v84 : (string []) = Array.zeroCreate<string>                     │

00:00:49 #1947 [Verbose] > │ (System.Convert.ToInt32(v69))                                                │

00:00:49 #1948 [Verbose] > │         let v85 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #1949 [Verbose] > │         while method4(v69, v85) do                                           │

00:00:49 #1950 [Verbose] > │             let v87 : uint64 = v85.l0                                        │

00:00:49 #1951 [Verbose] > │             let struct (v88 : string, v89 : int64) = v43.[int v87]           │

00:00:49 #1952 [Verbose] > │             v84.[int v87] <- v88                                             │

00:00:49 #1953 [Verbose] > │             let v90 : uint64 = v87 + 1UL                                     │

00:00:49 #1954 [Verbose] > │             v85.l0 <- v90                                                    │

00:00:49 #1955 [Verbose] > │             ()                                                               │

00:00:49 #1956 [Verbose] > │         let v91 : string = v84.[int 0UL]                                     │

00:00:49 #1957 [Verbose] > │         let v92 : string = $"%A{v91}"                                        │

00:00:49 #1958 [Verbose] > │         let v93 : (int64 []) = Array.zeroCreate<int64>                       │

00:00:49 #1959 [Verbose] > │ (System.Convert.ToInt32(v69))                                                │

00:00:49 #1960 [Verbose] > │         let v94 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #1961 [Verbose] > │         while method4(v69, v94) do                                           │

00:00:49 #1962 [Verbose] > │             let v96 : uint64 = v94.l0                                        │

00:00:49 #1963 [Verbose] > │             let struct (v97 : string, v98 : int64) = v43.[int v96]           │

00:00:49 #1964 [Verbose] > │             v93.[int v96] <- v98                                             │

00:00:49 #1965 [Verbose] > │             let v99 : uint64 = v96 + 1UL                                     │

00:00:49 #1966 [Verbose] > │             v94.l0 <- v99                                                    │

00:00:49 #1967 [Verbose] > │             ()                                                               │

00:00:49 #1968 [Verbose] > │         v24.[int v27] <- struct (v83, v30, v92, v93)                         │

00:00:49 #1969 [Verbose] > │         let v100 : uint64 = v27 + 1UL                                        │

00:00:49 #1970 [Verbose] > │         v25.l0 <- v100                                                       │

00:00:49 #1971 [Verbose] > │         ()                                                                   │

00:00:49 #1972 [Verbose] > │     let v101 : uint64 = System.Convert.ToUInt64 v24.Length                   │

00:00:49 #1973 [Verbose] > │     let v102 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:49 #1974 [Verbose] > │ US0)> (System.Convert.ToInt32(v101))                                         │

00:00:49 #1975 [Verbose] > │     let v103 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #1976 [Verbose] > │     while method4(v101, v103) do                                             │

00:00:49 #1977 [Verbose] > │         let v105 : uint64 = v103.l0                                          │

00:00:49 #1978 [Verbose] > │         let struct (v106 : string, v107 : string, v108 : string, v109 :      │

00:00:49 #1979 [Verbose] > │ (int64 [])) = v24.[int v105]                                                 │

00:00:49 #1980 [Verbose] > │         let v110 : uint64 = System.Convert.ToUInt64 v109.Length              │

00:00:49 #1981 [Verbose] > │         let v111 : UH4 = UH4_1                                               │

00:00:49 #1982 [Verbose] > │         let v112 : Mut2 = {l0 = 0UL; l1 = v111; l2 = 0L} : Mut2              │

00:00:49 #1983 [Verbose] > │         while method17(v110, v112) do                                        │

00:00:49 #1984 [Verbose] > │             let v114 : uint64 = v112.l0                                      │

00:00:49 #1985 [Verbose] > │             let struct (v115 : UH4, v116 : int64) = v112.l1, v112.l2         │

00:00:49 #1986 [Verbose] > │             let v117 : int64 = v109.[int v114]                               │

00:00:49 #1987 [Verbose] > │             let v118 : int64 = v116 + 1L                                     │

00:00:49 #1988 [Verbose] > │             let v119 : uint64 = v114 + 1UL                                   │

00:00:49 #1989 [Verbose] > │             let v120 : UH4 = UH4_0(v116, v117, v115)                         │

00:00:49 #1990 [Verbose] > │             v112.l0 <- v119                                                  │

00:00:49 #1991 [Verbose] > │             v112.l1 <- v120                                                  │

00:00:49 #1992 [Verbose] > │             v112.l2 <- v118                                                  │

00:00:49 #1993 [Verbose] > │             ()                                                               │

00:00:49 #1994 [Verbose] > │         let struct (v121 : UH4, v122 : int64) = v112.l1, v112.l2             │

00:00:49 #1995 [Verbose] > │         let v123 : UH4 = UH4_1                                               │

00:00:49 #1996 [Verbose] > │         let v124 : UH4 = method18(v121, v123)                                │

00:00:49 #1997 [Verbose] > │         let v125 : (struct (int64 * int64) []) = method19(v124)              │

00:00:49 #1998 [Verbose] > │         let v126 : int32 = v125.Length                                       │

00:00:49 #1999 [Verbose] > │         let v127 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:00:49 #2000 [Verbose] > │ (int64 * int64)> (v126)                                                      │

00:00:49 #2001 [Verbose] > │         let v128 : Mut1 = {l0 = 0} : Mut1                                    │

00:00:49 #2002 [Verbose] > │         while method5(v126, v128) do                                         │

00:00:49 #2003 [Verbose] > │             let v130 : int32 = v128.l0                                       │

00:00:49 #2004 [Verbose] > │             let struct (v131 : int64, v132 : int64) = v125.[int v130]        │

00:00:49 #2005 [Verbose] > │             let v133 : int64 = v131 + 1L                                     │

00:00:49 #2006 [Verbose] > │             v127.[int v130] <- struct (v133, v132)                           │

00:00:49 #2007 [Verbose] > │             let v134 : int32 = v130 + 1                                      │

00:00:49 #2008 [Verbose] > │             v128.l0 <- v134                                                  │

00:00:49 #2009 [Verbose] > │             ()                                                               │

00:00:49 #2010 [Verbose] > │         let v135 : (struct (int64 * int64) -> int64) = closure6()            │

00:00:49 #2011 [Verbose] > │         let v136 : (struct (int64 * int64) []) = v127 |> Array.sortBy v135   │

00:00:49 #2012 [Verbose] > │         let struct (v137 : int64, v138 : int64) = v136.[int 0]               │

00:00:49 #2013 [Verbose] > │         let v139 : string = $"%A{struct (v137, v138)}"                       │

00:00:49 #2014 [Verbose] > │         let v140 : bool = v106 = v108                                        │

00:00:49 #2015 [Verbose] > │         let v145 : US0 =                                                     │

00:00:49 #2016 [Verbose] > │             if v140 then                                                     │

00:00:49 #2017 [Verbose] > │                 let v141 : System.ConsoleColor =                             │

00:00:49 #2018 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:00:49 #2019 [Verbose] > │                 US0_1(v141)                                                  │

00:00:49 #2020 [Verbose] > │             else                                                             │

00:00:49 #2021 [Verbose] > │                 let v143 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:00:49 #2022 [Verbose] > │                 US0_1(v143)                                                  │

00:00:49 #2023 [Verbose] > │         let v146 : UH2 = UH2_1                                               │

00:00:49 #2024 [Verbose] > │         let v147 : UH2 = UH2_0(v139, v146)                                   │

00:00:49 #2025 [Verbose] > │         let v148 : UH2 = UH2_0(v108, v147)                                   │

00:00:49 #2026 [Verbose] > │         let v149 : UH2 = UH2_0(v106, v148)                                   │

00:00:49 #2027 [Verbose] > │         let v150 : UH2 = UH2_0(v107, v149)                                   │

00:00:49 #2028 [Verbose] > │         v102.[int v105] <- struct (v150, v145)                               │

00:00:49 #2029 [Verbose] > │         let v151 : uint64 = v105 + 1UL                                       │

00:00:49 #2030 [Verbose] > │         v103.l0 <- v151                                                      │

00:00:49 #2031 [Verbose] > │         ()                                                                   │

00:00:49 #2032 [Verbose] > │     let v152 : string = "Input"                                              │

00:00:49 #2033 [Verbose] > │     let v153 : string = "Expected"                                           │

00:00:49 #2034 [Verbose] > │     let v154 : string = "Result"                                             │

00:00:49 #2035 [Verbose] > │     let v155 : string = "Best"                                               │

00:00:49 #2036 [Verbose] > │     let v156 : UH2 = UH2_1                                                   │

00:00:49 #2037 [Verbose] > │     let v157 : UH2 = UH2_0(v155, v156)                                       │

00:00:49 #2038 [Verbose] > │     let v158 : UH2 = UH2_0(v154, v157)                                       │

00:00:49 #2039 [Verbose] > │     let v159 : UH2 = UH2_0(v153, v158)                                       │

00:00:49 #2040 [Verbose] > │     let v160 : UH2 = UH2_0(v152, v159)                                       │

00:00:49 #2041 [Verbose] > │     let v161 : US0 = US0_0                                                   │

00:00:49 #2042 [Verbose] > │     let v162 : string = "---"                                                │

00:00:49 #2043 [Verbose] > │     let v163 : UH2 = UH2_1                                                   │

00:00:49 #2044 [Verbose] > │     let v164 : UH2 = UH2_0(v162, v163)                                       │

00:00:49 #2045 [Verbose] > │     let v165 : UH2 = UH2_0(v162, v164)                                       │

00:00:49 #2046 [Verbose] > │     let v166 : UH2 = UH2_0(v162, v165)                                       │

00:00:49 #2047 [Verbose] > │     let v167 : UH2 = UH2_0(v162, v166)                                       │

00:00:49 #2048 [Verbose] > │     let v168 : US0 = US0_0                                                   │

00:00:49 #2049 [Verbose] > │     let v169 : UH5 = UH5_1                                                   │

00:00:49 #2050 [Verbose] > │     let v170 : UH5 = UH5_0(v167, v168, v169)                                 │

00:00:49 #2051 [Verbose] > │     let v171 : UH5 = UH5_0(v160, v161, v170)                                 │

00:00:49 #2052 [Verbose] > │     let v172 : (struct (UH2 * US0) []) = method22(v171)                      │

00:00:49 #2053 [Verbose] > │     let v173 : uint64 = System.Convert.ToUInt64 v172.Length                  │

00:00:49 #2054 [Verbose] > │     let v174 : uint64 = System.Convert.ToUInt64 v102.Length                  │

00:00:49 #2055 [Verbose] > │     let v175 : uint64 = v173 + v174                                          │

00:00:49 #2056 [Verbose] > │     let v176 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:49 #2057 [Verbose] > │ US0)> (System.Convert.ToInt32(v175))                                         │

00:00:49 #2058 [Verbose] > │     let v177 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2059 [Verbose] > │     while method4(v175, v177) do                                             │

00:00:49 #2060 [Verbose] > │         let v179 : uint64 = v177.l0                                          │

00:00:49 #2061 [Verbose] > │         let v180 : bool = v179 < v173                                        │

00:00:49 #2062 [Verbose] > │         let struct (v186 : UH2, v187 : US0) =                                │

00:00:49 #2063 [Verbose] > │             if v180 then                                                     │

00:00:49 #2064 [Verbose] > │                 let struct (v181 : UH2, v182 : US0) = v172.[int v179]        │

00:00:49 #2065 [Verbose] > │                 struct (v181, v182)                                          │

00:00:49 #2066 [Verbose] > │             else                                                             │

00:00:49 #2067 [Verbose] > │                 let v183 : uint64 = v179 - v173                              │

00:00:49 #2068 [Verbose] > │                 let struct (v184 : UH2, v185 : US0) = v102.[int v183]        │

00:00:49 #2069 [Verbose] > │                 struct (v184, v185)                                          │

00:00:49 #2070 [Verbose] > │         v176.[int v179] <- struct (v186, v187)                               │

00:00:49 #2071 [Verbose] > │         let v188 : uint64 = v179 + 1UL                                       │

00:00:49 #2072 [Verbose] > │         v177.l0 <- v188                                                      │

00:00:49 #2073 [Verbose] > │         ()                                                                   │

00:00:49 #2074 [Verbose] > │     let v189 : uint64 = System.Convert.ToUInt64 v176.Length                  │

00:00:49 #2075 [Verbose] > │     let v190 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:00:49 #2076 [Verbose] > │ (System.Convert.ToInt32(v189))                                               │

00:00:49 #2077 [Verbose] > │     let v191 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2078 [Verbose] > │     while method4(v189, v191) do                                             │

00:00:49 #2079 [Verbose] > │         let v193 : uint64 = v191.l0                                          │

00:00:49 #2080 [Verbose] > │         let struct (v194 : UH2, v195 : US0) = v176.[int v193]                │

00:00:49 #2081 [Verbose] > │         let v196 : (string []) = method25(v194)                              │

00:00:49 #2082 [Verbose] > │         v190.[int v193] <- v196                                              │

00:00:49 #2083 [Verbose] > │         let v197 : uint64 = v193 + 1UL                                       │

00:00:49 #2084 [Verbose] > │         v191.l0 <- v197                                                      │

00:00:49 #2085 [Verbose] > │         ()                                                                   │

00:00:49 #2086 [Verbose] > │     let v198 : ((string []) []) = v190 |> Array.transpose                    │

00:00:49 #2087 [Verbose] > │     let v199 : uint64 = System.Convert.ToUInt64 v198.Length                  │

00:00:49 #2088 [Verbose] > │     let v200 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:49 #2089 [Verbose] > │ (System.Convert.ToInt32(v199))                                               │

00:00:49 #2090 [Verbose] > │     let v201 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2091 [Verbose] > │     while method4(v199, v201) do                                             │

00:00:49 #2092 [Verbose] > │         let v203 : uint64 = v201.l0                                          │

00:00:49 #2093 [Verbose] > │         let v204 : (string []) = v198.[int v203]                             │

00:00:49 #2094 [Verbose] > │         let v205 : uint64 = System.Convert.ToUInt64 v204.Length              │

00:00:49 #2095 [Verbose] > │         let v206 : (int64 []) = Array.zeroCreate<int64>                      │

00:00:49 #2096 [Verbose] > │ (System.Convert.ToInt32(v205))                                               │

00:00:49 #2097 [Verbose] > │         let v207 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:49 #2098 [Verbose] > │         while method4(v205, v207) do                                         │

00:00:49 #2099 [Verbose] > │             let v209 : uint64 = v207.l0                                      │

00:00:49 #2100 [Verbose] > │             let v210 : string = v204.[int v209]                              │

00:00:49 #2101 [Verbose] > │             let v211 : int64 = System.Convert.ToInt64 v210.Length            │

00:00:49 #2102 [Verbose] > │             v206.[int v209] <- v211                                          │

00:00:49 #2103 [Verbose] > │             let v212 : uint64 = v209 + 1UL                                   │

00:00:49 #2104 [Verbose] > │             v207.l0 <- v212                                                  │

00:00:49 #2105 [Verbose] > │             ()                                                               │

00:00:49 #2106 [Verbose] > │         let v213 : (int64 []) = v206 |> Array.sortDescending                 │

00:00:49 #2107 [Verbose] > │         let v214 : int64 option = v213 |> Array.tryItem 0                    │

00:00:49 #2108 [Verbose] > │         let v215 : (int64 -> US1) = closure7()                               │

00:00:49 #2109 [Verbose] > │         let v216 : US1 = US1_0                                               │

00:00:49 #2110 [Verbose] > │         let v217 : US1 = v214 |> Option.map v215 |> Option.defaultValue v216 │

00:00:49 #2111 [Verbose] > │         let v220 : int64 =                                                   │

00:00:49 #2112 [Verbose] > │             match v217 with                                                  │

00:00:49 #2113 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:49 #2114 [Verbose] > │                 0L                                                           │

00:00:49 #2115 [Verbose] > │             | US1_1(v218) -> (* Some *)                                      │

00:00:49 #2116 [Verbose] > │                 v218                                                         │

00:00:49 #2117 [Verbose] > │         v200.[int v203] <- v220                                              │

00:00:49 #2118 [Verbose] > │         let v221 : uint64 = v203 + 1UL                                       │

00:00:49 #2119 [Verbose] > │         v201.l0 <- v221                                                      │

00:00:49 #2120 [Verbose] > │         ()                                                                   │

00:00:49 #2121 [Verbose] > │     let v222 : uint64 = System.Convert.ToUInt64 v200.Length                  │

00:00:49 #2122 [Verbose] > │     let v223 : UH6 = UH6_1                                                   │

00:00:49 #2123 [Verbose] > │     let v224 : Mut3 = {l0 = 0UL; l1 = v223; l2 = 0} : Mut3                   │

00:00:49 #2124 [Verbose] > │     while method28(v222, v224) do                                            │

00:00:49 #2125 [Verbose] > │         let v226 : uint64 = v224.l0                                          │

00:00:49 #2126 [Verbose] > │         let struct (v227 : UH6, v228 : int32) = v224.l1, v224.l2             │

00:00:49 #2127 [Verbose] > │         let v229 : int64 = v200.[int v226]                                   │

00:00:49 #2128 [Verbose] > │         let v230 : int32 = v228 + 1                                          │

00:00:49 #2129 [Verbose] > │         let v231 : uint64 = v226 + 1UL                                       │

00:00:49 #2130 [Verbose] > │         let v232 : UH6 = UH6_0(v228, v229, v227)                             │

00:00:49 #2131 [Verbose] > │         v224.l0 <- v231                                                      │

00:00:49 #2132 [Verbose] > │         v224.l1 <- v232                                                      │

00:00:49 #2133 [Verbose] > │         v224.l2 <- v230                                                      │

00:00:49 #2134 [Verbose] > │         ()                                                                   │

00:00:49 #2135 [Verbose] > │     let struct (v233 : UH6, v234 : int32) = v224.l1, v224.l2                 │

00:00:49 #2136 [Verbose] > │     let v235 : UH6 = UH6_1                                                   │

00:00:49 #2137 [Verbose] > │     let v236 : UH6 = method29(v233, v235)                                    │

00:00:49 #2138 [Verbose] > │     let v237 : (struct (int32 * int64) []) = method30(v236)                  │

00:00:49 #2139 [Verbose] > │     let v238 : Map<int32, int64> = v237 |> Array.map (fun (struct (a, b)) -> │

00:00:49 #2140 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:00:49 #2141 [Verbose] > │     let v239 : (struct ((string []) * US0) []) = Array.zeroCreate<struct     │

00:00:49 #2142 [Verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v189))                          │

00:00:49 #2143 [Verbose] > │     let v240 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2144 [Verbose] > │     while method4(v189, v240) do                                             │

00:00:49 #2145 [Verbose] > │         let v242 : uint64 = v240.l0                                          │

00:00:49 #2146 [Verbose] > │         let struct (v243 : UH2, v244 : US0) = v176.[int v242]                │

00:00:49 #2147 [Verbose] > │         let v245 : UH7 = UH7_1                                               │

00:00:49 #2148 [Verbose] > │         let v246 : int32 = 0                                                 │

00:00:49 #2149 [Verbose] > │         let struct (v247 : UH7, v248 : int32) = method33(v243, v245, v246)   │

00:00:49 #2150 [Verbose] > │         let v249 : UH7 = UH7_1                                               │

00:00:49 #2151 [Verbose] > │         let v250 : UH7 = method34(v247, v249)                                │

00:00:49 #2152 [Verbose] > │         let v251 : UH2 = UH2_1                                               │

00:00:49 #2153 [Verbose] > │         let v252 : UH2 = method35(v238, v250, v251)                          │

00:00:49 #2154 [Verbose] > │         let v253 : (string []) = method9(v252)                               │

00:00:49 #2155 [Verbose] > │         v239.[int v242] <- struct (v253, v244)                               │

00:00:49 #2156 [Verbose] > │         let v254 : uint64 = v242 + 1UL                                       │

00:00:49 #2157 [Verbose] > │         v240.l0 <- v254                                                      │

00:00:49 #2158 [Verbose] > │         ()                                                                   │

00:00:49 #2159 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #2160 [Verbose] > │     let v255 : uint64 = System.Convert.ToUInt64 v239.Length                  │

00:00:49 #2161 [Verbose] > │     let v256 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2162 [Verbose] > │     while method4(v255, v256) do                                             │

00:00:49 #2163 [Verbose] > │         let v258 : uint64 = v256.l0                                          │

00:00:49 #2164 [Verbose] > │         let struct (v259 : (string []), v260 : US0) = v239.[int v258]        │

00:00:49 #2165 [Verbose] > │         match v260 with                                                      │

00:00:49 #2166 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:49 #2167 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:49 #2168 [Verbose] > │             let v264 : (unit -> unit) = closure8()                           │

00:00:49 #2169 [Verbose] > │             v264 ()                                                          │

00:00:49 #2170 [Verbose] > │             #else                                                            │

00:00:49 #2171 [Verbose] > │             let v265 : (unit -> unit) = closure9()                           │

00:00:49 #2172 [Verbose] > │             v265 ()                                                          │

00:00:49 #2173 [Verbose] > │             #endif                                                           │

00:00:49 #2174 [Verbose] > │             ()                                                               │

00:00:49 #2175 [Verbose] > │         | US0_1(v261) -> (* Some *)                                          │

00:00:49 #2176 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:49 #2177 [Verbose] > │             let v262 : (unit -> unit) = closure10()                          │

00:00:49 #2178 [Verbose] > │             v262 ()                                                          │

00:00:49 #2179 [Verbose] > │             #else                                                            │

00:00:49 #2180 [Verbose] > │             let v263 : (unit -> unit) = closure11(v261)                      │

00:00:49 #2181 [Verbose] > │             v263 ()                                                          │

00:00:49 #2182 [Verbose] > │             #endif                                                           │

00:00:49 #2183 [Verbose] > │             ()                                                               │

00:00:49 #2184 [Verbose] > │         let v266 : string = "\t| "                                           │

00:00:49 #2185 [Verbose] > │         let v267 : string = System.String.Join (v266, v259)                  │

00:00:49 #2186 [Verbose] > │         System.Console.WriteLine v267                                        │

00:00:49 #2187 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:00:49 #2188 [Verbose] > │         let v268 : (unit -> unit) = closure8()                               │

00:00:49 #2189 [Verbose] > │         v268 ()                                                              │

00:00:49 #2190 [Verbose] > │         #else                                                                │

00:00:49 #2191 [Verbose] > │         let v269 : (unit -> unit) = closure9()                               │

00:00:49 #2192 [Verbose] > │         v269 ()                                                              │

00:00:49 #2193 [Verbose] > │         #endif                                                               │

00:00:49 #2194 [Verbose] > │         let v270 : uint64 = v258 + 1UL                                       │

00:00:49 #2195 [Verbose] > │         v256.l0 <- v270                                                      │

00:00:49 #2196 [Verbose] > │         ()                                                                   │

00:00:49 #2197 [Verbose] > │     let v271 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:00:49 #2198 [Verbose] > │ (System.Convert.ToInt32(v101))                                               │

00:00:49 #2199 [Verbose] > │     let v272 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2200 [Verbose] > │     while method4(v101, v272) do                                             │

00:00:49 #2201 [Verbose] > │         let v274 : uint64 = v272.l0                                          │

00:00:49 #2202 [Verbose] > │         let struct (v275 : string, v276 : string, v277 : string, v278 :      │

00:00:49 #2203 [Verbose] > │ (int64 [])) = v24.[int v274]                                                 │

00:00:49 #2204 [Verbose] > │         let v279 : (int64 -> float) = float                                  │

00:00:49 #2205 [Verbose] > │         let v280 : uint64 = System.Convert.ToUInt64 v278.Length              │

00:00:49 #2206 [Verbose] > │         let v281 : (float []) = Array.zeroCreate<float>                      │

00:00:49 #2207 [Verbose] > │ (System.Convert.ToInt32(v280))                                               │

00:00:49 #2208 [Verbose] > │         let v282 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:49 #2209 [Verbose] > │         while method4(v280, v282) do                                         │

00:00:49 #2210 [Verbose] > │             let v284 : uint64 = v282.l0                                      │

00:00:49 #2211 [Verbose] > │             let v285 : int64 = v278.[int v284]                               │

00:00:49 #2212 [Verbose] > │             let v286 : float = v279 v285                                     │

00:00:49 #2213 [Verbose] > │             v281.[int v284] <- v286                                          │

00:00:49 #2214 [Verbose] > │             let v287 : uint64 = v284 + 1UL                                   │

00:00:49 #2215 [Verbose] > │             v282.l0 <- v287                                                  │

00:00:49 #2216 [Verbose] > │             ()                                                               │

00:00:49 #2217 [Verbose] > │         v271.[int v274] <- v281                                              │

00:00:49 #2218 [Verbose] > │         let v288 : uint64 = v274 + 1UL                                       │

00:00:49 #2219 [Verbose] > │         v272.l0 <- v288                                                      │

00:00:49 #2220 [Verbose] > │         ()                                                                   │

00:00:49 #2221 [Verbose] > │     let v289 : ((float []) []) = v271 |> Array.transpose                     │

00:00:49 #2222 [Verbose] > │     let v290 : uint64 = System.Convert.ToUInt64 v289.Length                  │

00:00:49 #2223 [Verbose] > │     let v291 : (float []) = Array.zeroCreate<float>                          │

00:00:49 #2224 [Verbose] > │ (System.Convert.ToInt32(v290))                                               │

00:00:49 #2225 [Verbose] > │     let v292 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2226 [Verbose] > │     while method4(v290, v292) do                                             │

00:00:49 #2227 [Verbose] > │         let v294 : uint64 = v292.l0                                          │

00:00:49 #2228 [Verbose] > │         let v295 : (float []) = v289.[int v294]                              │

00:00:49 #2229 [Verbose] > │         let v296 : float = v295 |> Array.average                             │

00:00:49 #2230 [Verbose] > │         v291.[int v294] <- v296                                              │

00:00:49 #2231 [Verbose] > │         let v297 : uint64 = v294 + 1UL                                       │

00:00:49 #2232 [Verbose] > │         v292.l0 <- v297                                                      │

00:00:49 #2233 [Verbose] > │         ()                                                                   │

00:00:49 #2234 [Verbose] > │     let v298 : (float -> int64) = int64                                      │

00:00:49 #2235 [Verbose] > │     let v299 : uint64 = System.Convert.ToUInt64 v291.Length                  │

00:00:49 #2236 [Verbose] > │     let v300 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:49 #2237 [Verbose] > │ (System.Convert.ToInt32(v299))                                               │

00:00:49 #2238 [Verbose] > │     let v301 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2239 [Verbose] > │     while method4(v299, v301) do                                             │

00:00:49 #2240 [Verbose] > │         let v303 : uint64 = v301.l0                                          │

00:00:49 #2241 [Verbose] > │         let v304 : float = v291.[int v303]                                   │

00:00:49 #2242 [Verbose] > │         let v305 : int64 = v298 v304                                         │

00:00:49 #2243 [Verbose] > │         v300.[int v303] <- v305                                              │

00:00:49 #2244 [Verbose] > │         let v306 : uint64 = v303 + 1UL                                       │

00:00:49 #2245 [Verbose] > │         v301.l0 <- v306                                                      │

00:00:49 #2246 [Verbose] > │         ()                                                                   │

00:00:49 #2247 [Verbose] > │     let v307 : uint64 = System.Convert.ToUInt64 v300.Length                  │

00:00:49 #2248 [Verbose] > │     let v308 : UH6 = UH6_1                                                   │

00:00:49 #2249 [Verbose] > │     let v309 : Mut3 = {l0 = 0UL; l1 = v308; l2 = 0} : Mut3                   │

00:00:49 #2250 [Verbose] > │     while method28(v307, v309) do                                            │

00:00:49 #2251 [Verbose] > │         let v311 : uint64 = v309.l0                                          │

00:00:49 #2252 [Verbose] > │         let struct (v312 : UH6, v313 : int32) = v309.l1, v309.l2             │

00:00:49 #2253 [Verbose] > │         let v314 : int64 = v300.[int v311]                                   │

00:00:49 #2254 [Verbose] > │         let v315 : int32 = v313 + 1                                          │

00:00:49 #2255 [Verbose] > │         let v316 : uint64 = v311 + 1UL                                       │

00:00:49 #2256 [Verbose] > │         let v317 : UH6 = UH6_0(v313, v314, v312)                             │

00:00:49 #2257 [Verbose] > │         v309.l0 <- v316                                                      │

00:00:49 #2258 [Verbose] > │         v309.l1 <- v317                                                      │

00:00:49 #2259 [Verbose] > │         v309.l2 <- v315                                                      │

00:00:49 #2260 [Verbose] > │         ()                                                                   │

00:00:49 #2261 [Verbose] > │     let struct (v318 : UH6, v319 : int32) = v309.l1, v309.l2                 │

00:00:49 #2262 [Verbose] > │     let v320 : UH6 = UH6_1                                                   │

00:00:49 #2263 [Verbose] > │     let v321 : UH6 = method29(v318, v320)                                    │

00:00:49 #2264 [Verbose] > │     let v322 : (struct (int32 * int64) []) = method36(v321)                  │

00:00:49 #2265 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #2266 [Verbose] > │     let v323 : string = "Average Ranking  "                                  │

00:00:49 #2267 [Verbose] > │     System.Console.WriteLine v323                                            │

00:00:49 #2268 [Verbose] > │     let v324 : (struct (int32 * int64) -> int64) = closure12()               │

00:00:49 #2269 [Verbose] > │     let v325 : (struct (int32 * int64) []) = v322 |> Array.sortBy v324       │

00:00:49 #2270 [Verbose] > │     let v326 : uint64 = System.Convert.ToUInt64 v325.Length                  │

00:00:49 #2271 [Verbose] > │     let v327 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2272 [Verbose] > │     while method4(v326, v327) do                                             │

00:00:49 #2273 [Verbose] > │         let v329 : uint64 = v327.l0                                          │

00:00:49 #2274 [Verbose] > │         let struct (v330 : int32, v331 : int64) = v325.[int v329]            │

00:00:49 #2275 [Verbose] > │         let v332 : string = $"Test case %d{v330 + 1}. Average Time: %A{v331} │

00:00:49 #2276 [Verbose] > │ "                                                                            │

00:00:49 #2277 [Verbose] > │         System.Console.WriteLine v332                                        │

00:00:49 #2278 [Verbose] > │         let v333 : uint64 = v329 + 1UL                                       │

00:00:49 #2279 [Verbose] > │         v327.l0 <- v333                                                      │

00:00:49 #2280 [Verbose] > │         ()                                                                   │

00:00:49 #2281 [Verbose] > │     ()                                                                       │

00:00:49 #2282 [Verbose] > │ and method0 () : unit =                                                      │

00:00:49 #2283 [Verbose] > │     let v0 : (unit -> unit) = closure0()                                     │

00:00:49 #2284 [Verbose] > │     let v1 : string = nameof v0                                              │

00:00:49 #2285 [Verbose] > │     let v2 : string = ""                                                     │

00:00:49 #2286 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #2287 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #2288 [Verbose] > │     let v3 : string = $"Test: {v1}"                                          │

00:00:49 #2289 [Verbose] > │     System.Console.WriteLine v3                                              │

00:00:49 #2290 [Verbose] > │     let v4 : string = "abc"                                                  │

00:00:49 #2291 [Verbose] > │     let v5 : string = "bca cab abc"                                          │

00:00:49 #2292 [Verbose] > │     let v6 : string = "abcde"                                                │

00:00:49 #2293 [Verbose] > │     let v7 : string = "bcdea cdeab deabc eabcd abcde"                        │

00:00:49 #2294 [Verbose] > │     let v8 : string = "abcdefghi"                                            │

00:00:49 #2295 [Verbose] > │     let v9 : string = "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde     │

00:00:49 #2296 [Verbose] > │ ghiabcdef hiabcdefg iabcdefgh abcdefghi"                                     │

00:00:49 #2297 [Verbose] > │     let v10 : string = "abab"                                                │

00:00:49 #2298 [Verbose] > │     let v11 : string = "baba abab baba abab"                                 │

00:00:49 #2299 [Verbose] > │     let v12 : string = "aa"                                                  │

00:00:49 #2300 [Verbose] > │     let v13 : string = "aa aa"                                               │

00:00:49 #2301 [Verbose] > │     let v14 : string = "z"                                                   │

00:00:49 #2302 [Verbose] > │     let v15 : UH0 = UH0_1                                                    │

00:00:49 #2303 [Verbose] > │     let v16 : UH0 = UH0_0(v14, v14, v15)                                     │

00:00:49 #2304 [Verbose] > │     let v17 : UH0 = UH0_0(v12, v13, v16)                                     │

00:00:49 #2305 [Verbose] > │     let v18 : UH0 = UH0_0(v10, v11, v17)                                     │

00:00:49 #2306 [Verbose] > │     let v19 : UH0 = UH0_0(v8, v9, v18)                                       │

00:00:49 #2307 [Verbose] > │     let v20 : UH0 = UH0_0(v6, v7, v19)                                       │

00:00:49 #2308 [Verbose] > │     let v21 : UH0 = UH0_0(v4, v5, v20)                                       │

00:00:49 #2309 [Verbose] > │     let v22 : (struct (string * string) []) = method1(v21)                   │

00:00:49 #2310 [Verbose] > │     let v23 : uint64 = System.Convert.ToUInt64 v22.Length                    │

00:00:49 #2311 [Verbose] > │     let v24 : (struct (string * string * string * (int64 [])) []) =          │

00:00:49 #2312 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:00:49 #2313 [Verbose] > │ (System.Convert.ToInt32(v23))                                                │

00:00:49 #2314 [Verbose] > │     let v25 : Mut0 = {l0 = 0UL} : Mut0                                       │

00:00:49 #2315 [Verbose] > │     while method4(v23, v25) do                                               │

00:00:49 #2316 [Verbose] > │         let v27 : uint64 = v25.l0                                            │

00:00:49 #2317 [Verbose] > │         let struct (v28 : string, v29 : string) = v22.[int v27]              │

00:00:49 #2318 [Verbose] > │         let v30 : string = $"%A{v28}"                                        │

00:00:49 #2319 [Verbose] > │         System.Console.WriteLine v2                                          │

00:00:49 #2320 [Verbose] > │         let v31 : string = $"Solution: {v30}  "                              │

00:00:49 #2321 [Verbose] > │         System.Console.WriteLine v31                                         │

00:00:49 #2322 [Verbose] > │         let v32 : int32 = 0                                                  │

00:00:49 #2323 [Verbose] > │         let v33 : string = "F"                                               │

00:00:49 #2324 [Verbose] > │         let v34 : (string -> string) = closure1()                            │

00:00:49 #2325 [Verbose] > │         let v35 : int32 = 1                                                  │

00:00:49 #2326 [Verbose] > │         let v36 : string = "FA"                                              │

00:00:49 #2327 [Verbose] > │         let v37 : (string -> string) = closure2()                            │

00:00:49 #2328 [Verbose] > │         let v38 : UH3 = UH3_1                                                │

00:00:49 #2329 [Verbose] > │         let v39 : UH3 = UH3_0(v35, v36, v37, v38)                            │

00:00:49 #2330 [Verbose] > │         let v40 : UH3 = UH3_0(v32, v33, v34, v39)                            │

00:00:49 #2331 [Verbose] > │         let v41 : (struct (int32 * string * (string -> string)) []) =        │

00:00:49 #2332 [Verbose] > │ method12(v40)                                                                │

00:00:49 #2333 [Verbose] > │         let v42 : uint64 = System.Convert.ToUInt64 v41.Length                │

00:00:49 #2334 [Verbose] > │         let v43 : (struct (string * int64) []) = Array.zeroCreate<struct     │

00:00:49 #2335 [Verbose] > │ (string * int64)> (System.Convert.ToInt32(v42))                              │

00:00:49 #2336 [Verbose] > │         let v44 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #2337 [Verbose] > │         while method4(v42, v44) do                                           │

00:00:49 #2338 [Verbose] > │             let v46 : uint64 = v44.l0                                        │

00:00:49 #2339 [Verbose] > │             let struct (v47 : int32, v48 : string, v49 : (string -> string)) │

00:00:49 #2340 [Verbose] > │ = v41.[int v46]                                                              │

00:00:49 #2341 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:49 #2342 [Verbose] > │             let v50 : (unit -> unit) = closure3()                            │

00:00:49 #2343 [Verbose] > │             v50 ()                                                           │

00:00:49 #2344 [Verbose] > │             #else                                                            │

00:00:49 #2345 [Verbose] > │             let v51 : (unit -> unit) = closure4()                            │

00:00:49 #2346 [Verbose] > │             v51 ()                                                           │

00:00:49 #2347 [Verbose] > │             #endif                                                           │

00:00:49 #2348 [Verbose] > │             let v52 : (unit -> System.Diagnostics.Stopwatch) =               │

00:00:49 #2349 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:00:49 #2350 [Verbose] > │             let v53 : System.Diagnostics.Stopwatch = v52 ()                  │

00:00:49 #2351 [Verbose] > │             v53.Start ()                                                     │

00:00:49 #2352 [Verbose] > │             let v54 : int64 = v53.ElapsedMilliseconds                        │

00:00:49 #2353 [Verbose] > │             let v55 : (int32 []) = Array.zeroCreate<int32> (2000001)         │

00:00:49 #2354 [Verbose] > │             let v56 : Mut1 = {l0 = 0} : Mut1                                 │

00:00:49 #2355 [Verbose] > │             while method15(v56) do                                           │

00:00:49 #2356 [Verbose] > │                 let v58 : int32 = v56.l0                                     │

00:00:49 #2357 [Verbose] > │                 v55.[int v58] <- v58                                         │

00:00:49 #2358 [Verbose] > │                 let v59 : int32 = v58 + 1                                    │

00:00:49 #2359 [Verbose] > │                 v56.l0 <- v59                                                │

00:00:49 #2360 [Verbose] > │                 ()                                                           │

00:00:49 #2361 [Verbose] > │             let v60 : (int32 -> string) = closure5(v28, v49)                 │

00:00:49 #2362 [Verbose] > │             let v61 : (string []) = v55 |> Array.Parallel.map v60            │

00:00:49 #2363 [Verbose] > │             let v62 : int32 = v61.Length                                     │

00:00:49 #2364 [Verbose] > │             let v63 : int32 = v62 - 1                                        │

00:00:49 #2365 [Verbose] > │             let v64 : string = v61.[int v63]                                 │

00:00:49 #2366 [Verbose] > │             let v65 : int64 = v53.ElapsedMilliseconds                        │

00:00:49 #2367 [Verbose] > │             let v66 : int64 = v65 - v54                                      │

00:00:49 #2368 [Verbose] > │             let v67 : string = $"Test case {v47 + 1}. {v48}. Time: {v66}  "  │

00:00:49 #2369 [Verbose] > │             System.Console.WriteLine v67                                     │

00:00:49 #2370 [Verbose] > │             v43.[int v46] <- struct (v64, v66)                               │

00:00:49 #2371 [Verbose] > │             let v68 : uint64 = v46 + 1UL                                     │

00:00:49 #2372 [Verbose] > │             v44.l0 <- v68                                                    │

00:00:49 #2373 [Verbose] > │             ()                                                               │

00:00:49 #2374 [Verbose] > │         let v69 : uint64 = System.Convert.ToUInt64 v43.Length                │

00:00:49 #2375 [Verbose] > │         let v70 : (string []) = Array.zeroCreate<string>                     │

00:00:49 #2376 [Verbose] > │ (System.Convert.ToInt32(v69))                                                │

00:00:49 #2377 [Verbose] > │         let v71 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #2378 [Verbose] > │         while method4(v69, v71) do                                           │

00:00:49 #2379 [Verbose] > │             let v73 : uint64 = v71.l0                                        │

00:00:49 #2380 [Verbose] > │             let struct (v74 : string, v75 : int64) = v43.[int v73]           │

00:00:49 #2381 [Verbose] > │             v70.[int v73] <- v74                                             │

00:00:49 #2382 [Verbose] > │             let v76 : uint64 = v73 + 1UL                                     │

00:00:49 #2383 [Verbose] > │             v71.l0 <- v76                                                    │

00:00:49 #2384 [Verbose] > │             ()                                                               │

00:00:49 #2385 [Verbose] > │         let v77 : uint64 = System.Convert.ToUInt64 v70.Length                │

00:00:49 #2386 [Verbose] > │         let v78 : bool = v77 <= 1UL                                          │

00:00:49 #2387 [Verbose] > │         if v78 then                                                          │

00:00:49 #2388 [Verbose] > │             ()                                                               │

00:00:49 #2389 [Verbose] > │         else                                                                 │

00:00:49 #2390 [Verbose] > │             let v79 : string = v70.[int 0UL]                                 │

00:00:49 #2391 [Verbose] > │             let v80 : uint64 = 0UL                                           │

00:00:49 #2392 [Verbose] > │             let v81 : bool = method16(v79, v70, v80)                         │

00:00:49 #2393 [Verbose] > │             if v81 then                                                      │

00:00:49 #2394 [Verbose] > │                 ()                                                           │

00:00:49 #2395 [Verbose] > │             else                                                             │

00:00:49 #2396 [Verbose] > │                 let v82 : string = $"Challenge error: {v70}"                 │

00:00:49 #2397 [Verbose] > │                 failwith<unit> v82                                           │

00:00:49 #2398 [Verbose] > │         let v83 : string = $"%A{v29}"                                        │

00:00:49 #2399 [Verbose] > │         let v84 : (string []) = Array.zeroCreate<string>                     │

00:00:49 #2400 [Verbose] > │ (System.Convert.ToInt32(v69))                                                │

00:00:49 #2401 [Verbose] > │         let v85 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #2402 [Verbose] > │         while method4(v69, v85) do                                           │

00:00:49 #2403 [Verbose] > │             let v87 : uint64 = v85.l0                                        │

00:00:49 #2404 [Verbose] > │             let struct (v88 : string, v89 : int64) = v43.[int v87]           │

00:00:49 #2405 [Verbose] > │             v84.[int v87] <- v88                                             │

00:00:49 #2406 [Verbose] > │             let v90 : uint64 = v87 + 1UL                                     │

00:00:49 #2407 [Verbose] > │             v85.l0 <- v90                                                    │

00:00:49 #2408 [Verbose] > │             ()                                                               │

00:00:49 #2409 [Verbose] > │         let v91 : string = v84.[int 0UL]                                     │

00:00:49 #2410 [Verbose] > │         let v92 : string = $"%A{v91}"                                        │

00:00:49 #2411 [Verbose] > │         let v93 : (int64 []) = Array.zeroCreate<int64>                       │

00:00:49 #2412 [Verbose] > │ (System.Convert.ToInt32(v69))                                                │

00:00:49 #2413 [Verbose] > │         let v94 : Mut0 = {l0 = 0UL} : Mut0                                   │

00:00:49 #2414 [Verbose] > │         while method4(v69, v94) do                                           │

00:00:49 #2415 [Verbose] > │             let v96 : uint64 = v94.l0                                        │

00:00:49 #2416 [Verbose] > │             let struct (v97 : string, v98 : int64) = v43.[int v96]           │

00:00:49 #2417 [Verbose] > │             v93.[int v96] <- v98                                             │

00:00:49 #2418 [Verbose] > │             let v99 : uint64 = v96 + 1UL                                     │

00:00:49 #2419 [Verbose] > │             v94.l0 <- v99                                                    │

00:00:49 #2420 [Verbose] > │             ()                                                               │

00:00:49 #2421 [Verbose] > │         v24.[int v27] <- struct (v83, v30, v92, v93)                         │

00:00:49 #2422 [Verbose] > │         let v100 : uint64 = v27 + 1UL                                        │

00:00:49 #2423 [Verbose] > │         v25.l0 <- v100                                                       │

00:00:49 #2424 [Verbose] > │         ()                                                                   │

00:00:49 #2425 [Verbose] > │     let v101 : uint64 = System.Convert.ToUInt64 v24.Length                   │

00:00:49 #2426 [Verbose] > │     let v102 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:49 #2427 [Verbose] > │ US0)> (System.Convert.ToInt32(v101))                                         │

00:00:49 #2428 [Verbose] > │     let v103 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2429 [Verbose] > │     while method4(v101, v103) do                                             │

00:00:49 #2430 [Verbose] > │         let v105 : uint64 = v103.l0                                          │

00:00:49 #2431 [Verbose] > │         let struct (v106 : string, v107 : string, v108 : string, v109 :      │

00:00:49 #2432 [Verbose] > │ (int64 [])) = v24.[int v105]                                                 │

00:00:49 #2433 [Verbose] > │         let v110 : uint64 = System.Convert.ToUInt64 v109.Length              │

00:00:49 #2434 [Verbose] > │         let v111 : UH4 = UH4_1                                               │

00:00:49 #2435 [Verbose] > │         let v112 : Mut2 = {l0 = 0UL; l1 = v111; l2 = 0L} : Mut2              │

00:00:49 #2436 [Verbose] > │         while method17(v110, v112) do                                        │

00:00:49 #2437 [Verbose] > │             let v114 : uint64 = v112.l0                                      │

00:00:49 #2438 [Verbose] > │             let struct (v115 : UH4, v116 : int64) = v112.l1, v112.l2         │

00:00:49 #2439 [Verbose] > │             let v117 : int64 = v109.[int v114]                               │

00:00:49 #2440 [Verbose] > │             let v118 : int64 = v116 + 1L                                     │

00:00:49 #2441 [Verbose] > │             let v119 : uint64 = v114 + 1UL                                   │

00:00:49 #2442 [Verbose] > │             let v120 : UH4 = UH4_0(v116, v117, v115)                         │

00:00:49 #2443 [Verbose] > │             v112.l0 <- v119                                                  │

00:00:49 #2444 [Verbose] > │             v112.l1 <- v120                                                  │

00:00:49 #2445 [Verbose] > │             v112.l2 <- v118                                                  │

00:00:49 #2446 [Verbose] > │             ()                                                               │

00:00:49 #2447 [Verbose] > │         let struct (v121 : UH4, v122 : int64) = v112.l1, v112.l2             │

00:00:49 #2448 [Verbose] > │         let v123 : UH4 = UH4_1                                               │

00:00:49 #2449 [Verbose] > │         let v124 : UH4 = method18(v121, v123)                                │

00:00:49 #2450 [Verbose] > │         let v125 : (struct (int64 * int64) []) = method19(v124)              │

00:00:49 #2451 [Verbose] > │         let v126 : int32 = v125.Length                                       │

00:00:49 #2452 [Verbose] > │         let v127 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:00:49 #2453 [Verbose] > │ (int64 * int64)> (v126)                                                      │

00:00:49 #2454 [Verbose] > │         let v128 : Mut1 = {l0 = 0} : Mut1                                    │

00:00:49 #2455 [Verbose] > │         while method5(v126, v128) do                                         │

00:00:49 #2456 [Verbose] > │             let v130 : int32 = v128.l0                                       │

00:00:49 #2457 [Verbose] > │             let struct (v131 : int64, v132 : int64) = v125.[int v130]        │

00:00:49 #2458 [Verbose] > │             let v133 : int64 = v131 + 1L                                     │

00:00:49 #2459 [Verbose] > │             v127.[int v130] <- struct (v133, v132)                           │

00:00:49 #2460 [Verbose] > │             let v134 : int32 = v130 + 1                                      │

00:00:49 #2461 [Verbose] > │             v128.l0 <- v134                                                  │

00:00:49 #2462 [Verbose] > │             ()                                                               │

00:00:49 #2463 [Verbose] > │         let v135 : (struct (int64 * int64) -> int64) = closure6()            │

00:00:49 #2464 [Verbose] > │         let v136 : (struct (int64 * int64) []) = v127 |> Array.sortBy v135   │

00:00:49 #2465 [Verbose] > │         let struct (v137 : int64, v138 : int64) = v136.[int 0]               │

00:00:49 #2466 [Verbose] > │         let v139 : string = $"%A{struct (v137, v138)}"                       │

00:00:49 #2467 [Verbose] > │         let v140 : bool = v106 = v108                                        │

00:00:49 #2468 [Verbose] > │         let v145 : US0 =                                                     │

00:00:49 #2469 [Verbose] > │             if v140 then                                                     │

00:00:49 #2470 [Verbose] > │                 let v141 : System.ConsoleColor =                             │

00:00:49 #2471 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:00:49 #2472 [Verbose] > │                 US0_1(v141)                                                  │

00:00:49 #2473 [Verbose] > │             else                                                             │

00:00:49 #2474 [Verbose] > │                 let v143 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:00:49 #2475 [Verbose] > │                 US0_1(v143)                                                  │

00:00:49 #2476 [Verbose] > │         let v146 : UH2 = UH2_1                                               │

00:00:49 #2477 [Verbose] > │         let v147 : UH2 = UH2_0(v139, v146)                                   │

00:00:49 #2478 [Verbose] > │         let v148 : UH2 = UH2_0(v108, v147)                                   │

00:00:49 #2479 [Verbose] > │         let v149 : UH2 = UH2_0(v106, v148)                                   │

00:00:49 #2480 [Verbose] > │         let v150 : UH2 = UH2_0(v107, v149)                                   │

00:00:49 #2481 [Verbose] > │         v102.[int v105] <- struct (v150, v145)                               │

00:00:49 #2482 [Verbose] > │         let v151 : uint64 = v105 + 1UL                                       │

00:00:49 #2483 [Verbose] > │         v103.l0 <- v151                                                      │

00:00:49 #2484 [Verbose] > │         ()                                                                   │

00:00:49 #2485 [Verbose] > │     let v152 : string = "Input"                                              │

00:00:49 #2486 [Verbose] > │     let v153 : string = "Expected"                                           │

00:00:49 #2487 [Verbose] > │     let v154 : string = "Result"                                             │

00:00:49 #2488 [Verbose] > │     let v155 : string = "Best"                                               │

00:00:49 #2489 [Verbose] > │     let v156 : UH2 = UH2_1                                                   │

00:00:49 #2490 [Verbose] > │     let v157 : UH2 = UH2_0(v155, v156)                                       │

00:00:49 #2491 [Verbose] > │     let v158 : UH2 = UH2_0(v154, v157)                                       │

00:00:49 #2492 [Verbose] > │     let v159 : UH2 = UH2_0(v153, v158)                                       │

00:00:49 #2493 [Verbose] > │     let v160 : UH2 = UH2_0(v152, v159)                                       │

00:00:49 #2494 [Verbose] > │     let v161 : US0 = US0_0                                                   │

00:00:49 #2495 [Verbose] > │     let v162 : string = "---"                                                │

00:00:49 #2496 [Verbose] > │     let v163 : UH2 = UH2_1                                                   │

00:00:49 #2497 [Verbose] > │     let v164 : UH2 = UH2_0(v162, v163)                                       │

00:00:49 #2498 [Verbose] > │     let v165 : UH2 = UH2_0(v162, v164)                                       │

00:00:49 #2499 [Verbose] > │     let v166 : UH2 = UH2_0(v162, v165)                                       │

00:00:49 #2500 [Verbose] > │     let v167 : UH2 = UH2_0(v162, v166)                                       │

00:00:49 #2501 [Verbose] > │     let v168 : US0 = US0_0                                                   │

00:00:49 #2502 [Verbose] > │     let v169 : UH5 = UH5_1                                                   │

00:00:49 #2503 [Verbose] > │     let v170 : UH5 = UH5_0(v167, v168, v169)                                 │

00:00:49 #2504 [Verbose] > │     let v171 : UH5 = UH5_0(v160, v161, v170)                                 │

00:00:49 #2505 [Verbose] > │     let v172 : (struct (UH2 * US0) []) = method22(v171)                      │

00:00:49 #2506 [Verbose] > │     let v173 : uint64 = System.Convert.ToUInt64 v172.Length                  │

00:00:49 #2507 [Verbose] > │     let v174 : uint64 = System.Convert.ToUInt64 v102.Length                  │

00:00:49 #2508 [Verbose] > │     let v175 : uint64 = v173 + v174                                          │

00:00:49 #2509 [Verbose] > │     let v176 : (struct (UH2 * US0) []) = Array.zeroCreate<struct (UH2 *      │

00:00:49 #2510 [Verbose] > │ US0)> (System.Convert.ToInt32(v175))                                         │

00:00:49 #2511 [Verbose] > │     let v177 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2512 [Verbose] > │     while method4(v175, v177) do                                             │

00:00:49 #2513 [Verbose] > │         let v179 : uint64 = v177.l0                                          │

00:00:49 #2514 [Verbose] > │         let v180 : bool = v179 < v173                                        │

00:00:49 #2515 [Verbose] > │         let struct (v186 : UH2, v187 : US0) =                                │

00:00:49 #2516 [Verbose] > │             if v180 then                                                     │

00:00:49 #2517 [Verbose] > │                 let struct (v181 : UH2, v182 : US0) = v172.[int v179]        │

00:00:49 #2518 [Verbose] > │                 struct (v181, v182)                                          │

00:00:49 #2519 [Verbose] > │             else                                                             │

00:00:49 #2520 [Verbose] > │                 let v183 : uint64 = v179 - v173                              │

00:00:49 #2521 [Verbose] > │                 let struct (v184 : UH2, v185 : US0) = v102.[int v183]        │

00:00:49 #2522 [Verbose] > │                 struct (v184, v185)                                          │

00:00:49 #2523 [Verbose] > │         v176.[int v179] <- struct (v186, v187)                               │

00:00:49 #2524 [Verbose] > │         let v188 : uint64 = v179 + 1UL                                       │

00:00:49 #2525 [Verbose] > │         v177.l0 <- v188                                                      │

00:00:49 #2526 [Verbose] > │         ()                                                                   │

00:00:49 #2527 [Verbose] > │     let v189 : uint64 = System.Convert.ToUInt64 v176.Length                  │

00:00:49 #2528 [Verbose] > │     let v190 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:00:49 #2529 [Verbose] > │ (System.Convert.ToInt32(v189))                                               │

00:00:49 #2530 [Verbose] > │     let v191 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2531 [Verbose] > │     while method4(v189, v191) do                                             │

00:00:49 #2532 [Verbose] > │         let v193 : uint64 = v191.l0                                          │

00:00:49 #2533 [Verbose] > │         let struct (v194 : UH2, v195 : US0) = v176.[int v193]                │

00:00:49 #2534 [Verbose] > │         let v196 : (string []) = method25(v194)                              │

00:00:49 #2535 [Verbose] > │         v190.[int v193] <- v196                                              │

00:00:49 #2536 [Verbose] > │         let v197 : uint64 = v193 + 1UL                                       │

00:00:49 #2537 [Verbose] > │         v191.l0 <- v197                                                      │

00:00:49 #2538 [Verbose] > │         ()                                                                   │

00:00:49 #2539 [Verbose] > │     let v198 : ((string []) []) = v190 |> Array.transpose                    │

00:00:49 #2540 [Verbose] > │     let v199 : uint64 = System.Convert.ToUInt64 v198.Length                  │

00:00:49 #2541 [Verbose] > │     let v200 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:49 #2542 [Verbose] > │ (System.Convert.ToInt32(v199))                                               │

00:00:49 #2543 [Verbose] > │     let v201 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2544 [Verbose] > │     while method4(v199, v201) do                                             │

00:00:49 #2545 [Verbose] > │         let v203 : uint64 = v201.l0                                          │

00:00:49 #2546 [Verbose] > │         let v204 : (string []) = v198.[int v203]                             │

00:00:49 #2547 [Verbose] > │         let v205 : uint64 = System.Convert.ToUInt64 v204.Length              │

00:00:49 #2548 [Verbose] > │         let v206 : (int64 []) = Array.zeroCreate<int64>                      │

00:00:49 #2549 [Verbose] > │ (System.Convert.ToInt32(v205))                                               │

00:00:49 #2550 [Verbose] > │         let v207 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:49 #2551 [Verbose] > │         while method4(v205, v207) do                                         │

00:00:49 #2552 [Verbose] > │             let v209 : uint64 = v207.l0                                      │

00:00:49 #2553 [Verbose] > │             let v210 : string = v204.[int v209]                              │

00:00:49 #2554 [Verbose] > │             let v211 : int64 = System.Convert.ToInt64 v210.Length            │

00:00:49 #2555 [Verbose] > │             v206.[int v209] <- v211                                          │

00:00:49 #2556 [Verbose] > │             let v212 : uint64 = v209 + 1UL                                   │

00:00:49 #2557 [Verbose] > │             v207.l0 <- v212                                                  │

00:00:49 #2558 [Verbose] > │             ()                                                               │

00:00:49 #2559 [Verbose] > │         let v213 : (int64 []) = v206 |> Array.sortDescending                 │

00:00:49 #2560 [Verbose] > │         let v214 : int64 option = v213 |> Array.tryItem 0                    │

00:00:49 #2561 [Verbose] > │         let v215 : (int64 -> US1) = closure7()                               │

00:00:49 #2562 [Verbose] > │         let v216 : US1 = US1_0                                               │

00:00:49 #2563 [Verbose] > │         let v217 : US1 = v214 |> Option.map v215 |> Option.defaultValue v216 │

00:00:49 #2564 [Verbose] > │         let v220 : int64 =                                                   │

00:00:49 #2565 [Verbose] > │             match v217 with                                                  │

00:00:49 #2566 [Verbose] > │             | US1_0 -> (* None *)                                            │

00:00:49 #2567 [Verbose] > │                 0L                                                           │

00:00:49 #2568 [Verbose] > │             | US1_1(v218) -> (* Some *)                                      │

00:00:49 #2569 [Verbose] > │                 v218                                                         │

00:00:49 #2570 [Verbose] > │         v200.[int v203] <- v220                                              │

00:00:49 #2571 [Verbose] > │         let v221 : uint64 = v203 + 1UL                                       │

00:00:49 #2572 [Verbose] > │         v201.l0 <- v221                                                      │

00:00:49 #2573 [Verbose] > │         ()                                                                   │

00:00:49 #2574 [Verbose] > │     let v222 : uint64 = System.Convert.ToUInt64 v200.Length                  │

00:00:49 #2575 [Verbose] > │     let v223 : UH6 = UH6_1                                                   │

00:00:49 #2576 [Verbose] > │     let v224 : Mut3 = {l0 = 0UL; l1 = v223; l2 = 0} : Mut3                   │

00:00:49 #2577 [Verbose] > │     while method28(v222, v224) do                                            │

00:00:49 #2578 [Verbose] > │         let v226 : uint64 = v224.l0                                          │

00:00:49 #2579 [Verbose] > │         let struct (v227 : UH6, v228 : int32) = v224.l1, v224.l2             │

00:00:49 #2580 [Verbose] > │         let v229 : int64 = v200.[int v226]                                   │

00:00:49 #2581 [Verbose] > │         let v230 : int32 = v228 + 1                                          │

00:00:49 #2582 [Verbose] > │         let v231 : uint64 = v226 + 1UL                                       │

00:00:49 #2583 [Verbose] > │         let v232 : UH6 = UH6_0(v228, v229, v227)                             │

00:00:49 #2584 [Verbose] > │         v224.l0 <- v231                                                      │

00:00:49 #2585 [Verbose] > │         v224.l1 <- v232                                                      │

00:00:49 #2586 [Verbose] > │         v224.l2 <- v230                                                      │

00:00:49 #2587 [Verbose] > │         ()                                                                   │

00:00:49 #2588 [Verbose] > │     let struct (v233 : UH6, v234 : int32) = v224.l1, v224.l2                 │

00:00:49 #2589 [Verbose] > │     let v235 : UH6 = UH6_1                                                   │

00:00:49 #2590 [Verbose] > │     let v236 : UH6 = method29(v233, v235)                                    │

00:00:49 #2591 [Verbose] > │     let v237 : (struct (int32 * int64) []) = method30(v236)                  │

00:00:49 #2592 [Verbose] > │     let v238 : Map<int32, int64> = v237 |> Array.map (fun (struct (a, b)) -> │

00:00:49 #2593 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:00:49 #2594 [Verbose] > │     let v239 : (struct ((string []) * US0) []) = Array.zeroCreate<struct     │

00:00:49 #2595 [Verbose] > │ ((string []) * US0)> (System.Convert.ToInt32(v189))                          │

00:00:49 #2596 [Verbose] > │     let v240 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2597 [Verbose] > │     while method4(v189, v240) do                                             │

00:00:49 #2598 [Verbose] > │         let v242 : uint64 = v240.l0                                          │

00:00:49 #2599 [Verbose] > │         let struct (v243 : UH2, v244 : US0) = v176.[int v242]                │

00:00:49 #2600 [Verbose] > │         let v245 : UH7 = UH7_1                                               │

00:00:49 #2601 [Verbose] > │         let v246 : int32 = 0                                                 │

00:00:49 #2602 [Verbose] > │         let struct (v247 : UH7, v248 : int32) = method33(v243, v245, v246)   │

00:00:49 #2603 [Verbose] > │         let v249 : UH7 = UH7_1                                               │

00:00:49 #2604 [Verbose] > │         let v250 : UH7 = method34(v247, v249)                                │

00:00:49 #2605 [Verbose] > │         let v251 : UH2 = UH2_1                                               │

00:00:49 #2606 [Verbose] > │         let v252 : UH2 = method35(v238, v250, v251)                          │

00:00:49 #2607 [Verbose] > │         let v253 : (string []) = method9(v252)                               │

00:00:49 #2608 [Verbose] > │         v239.[int v242] <- struct (v253, v244)                               │

00:00:49 #2609 [Verbose] > │         let v254 : uint64 = v242 + 1UL                                       │

00:00:49 #2610 [Verbose] > │         v240.l0 <- v254                                                      │

00:00:49 #2611 [Verbose] > │         ()                                                                   │

00:00:49 #2612 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #2613 [Verbose] > │     let v255 : uint64 = System.Convert.ToUInt64 v239.Length                  │

00:00:49 #2614 [Verbose] > │     let v256 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2615 [Verbose] > │     while method4(v255, v256) do                                             │

00:00:49 #2616 [Verbose] > │         let v258 : uint64 = v256.l0                                          │

00:00:49 #2617 [Verbose] > │         let struct (v259 : (string []), v260 : US0) = v239.[int v258]        │

00:00:49 #2618 [Verbose] > │         match v260 with                                                      │

00:00:49 #2619 [Verbose] > │         | US0_0 -> (* None *)                                                │

00:00:49 #2620 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:49 #2621 [Verbose] > │             let v264 : (unit -> unit) = closure8()                           │

00:00:49 #2622 [Verbose] > │             v264 ()                                                          │

00:00:49 #2623 [Verbose] > │             #else                                                            │

00:00:49 #2624 [Verbose] > │             let v265 : (unit -> unit) = closure9()                           │

00:00:49 #2625 [Verbose] > │             v265 ()                                                          │

00:00:49 #2626 [Verbose] > │             #endif                                                           │

00:00:49 #2627 [Verbose] > │             ()                                                               │

00:00:49 #2628 [Verbose] > │         | US0_1(v261) -> (* Some *)                                          │

00:00:49 #2629 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:00:49 #2630 [Verbose] > │             let v262 : (unit -> unit) = closure10()                          │

00:00:49 #2631 [Verbose] > │             v262 ()                                                          │

00:00:49 #2632 [Verbose] > │             #else                                                            │

00:00:49 #2633 [Verbose] > │             let v263 : (unit -> unit) = closure11(v261)                      │

00:00:49 #2634 [Verbose] > │             v263 ()                                                          │

00:00:49 #2635 [Verbose] > │             #endif                                                           │

00:00:49 #2636 [Verbose] > │             ()                                                               │

00:00:49 #2637 [Verbose] > │         let v266 : string = "\t| "                                           │

00:00:49 #2638 [Verbose] > │         let v267 : string = System.String.Join (v266, v259)                  │

00:00:49 #2639 [Verbose] > │         System.Console.WriteLine v267                                        │

00:00:49 #2640 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:00:49 #2641 [Verbose] > │         let v268 : (unit -> unit) = closure8()                               │

00:00:49 #2642 [Verbose] > │         v268 ()                                                              │

00:00:49 #2643 [Verbose] > │         #else                                                                │

00:00:49 #2644 [Verbose] > │         let v269 : (unit -> unit) = closure9()                               │

00:00:49 #2645 [Verbose] > │         v269 ()                                                              │

00:00:49 #2646 [Verbose] > │         #endif                                                               │

00:00:49 #2647 [Verbose] > │         let v270 : uint64 = v258 + 1UL                                       │

00:00:49 #2648 [Verbose] > │         v256.l0 <- v270                                                      │

00:00:49 #2649 [Verbose] > │         ()                                                                   │

00:00:49 #2650 [Verbose] > │     let v271 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:00:49 #2651 [Verbose] > │ (System.Convert.ToInt32(v101))                                               │

00:00:49 #2652 [Verbose] > │     let v272 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2653 [Verbose] > │     while method4(v101, v272) do                                             │

00:00:49 #2654 [Verbose] > │         let v274 : uint64 = v272.l0                                          │

00:00:49 #2655 [Verbose] > │         let struct (v275 : string, v276 : string, v277 : string, v278 :      │

00:00:49 #2656 [Verbose] > │ (int64 [])) = v24.[int v274]                                                 │

00:00:49 #2657 [Verbose] > │         let v279 : (int64 -> float) = float                                  │

00:00:49 #2658 [Verbose] > │         let v280 : uint64 = System.Convert.ToUInt64 v278.Length              │

00:00:49 #2659 [Verbose] > │         let v281 : (float []) = Array.zeroCreate<float>                      │

00:00:49 #2660 [Verbose] > │ (System.Convert.ToInt32(v280))                                               │

00:00:49 #2661 [Verbose] > │         let v282 : Mut0 = {l0 = 0UL} : Mut0                                  │

00:00:49 #2662 [Verbose] > │         while method4(v280, v282) do                                         │

00:00:49 #2663 [Verbose] > │             let v284 : uint64 = v282.l0                                      │

00:00:49 #2664 [Verbose] > │             let v285 : int64 = v278.[int v284]                               │

00:00:49 #2665 [Verbose] > │             let v286 : float = v279 v285                                     │

00:00:49 #2666 [Verbose] > │             v281.[int v284] <- v286                                          │

00:00:49 #2667 [Verbose] > │             let v287 : uint64 = v284 + 1UL                                   │

00:00:49 #2668 [Verbose] > │             v282.l0 <- v287                                                  │

00:00:49 #2669 [Verbose] > │             ()                                                               │

00:00:49 #2670 [Verbose] > │         v271.[int v274] <- v281                                              │

00:00:49 #2671 [Verbose] > │         let v288 : uint64 = v274 + 1UL                                       │

00:00:49 #2672 [Verbose] > │         v272.l0 <- v288                                                      │

00:00:49 #2673 [Verbose] > │         ()                                                                   │

00:00:49 #2674 [Verbose] > │     let v289 : ((float []) []) = v271 |> Array.transpose                     │

00:00:49 #2675 [Verbose] > │     let v290 : uint64 = System.Convert.ToUInt64 v289.Length                  │

00:00:49 #2676 [Verbose] > │     let v291 : (float []) = Array.zeroCreate<float>                          │

00:00:49 #2677 [Verbose] > │ (System.Convert.ToInt32(v290))                                               │

00:00:49 #2678 [Verbose] > │     let v292 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2679 [Verbose] > │     while method4(v290, v292) do                                             │

00:00:49 #2680 [Verbose] > │         let v294 : uint64 = v292.l0                                          │

00:00:49 #2681 [Verbose] > │         let v295 : (float []) = v289.[int v294]                              │

00:00:49 #2682 [Verbose] > │         let v296 : float = v295 |> Array.average                             │

00:00:49 #2683 [Verbose] > │         v291.[int v294] <- v296                                              │

00:00:49 #2684 [Verbose] > │         let v297 : uint64 = v294 + 1UL                                       │

00:00:49 #2685 [Verbose] > │         v292.l0 <- v297                                                      │

00:00:49 #2686 [Verbose] > │         ()                                                                   │

00:00:49 #2687 [Verbose] > │     let v298 : (float -> int64) = int64                                      │

00:00:49 #2688 [Verbose] > │     let v299 : uint64 = System.Convert.ToUInt64 v291.Length                  │

00:00:49 #2689 [Verbose] > │     let v300 : (int64 []) = Array.zeroCreate<int64>                          │

00:00:49 #2690 [Verbose] > │ (System.Convert.ToInt32(v299))                                               │

00:00:49 #2691 [Verbose] > │     let v301 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2692 [Verbose] > │     while method4(v299, v301) do                                             │

00:00:49 #2693 [Verbose] > │         let v303 : uint64 = v301.l0                                          │

00:00:49 #2694 [Verbose] > │         let v304 : float = v291.[int v303]                                   │

00:00:49 #2695 [Verbose] > │         let v305 : int64 = v298 v304                                         │

00:00:49 #2696 [Verbose] > │         v300.[int v303] <- v305                                              │

00:00:49 #2697 [Verbose] > │         let v306 : uint64 = v303 + 1UL                                       │

00:00:49 #2698 [Verbose] > │         v301.l0 <- v306                                                      │

00:00:49 #2699 [Verbose] > │         ()                                                                   │

00:00:49 #2700 [Verbose] > │     let v307 : uint64 = System.Convert.ToUInt64 v300.Length                  │

00:00:49 #2701 [Verbose] > │     let v308 : UH6 = UH6_1                                                   │

00:00:49 #2702 [Verbose] > │     let v309 : Mut3 = {l0 = 0UL; l1 = v308; l2 = 0} : Mut3                   │

00:00:49 #2703 [Verbose] > │     while method28(v307, v309) do                                            │

00:00:49 #2704 [Verbose] > │         let v311 : uint64 = v309.l0                                          │

00:00:49 #2705 [Verbose] > │         let struct (v312 : UH6, v313 : int32) = v309.l1, v309.l2             │

00:00:49 #2706 [Verbose] > │         let v314 : int64 = v300.[int v311]                                   │

00:00:49 #2707 [Verbose] > │         let v315 : int32 = v313 + 1                                          │

00:00:49 #2708 [Verbose] > │         let v316 : uint64 = v311 + 1UL                                       │

00:00:49 #2709 [Verbose] > │         let v317 : UH6 = UH6_0(v313, v314, v312)                             │

00:00:49 #2710 [Verbose] > │         v309.l0 <- v316                                                      │

00:00:49 #2711 [Verbose] > │         v309.l1 <- v317                                                      │

00:00:49 #2712 [Verbose] > │         v309.l2 <- v315                                                      │

00:00:49 #2713 [Verbose] > │         ()                                                                   │

00:00:49 #2714 [Verbose] > │     let struct (v318 : UH6, v319 : int32) = v309.l1, v309.l2                 │

00:00:49 #2715 [Verbose] > │     let v320 : UH6 = UH6_1                                                   │

00:00:49 #2716 [Verbose] > │     let v321 : UH6 = method29(v318, v320)                                    │

00:00:49 #2717 [Verbose] > │     let v322 : (struct (int32 * int64) []) = method36(v321)                  │

00:00:49 #2718 [Verbose] > │     System.Console.WriteLine v2                                              │

00:00:49 #2719 [Verbose] > │     let v323 : string = "Average Ranking  "                                  │

00:00:49 #2720 [Verbose] > │     System.Console.WriteLine v323                                            │

00:00:49 #2721 [Verbose] > │     let v324 : (struct (int32 * int64) -> int64) = closure12()               │

00:00:49 #2722 [Verbose] > │     let v325 : (struct (int32 * int64) []) = v322 |> Array.sortBy v324       │

00:00:49 #2723 [Verbose] > │     let v326 : uint64 = System.Convert.ToUInt64 v325.Length                  │

00:00:49 #2724 [Verbose] > │     let v327 : Mut0 = {l0 = 0UL} : Mut0                                      │

00:00:49 #2725 [Verbose] > │     while method4(v326, v327) do                                             │

00:00:49 #2726 [Verbose] > │         let v329 : uint64 = v327.l0                                          │

00:00:49 #2727 [Verbose] > │         let struct (v330 : int32, v331 : int64) = v325.[int v329]            │

00:00:49 #2728 [Verbose] > │         let v332 : string = $"Test case %d{v330 + 1}. Average Time: %A{v331} │

00:00:49 #2729 [Verbose] > │ "                                                                            │

00:00:49 #2730 [Verbose] > │         System.Console.WriteLine v332                                        │

00:00:49 #2731 [Verbose] > │         let v333 : uint64 = v329 + 1UL                                       │

00:00:49 #2732 [Verbose] > │         v327.l0 <- v333                                                      │

00:00:49 #2733 [Verbose] > │         ()                                                                   │

00:00:49 #2734 [Verbose] > │     ()                                                                       │

00:00:49 #2735 [Verbose] > │ method0()                                                                    │

00:00:49 #2736 [Verbose] > │                                                                              │

00:00:49 #2737 [Verbose] > │                                                                              │

00:00:49 #2738 [Verbose] > │                                                                              │

00:00:49 #2739 [Verbose] > │ Test: v0                                                                     │

00:00:49 #2740 [Verbose] > │                                                                              │

00:00:49 #2741 [Verbose] > │ Solution: "abc"                                                              │

00:00:49 #2742 [Verbose] > │ Test case 1. F. Time: 914                                                    │

00:00:49 #2743 [Verbose] > │ Test case 2. FA. Time: 1197                                                  │

00:00:49 #2744 [Verbose] > │                                                                              │

00:00:49 #2745 [Verbose] > │ Solution: "abcde"                                                            │

00:00:49 #2746 [Verbose] > │ Test case 1. F. Time: 1091                                                   │

00:00:49 #2747 [Verbose] > │ Test case 2. FA. Time: 1627                                                  │

00:00:49 #2748 [Verbose] > │                                                                              │

00:00:49 #2749 [Verbose] > │ Solution: "abcdefghi"                                                        │

00:00:49 #2750 [Verbose] > │ Test case 1. F. Time: 1999                                                   │

00:00:49 #2751 [Verbose] > │ Test case 2. FA. Time: 2227                                                  │

00:00:49 #2752 [Verbose] > │                                                                              │

00:00:49 #2753 [Verbose] > │ Solution: "abab"                                                             │

00:00:49 #2754 [Verbose] > │ Test case 1. F. Time: 1110                                                   │

00:00:49 #2755 [Verbose] > │ Test case 2. FA. Time: 1201                                                  │

00:00:49 #2756 [Verbose] > │                                                                              │

00:00:49 #2757 [Verbose] > │ Solution: "aa"                                                               │

00:00:49 #2758 [Verbose] > │ Test case 1. F. Time: 736                                                    │

00:00:49 #2759 [Verbose] > │ Test case 2. FA. Time: 756                                                   │

00:00:49 #2760 [Verbose] > │                                                                              │

00:00:49 #2761 [Verbose] > │ Solution: "z"                                                                │

00:00:49 #2762 [Verbose] > │ Test case 1. F. Time: 185                                                    │

00:00:49 #2763 [Verbose] > │ Test case 2. FA. Time: 133                                                   │

00:00:49 #2764 [Verbose] > │                                                                              │

00:00:49 #2765 [Verbose] > │ Input      	| Expected                                                         │

00:00:49 #2766 [Verbose] > │                                                                              │

00:00:49 #2767 [Verbose] > │ | Result                                                                     │

00:00:49 #2768 [Verbose] > │                                                                              │

00:00:49 #2769 [Verbose] > │ | Best                                                                       │

00:00:49 #2770 [Verbose] > │ ---        	| ---                                                              │

00:00:49 #2771 [Verbose] > │                                                                              │

00:00:49 #2772 [Verbose] > │ | ---                                                                        │

00:00:49 #2773 [Verbose] > │                                                                              │

00:00:49 #2774 [Verbose] > │ | ---                                                                        │

00:00:49 #2775 [Verbose] > │ "abc"      	| "bca cab abc"                                                    │

00:00:49 #2776 [Verbose] > │                                                                              │

00:00:49 #2777 [Verbose] > │ | "bca cab abc"                                                              │

00:00:49 #2778 [Verbose] > │                                                                              │

00:00:49 #2779 [Verbose] > │ | struct (1L, 914L)                                                          │

00:00:49 #2780 [Verbose] > │ "abcde"    	| "bcdea cdeab deabc eabcd abcde"                                  │

00:00:49 #2781 [Verbose] > │ | "bcdea cdeab deabc eabcd abcde"                                            │

00:00:49 #2782 [Verbose] > │ | struct (1L, 1091L)                                                         │

00:00:49 #2783 [Verbose] > │ "abcdefghi"	| "bcdefghia cdefghiab defghiabc efghiabcd fghiabcde ghiabcdef     │

00:00:49 #2784 [Verbose] > │ hiabcdefg iabcdefgh abcdefghi"	| "bcdefghia cdefghiab defghiabc efghiabcd      │

00:00:49 #2785 [Verbose] > │ fghiabcde ghiabcdef hiabcdefg iabcdefgh abcdefghi"	| struct (1L, 1999L)        │

00:00:49 #2786 [Verbose] > │ "abab"     	| "baba abab baba abab"                                            │

00:00:49 #2787 [Verbose] > │ | "baba abab baba abab"                                                      │

00:00:49 #2788 [Verbose] > │ | struct (1L, 1110L)                                                         │

00:00:49 #2789 [Verbose] > │ "aa"       	| "aa aa"                                                          │

00:00:49 #2790 [Verbose] > │                                                                              │

00:00:49 #2791 [Verbose] > │ | "aa aa"                                                                    │

00:00:49 #2792 [Verbose] > │                                                                              │

00:00:49 #2793 [Verbose] > │ | struct (1L, 736L)                                                          │

00:00:49 #2794 [Verbose] > │ "z"        	| "z"                                                              │

00:00:49 #2795 [Verbose] > │                                                                              │

00:00:49 #2796 [Verbose] > │ | "z"                                                                        │

00:00:49 #2797 [Verbose] > │                                                                              │

00:00:49 #2798 [Verbose] > │ | struct (2L, 133L)                                                          │

00:00:49 #2799 [Verbose] > │                                                                              │

00:00:49 #2800 [Verbose] > │ Average Ranking                                                              │

00:00:49 #2801 [Verbose] > │ Test case 1. Average Time: 1005L                                             │

00:00:49 #2802 [Verbose] > │ Test case 2. Average Time: 1190L                                             │

00:00:49 #2803 [Verbose] > │                                                                              │

00:00:49 #2804 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:49 #2805 [Verbose] >

00:00:49 #2806 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:49 #2807 [Verbose] > // // test

00:00:49 #2808 [Verbose] > // // rust=

00:00:49 #2809 [Verbose] > // // print_code=false

00:00:49 #2810 [Verbose] >

00:00:49 #2811 [Verbose] > // rotate_strings_tests ()

00:00:49 #2812 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1311-5766-6674-6197ae184964\main.spi

00:00:49 #2813 [Verbose] >

00:00:49 #2814 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:00:49 #2815 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:00:49 #2816 [Verbose] > │ ## binary_search_tests                                                       │

00:00:49 #2817 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:00:49 #2818 [Verbose] >

00:00:49 #2819 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:00:49 #2820 [Verbose] > // // test

00:00:49 #2821 [Verbose] > // // timeout=60000

00:00:49 #2822 [Verbose] > // // print_code=true

00:00:49 #2823 [Verbose] >

00:00:49 #2824 [Verbose] > inl binary_search_semi_open_1 arr target left right =

00:00:49 #2825 [Verbose] >     inl rec body left right =

00:00:49 #2826 [Verbose] >         if left >= right

00:00:49 #2827 [Verbose] >         then None

00:00:49 #2828 [Verbose] >         else

00:00:49 #2829 [Verbose] >             inl mid = (left + right) / 2

00:00:49 #2830 [Verbose] >             inl item = index arr mid

00:00:49 #2831 [Verbose] >             if item = target

00:00:49 #2832 [Verbose] >             then Some mid

00:00:49 #2833 [Verbose] >             elif item < target

00:00:49 #2834 [Verbose] >             then loop (mid + 1) right

00:00:49 #2835 [Verbose] >             else loop left mid

00:00:49 #2836 [Verbose] >     and inl loop left right =

00:00:49 #2837 [Verbose] >         if var_is right |> not

00:00:49 #2838 [Verbose] >         then body left right

00:00:49 #2839 [Verbose] >         else

00:00:49 #2840 [Verbose] >             inl left = dyn left

00:00:49 #2841 [Verbose] >             join body left right

00:00:49 #2842 [Verbose] >     loop left right

00:00:49 #2843 [Verbose] >

00:00:49 #2844 [Verbose] > inl binary_search_closed_1 arr target left right =

00:00:49 #2845 [Verbose] >     inl rec body left right =

00:00:49 #2846 [Verbose] >         if left > right

00:00:49 #2847 [Verbose] >         then None

00:00:49 #2848 [Verbose] >         else

00:00:49 #2849 [Verbose] >             inl mid = (left + right) / 2

00:00:49 #2850 [Verbose] >             inl item = index arr mid

00:00:49 #2851 [Verbose] >             if item = target

00:00:49 #2852 [Verbose] >             then Some mid

00:00:49 #2853 [Verbose] >             elif item < target

00:00:49 #2854 [Verbose] >             then loop (mid + 1) right

00:00:49 #2855 [Verbose] >             else loop left (mid - 1)

00:00:49 #2856 [Verbose] >     and inl loop left right =

00:00:49 #2857 [Verbose] >         if var_is right |> not

00:00:49 #2858 [Verbose] >         then body left right

00:00:49 #2859 [Verbose] >         else

00:00:49 #2860 [Verbose] >             inl left = dyn left

00:00:49 #2861 [Verbose] >             join body left right

00:00:49 #2862 [Verbose] >     loop left right

00:00:49 #2863 [Verbose] >

00:00:49 #2864 [Verbose] > inl binary_search_semi_open_2 arr target left right =

00:00:49 #2865 [Verbose] >     let rec body left right =

00:00:49 #2866 [Verbose] >         if left >= right

00:00:49 #2867 [Verbose] >         then None

00:00:49 #2868 [Verbose] >         else

00:00:49 #2869 [Verbose] >             inl mid = (left + right) / 2

00:00:49 #2870 [Verbose] >             inl item = index arr mid

00:00:49 #2871 [Verbose] >             if item = target

00:00:49 #2872 [Verbose] >             then Some mid

00:00:49 #2873 [Verbose] >             elif item < target

00:00:49 #2874 [Verbose] >             then loop (mid + 1) right

00:00:49 #2875 [Verbose] >             else loop left mid

00:00:49 #2876 [Verbose] >     and inl loop left right = body left right

00:00:49 #2877 [Verbose] >     loop left right

00:00:49 #2878 [Verbose] >

00:00:49 #2879 [Verbose] > inl binary_search_closed_2 arr target left right =

00:00:49 #2880 [Verbose] >     let rec body left right =

00:00:49 #2881 [Verbose] >         if left > right

00:00:49 #2882 [Verbose] >         then None

00:00:49 #2883 [Verbose] >         else

00:00:49 #2884 [Verbose] >             inl mid = (left + right) / 2

00:00:49 #2885 [Verbose] >             inl item = index arr mid

00:00:49 #2886 [Verbose] >             if item = target

00:00:49 #2887 [Verbose] >             then Some mid

00:00:49 #2888 [Verbose] >             elif item < target

00:00:49 #2889 [Verbose] >             then loop (mid + 1) right

00:00:49 #2890 [Verbose] >             else loop left (mid - 1)

00:00:49 #2891 [Verbose] >     and inl loop left right = body left right

00:00:49 #2892 [Verbose] >     loop left right

00:00:49 #2893 [Verbose] >

00:00:49 #2894 [Verbose] > inl get_solutions () =

00:00:49 #2895 [Verbose] >     [[

00:00:49 #2896 [Verbose] >         "semi_open_1",

00:00:49 #2897 [Verbose] >         fun (arr, (target, len)) =>

00:00:49 #2898 [Verbose] >             binary_search_semi_open_1 arr target 0 len

00:00:49 #2899 [Verbose] >

00:00:49 #2900 [Verbose] >         "closed_1",

00:00:49 #2901 [Verbose] >         fun (arr, (target, len)) =>

00:00:49 #2902 [Verbose] >             binary_search_closed_1 arr target 0 (len - 1)

00:00:49 #2903 [Verbose] >

00:00:49 #2904 [Verbose] >         "semi_open_2",

00:00:49 #2905 [Verbose] >         fun (arr, (target, len)) =>

00:00:49 #2906 [Verbose] >             binary_search_semi_open_2 arr target 0 len

00:00:49 #2907 [Verbose] >

00:00:49 #2908 [Verbose] >         "closed_2",

00:00:49 #2909 [Verbose] >         fun (arr, (target, len)) =>

00:00:49 #2910 [Verbose] >             binary_search_closed_2 arr target 0 (len - 1)

00:00:49 #2911 [Verbose] >     ]]

00:00:49 #2912 [Verbose] >

00:00:49 #2913 [Verbose] > inl rec binary_search_tests () =

00:00:49 #2914 [Verbose] >     inl arr_with_len target len arr =

00:00:49 #2915 [Verbose] >         arr, (target, (len |> optionm'.default_with fun () => length arr))

00:00:49 #2916 [Verbose] >

00:00:49 #2917 [Verbose] >     inl test_cases = [[

00:00:49 #2918 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 6 None), (Some 3i32)

00:00:49 #2919 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 1 None), (Some 0i32)

00:00:49 #2920 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 11 None), (Some 6i32)

00:00:49 #2921 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 12 None), None

00:00:49 #2922 [Verbose] >         ((am'.init_series 1i32 100 1) |> arr_with_len 60 None), (Some 59)

00:00:49 #2923 [Verbose] >

00:00:49 #2924 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 6 (Some 7)), (Some

00:00:49 #2925 [Verbose] > 3i32)

00:00:49 #2926 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 1 (Some 7)), (Some

00:00:49 #2927 [Verbose] > 0i32)

00:00:49 #2928 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 11 (Some 7)), (Some

00:00:49 #2929 [Verbose] > 6i32)

00:00:49 #2930 [Verbose] >         (a ;[[ 1i32; 3; 4; 6; 8; 9; 11 ]] |> arr_with_len 12 (Some 7)), None

00:00:49 #2931 [Verbose] >         ((am'.init_series 1i32 100 1) |> arr_with_len 60 (Some 100)), (Some 59)

00:00:49 #2932 [Verbose] >     ]]

00:00:49 #2933 [Verbose] >

00:00:49 #2934 [Verbose] >     inl solutions = get_solutions ()

00:00:49 #2935 [Verbose] >

00:00:49 #2936 [Verbose] >     // inl is_fast () = true

00:00:49 #2937 [Verbose] >

00:00:49 #2938 [Verbose] >     inl count =

00:00:49 #2939 [Verbose] >         if is_fast ()

00:00:49 #2940 [Verbose] >         then 1000i32

00:00:49 #2941 [Verbose] >         else 8000000i32

00:00:49 #2942 [Verbose] >

00:00:49 #2943 [Verbose] >     run_all (nameof binary_search_tests) count solutions test_cases

00:00:49 #2944 [Verbose] >     |> sort_result_list

00:00:49 #2945 [Verbose] >

00:00:49 #2946 [Verbose] >

00:00:49 #2947 [Verbose] > let main () =

00:00:49 #2948 [Verbose] >     binary_search_tests ()

00:00:49 #2949 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1311-5785-8541-8e9e4e9f7050\main.spi

00:01:16 #2950 [Verbose] >

00:01:16 #2951 [Verbose] > ╭─[ 27.02s - stdout ]──────────────────────────────────────────────────────────╮

00:01:16 #2952 [Verbose] > │ type Mut0 = {mutable l0 : int32}                                             │

00:01:16 #2953 [Verbose] > │ and [<Struct>] US0 =                                                         │

00:01:16 #2954 [Verbose] > │     | US0_0                                                                  │

00:01:16 #2955 [Verbose] > │     | US0_1 of f1_0 : int32                                                  │

00:01:16 #2956 [Verbose] > │ and UH0 =                                                                    │

00:01:16 #2957 [Verbose] > │     | UH0_0 of (int32 []) * int32 * int32 * US0 * UH0                        │

00:01:16 #2958 [Verbose] > │     | UH0_1                                                                  │

00:01:16 #2959 [Verbose] > │ and Mut1 = {mutable l0 : uint64}                                             │

00:01:16 #2960 [Verbose] > │ and UH1 =                                                                    │

00:01:16 #2961 [Verbose] > │     | UH1_0 of int32 * string * (struct ((int32 []) * int32 * int32) -> US0) │

00:01:16 #2962 [Verbose] > │ * UH1                                                                        │

00:01:16 #2963 [Verbose] > │     | UH1_1                                                                  │

00:01:16 #2964 [Verbose] > │ and UH2 =                                                                    │

00:01:16 #2965 [Verbose] > │     | UH2_0 of string * UH2                                                  │

00:01:16 #2966 [Verbose] > │     | UH2_1                                                                  │

00:01:16 #2967 [Verbose] > │ and [<Struct>] US1 =                                                         │

00:01:16 #2968 [Verbose] > │     | US1_0                                                                  │

00:01:16 #2969 [Verbose] > │     | US1_1 of f1_0 : System.ConsoleColor                                    │

00:01:16 #2970 [Verbose] > │ and UH3 =                                                                    │

00:01:16 #2971 [Verbose] > │     | UH3_0 of int64 * int64 * UH3                                           │

00:01:16 #2972 [Verbose] > │     | UH3_1                                                                  │

00:01:16 #2973 [Verbose] > │ and Mut2 = {mutable l0 : uint64; mutable l1 : UH3; mutable l2 : int64}       │

00:01:16 #2974 [Verbose] > │ and UH4 =                                                                    │

00:01:16 #2975 [Verbose] > │     | UH4_0 of UH2 * US1 * UH4                                               │

00:01:16 #2976 [Verbose] > │     | UH4_1                                                                  │

00:01:16 #2977 [Verbose] > │ and [<Struct>] US2 =                                                         │

00:01:16 #2978 [Verbose] > │     | US2_0                                                                  │

00:01:16 #2979 [Verbose] > │     | US2_1 of f1_0 : int64                                                  │

00:01:16 #2980 [Verbose] > │ and UH5 =                                                                    │

00:01:16 #2981 [Verbose] > │     | UH5_0 of int32 * int64 * UH5                                           │

00:01:16 #2982 [Verbose] > │     | UH5_1                                                                  │

00:01:16 #2983 [Verbose] > │ and Mut3 = {mutable l0 : uint64; mutable l1 : UH5; mutable l2 : int32}       │

00:01:16 #2984 [Verbose] > │ and UH6 =                                                                    │

00:01:16 #2985 [Verbose] > │     | UH6_0 of int32 * string * UH6                                          │

00:01:16 #2986 [Verbose] > │     | UH6_1                                                                  │

00:01:16 #2987 [Verbose] > │ let rec method1 (v0 : Mut0) : bool =                                         │

00:01:16 #2988 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:01:16 #2989 [Verbose] > │     let v2 : bool = v1 < 100                                                 │

00:01:16 #2990 [Verbose] > │     v2                                                                       │

00:01:16 #2991 [Verbose] > │ and method3 (v0 : UH0, v1 : uint64) : uint64 =                               │

00:01:16 #2992 [Verbose] > │     match v0 with                                                            │

00:01:16 #2993 [Verbose] > │     | UH0_0(v2, v3, v4, v5, v6) -> (* Cons *)                                │

00:01:16 #2994 [Verbose] > │         let v7 : uint64 = v1 + 1UL                                           │

00:01:16 #2995 [Verbose] > │         method3(v6, v7)                                                      │

00:01:16 #2996 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:01:16 #2997 [Verbose] > │         v1                                                                   │

00:01:16 #2998 [Verbose] > │ and method4 (v0 : (struct ((int32 []) * int32 * int32 * US0) []), v1 : UH0,  │

00:01:16 #2999 [Verbose] > │ v2 : uint64) : uint64 =                                                      │

00:01:16 #3000 [Verbose] > │     match v1 with                                                            │

00:01:16 #3001 [Verbose] > │     | UH0_0(v3, v4, v5, v6, v7) -> (* Cons *)                                │

00:01:16 #3002 [Verbose] > │         v0.[int v2] <- struct (v3, v4, v5, v6)                               │

00:01:16 #3003 [Verbose] > │         let v8 : uint64 = v2 + 1UL                                           │

00:01:16 #3004 [Verbose] > │         method4(v0, v7, v8)                                                  │

00:01:16 #3005 [Verbose] > │     | UH0_1 -> (* Nil *)                                                     │

00:01:16 #3006 [Verbose] > │         v2                                                                   │

00:01:16 #3007 [Verbose] > │ and method2 (v0 : UH0) : (struct ((int32 []) * int32 * int32 * US0) []) =    │

00:01:16 #3008 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:01:16 #3009 [Verbose] > │     let v2 : uint64 = method3(v0, v1)                                        │

00:01:16 #3010 [Verbose] > │     let v3 : (struct ((int32 []) * int32 * int32 * US0) []) =                │

00:01:16 #3011 [Verbose] > │ Array.zeroCreate<struct ((int32 []) * int32 * int32 * US0)>                  │

00:01:16 #3012 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:01:16 #3013 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:01:16 #3014 [Verbose] > │     let v5 : uint64 = method4(v3, v0, v4)                                    │

00:01:16 #3015 [Verbose] > │     v3                                                                       │

00:01:16 #3016 [Verbose] > │ and method5 (v0 : uint64, v1 : Mut1) : bool =                                │

00:01:16 #3017 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:01:16 #3018 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:01:16 #3019 [Verbose] > │     v3                                                                       │

00:01:16 #3020 [Verbose] > │ and method6 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 =    │

00:01:16 #3021 [Verbose] > │     let v4 : bool = v3 >= v2                                                 │

00:01:16 #3022 [Verbose] > │     if v4 then                                                               │

00:01:16 #3023 [Verbose] > │         US0_0                                                                │

00:01:16 #3024 [Verbose] > │     else                                                                     │

00:01:16 #3025 [Verbose] > │         let v6 : int32 = v3 + v2                                             │

00:01:16 #3026 [Verbose] > │         let v7 : int32 = v6 / 2                                              │

00:01:16 #3027 [Verbose] > │         let v8 : int32 = v0.[int v7]                                         │

00:01:16 #3028 [Verbose] > │         let v9 : bool = v8 = v1                                              │

00:01:16 #3029 [Verbose] > │         if v9 then                                                           │

00:01:16 #3030 [Verbose] > │             US0_1(v7)                                                        │

00:01:16 #3031 [Verbose] > │         else                                                                 │

00:01:16 #3032 [Verbose] > │             let v11 : bool = v8 < v1                                         │

00:01:16 #3033 [Verbose] > │             if v11 then                                                      │

00:01:16 #3034 [Verbose] > │                 let v12 : int32 = v7 + 1                                     │

00:01:16 #3035 [Verbose] > │                 method6(v0, v1, v2, v12)                                     │

00:01:16 #3036 [Verbose] > │             else                                                             │

00:01:16 #3037 [Verbose] > │                 method6(v0, v1, v7, v3)                                      │

00:01:16 #3038 [Verbose] > │ and closure1 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 =     │

00:01:16 #3039 [Verbose] > │     let v3 : int32 = 0                                                       │

00:01:16 #3040 [Verbose] > │     method6(v0, v1, v2, v3)                                                  │

00:01:16 #3041 [Verbose] > │ and method7 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 =    │

00:01:16 #3042 [Verbose] > │     let v4 : bool = v3 > v2                                                  │

00:01:16 #3043 [Verbose] > │     if v4 then                                                               │

00:01:16 #3044 [Verbose] > │         US0_0                                                                │

00:01:16 #3045 [Verbose] > │     else                                                                     │

00:01:16 #3046 [Verbose] > │         let v6 : int32 = v3 + v2                                             │

00:01:16 #3047 [Verbose] > │         let v7 : int32 = v6 / 2                                              │

00:01:16 #3048 [Verbose] > │         let v8 : int32 = v0.[int v7]                                         │

00:01:16 #3049 [Verbose] > │         let v9 : bool = v8 = v1                                              │

00:01:16 #3050 [Verbose] > │         if v9 then                                                           │

00:01:16 #3051 [Verbose] > │             US0_1(v7)                                                        │

00:01:16 #3052 [Verbose] > │         else                                                                 │

00:01:16 #3053 [Verbose] > │             let v11 : bool = v8 < v1                                         │

00:01:16 #3054 [Verbose] > │             if v11 then                                                      │

00:01:16 #3055 [Verbose] > │                 let v12 : int32 = v7 + 1                                     │

00:01:16 #3056 [Verbose] > │                 method7(v0, v1, v2, v12)                                     │

00:01:16 #3057 [Verbose] > │             else                                                             │

00:01:16 #3058 [Verbose] > │                 let v14 : int32 = v7 - 1                                     │

00:01:16 #3059 [Verbose] > │                 method7(v0, v1, v14, v3)                                     │

00:01:16 #3060 [Verbose] > │ and closure2 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 =     │

00:01:16 #3061 [Verbose] > │     let v3 : int32 = v2 - 1                                                  │

00:01:16 #3062 [Verbose] > │     let v4 : int32 = 0                                                       │

00:01:16 #3063 [Verbose] > │     method7(v0, v1, v3, v4)                                                  │

00:01:16 #3064 [Verbose] > │ and method8 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 =    │

00:01:16 #3065 [Verbose] > │     let v4 : bool = v2 >= v3                                                 │

00:01:16 #3066 [Verbose] > │     if v4 then                                                               │

00:01:16 #3067 [Verbose] > │         US0_0                                                                │

00:01:16 #3068 [Verbose] > │     else                                                                     │

00:01:16 #3069 [Verbose] > │         let v6 : int32 = v2 + v3                                             │

00:01:16 #3070 [Verbose] > │         let v7 : int32 = v6 / 2                                              │

00:01:16 #3071 [Verbose] > │         let v8 : int32 = v0.[int v7]                                         │

00:01:16 #3072 [Verbose] > │         let v9 : bool = v8 = v1                                              │

00:01:16 #3073 [Verbose] > │         if v9 then                                                           │

00:01:16 #3074 [Verbose] > │             US0_1(v7)                                                        │

00:01:16 #3075 [Verbose] > │         else                                                                 │

00:01:16 #3076 [Verbose] > │             let v11 : bool = v8 < v1                                         │

00:01:16 #3077 [Verbose] > │             if v11 then                                                      │

00:01:16 #3078 [Verbose] > │                 let v12 : int32 = v7 + 1                                     │

00:01:16 #3079 [Verbose] > │                 method8(v0, v1, v12, v3)                                     │

00:01:16 #3080 [Verbose] > │             else                                                             │

00:01:16 #3081 [Verbose] > │                 method8(v0, v1, v2, v7)                                      │

00:01:16 #3082 [Verbose] > │ and closure3 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 =     │

00:01:16 #3083 [Verbose] > │     let v3 : int32 = 0                                                       │

00:01:16 #3084 [Verbose] > │     method8(v0, v1, v3, v2)                                                  │

00:01:16 #3085 [Verbose] > │ and method9 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : int32) : US0 =    │

00:01:16 #3086 [Verbose] > │     let v4 : bool = v2 > v3                                                  │

00:01:16 #3087 [Verbose] > │     if v4 then                                                               │

00:01:16 #3088 [Verbose] > │         US0_0                                                                │

00:01:16 #3089 [Verbose] > │     else                                                                     │

00:01:16 #3090 [Verbose] > │         let v6 : int32 = v2 + v3                                             │

00:01:16 #3091 [Verbose] > │         let v7 : int32 = v6 / 2                                              │

00:01:16 #3092 [Verbose] > │         let v8 : int32 = v0.[int v7]                                         │

00:01:16 #3093 [Verbose] > │         let v9 : bool = v8 = v1                                              │

00:01:16 #3094 [Verbose] > │         if v9 then                                                           │

00:01:16 #3095 [Verbose] > │             US0_1(v7)                                                        │

00:01:16 #3096 [Verbose] > │         else                                                                 │

00:01:16 #3097 [Verbose] > │             let v11 : bool = v8 < v1                                         │

00:01:16 #3098 [Verbose] > │             if v11 then                                                      │

00:01:16 #3099 [Verbose] > │                 let v12 : int32 = v7 + 1                                     │

00:01:16 #3100 [Verbose] > │                 method9(v0, v1, v12, v3)                                     │

00:01:16 #3101 [Verbose] > │             else                                                             │

00:01:16 #3102 [Verbose] > │                 let v14 : int32 = v7 - 1                                     │

00:01:16 #3103 [Verbose] > │                 method9(v0, v1, v2, v14)                                     │

00:01:16 #3104 [Verbose] > │ and closure4 () struct (v0 : (int32 []), v1 : int32, v2 : int32) : US0 =     │

00:01:16 #3105 [Verbose] > │     let v3 : int32 = v2 - 1                                                  │

00:01:16 #3106 [Verbose] > │     let v4 : int32 = 0                                                       │

00:01:16 #3107 [Verbose] > │     method9(v0, v1, v4, v3)                                                  │

00:01:16 #3108 [Verbose] > │ and method11 (v0 : UH1, v1 : uint64) : uint64 =                              │

00:01:16 #3109 [Verbose] > │     match v0 with                                                            │

00:01:16 #3110 [Verbose] > │     | UH1_0(v2, v3, v4, v5) -> (* Cons *)                                    │

00:01:16 #3111 [Verbose] > │         let v6 : uint64 = v1 + 1UL                                           │

00:01:16 #3112 [Verbose] > │         method11(v5, v6)                                                     │

00:01:16 #3113 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:01:16 #3114 [Verbose] > │         v1                                                                   │

00:01:16 #3115 [Verbose] > │ and method12 (v0 : (struct (int32 * string * (struct ((int32 []) * int32 *   │

00:01:16 #3116 [Verbose] > │ int32) -> US0)) []), v1 : UH1, v2 : uint64) : uint64 =                       │

00:01:16 #3117 [Verbose] > │     match v1 with                                                            │

00:01:16 #3118 [Verbose] > │     | UH1_0(v3, v4, v5, v6) -> (* Cons *)                                    │

00:01:16 #3119 [Verbose] > │         v0.[int v2] <- struct (v3, v4, v5)                                   │

00:01:16 #3120 [Verbose] > │         let v7 : uint64 = v2 + 1UL                                           │

00:01:16 #3121 [Verbose] > │         method12(v0, v6, v7)                                                 │

00:01:16 #3122 [Verbose] > │     | UH1_1 -> (* Nil *)                                                     │

00:01:16 #3123 [Verbose] > │         v2                                                                   │

00:01:16 #3124 [Verbose] > │ and method10 (v0 : UH1) : (struct (int32 * string * (struct ((int32 []) *    │

00:01:16 #3125 [Verbose] > │ int32 * int32) -> US0)) []) =                                                │

00:01:16 #3126 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:01:16 #3127 [Verbose] > │     let v2 : uint64 = method11(v0, v1)                                       │

00:01:16 #3128 [Verbose] > │     let v3 : (struct (int32 * string * (struct ((int32 []) * int32 * int32)  │

00:01:16 #3129 [Verbose] > │ -> US0)) []) = Array.zeroCreate<struct (int32 * string * (struct ((int32 []) │

00:01:16 #3130 [Verbose] > │ * int32 * int32) -> US0))> (System.Convert.ToInt32(v2))                      │

00:01:16 #3131 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:01:16 #3132 [Verbose] > │     let v5 : uint64 = method12(v3, v0, v4)                                   │

00:01:16 #3133 [Verbose] > │     v3                                                                       │

00:01:16 #3134 [Verbose] > │ and closure5 () () : unit =                                                  │

00:01:16 #3135 [Verbose] > │     ()                                                                       │

00:01:16 #3136 [Verbose] > │ and closure6 () () : unit =                                                  │

00:01:16 #3137 [Verbose] > │     System.GC.Collect ()                                                     │

00:01:16 #3138 [Verbose] > │     ()                                                                       │

00:01:16 #3139 [Verbose] > │ and method13 (v0 : Mut0) : bool =                                            │

00:01:16 #3140 [Verbose] > │     let v1 : int32 = v0.l0                                                   │

00:01:16 #3141 [Verbose] > │     let v2 : bool = v1 < 8000001                                             │

00:01:16 #3142 [Verbose] > │     v2                                                                       │

00:01:16 #3143 [Verbose] > │ and closure7 (v0 : (int32 []), v1 : int32, v2 : int32, v3 : (struct ((int32  │

00:01:16 #3144 [Verbose] > │ []) * int32 * int32) -> US0)) (v4 : int32) : US0 =                           │

00:01:16 #3145 [Verbose] > │     v3 struct (v0, v1, v2)                                                   │

00:01:16 #3146 [Verbose] > │ and method14 (v0 : US0, v1 : (US0 []), v2 : uint64) : bool =                 │

00:01:16 #3147 [Verbose] > │     let v3 : uint64 = System.Convert.ToUInt64 v1.Length                      │

00:01:16 #3148 [Verbose] > │     let v4 : bool = v2 < v3                                                  │

00:01:16 #3149 [Verbose] > │     if v4 then                                                               │

00:01:16 #3150 [Verbose] > │         let v5 : US0 = v1.[int v2]                                           │

00:01:16 #3151 [Verbose] > │         let v9 : bool =                                                      │

00:01:16 #3152 [Verbose] > │             match v0, v5 with                                                │

00:01:17 #3153 [Verbose] > │             | US0_0, US0_0 -> (* None *)                                     │

00:01:17 #3154 [Verbose] > │                 true                                                         │

00:01:17 #3155 [Verbose] > │             | US0_1(v6), US0_1(v7) -> (* Some *)                             │

00:01:17 #3156 [Verbose] > │                 let v8 : bool = v6 = v7                                      │

00:01:17 #3157 [Verbose] > │                 v8                                                           │

00:01:17 #3158 [Verbose] > │             | _ ->                                                           │

00:01:17 #3159 [Verbose] > │                 false                                                        │

00:01:17 #3160 [Verbose] > │         if v9 then                                                           │

00:01:17 #3161 [Verbose] > │             let v10 : uint64 = v2 + 1UL                                      │

00:01:17 #3162 [Verbose] > │             method14(v0, v1, v10)                                            │

00:01:17 #3163 [Verbose] > │         else                                                                 │

00:01:17 #3164 [Verbose] > │             false                                                            │

00:01:17 #3165 [Verbose] > │     else                                                                     │

00:01:17 #3166 [Verbose] > │         true                                                                 │

00:01:17 #3167 [Verbose] > │ and method15 (v0 : uint64, v1 : Mut2) : bool =                               │

00:01:17 #3168 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:01:17 #3169 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:01:17 #3170 [Verbose] > │     v3                                                                       │

00:01:17 #3171 [Verbose] > │ and method16 (v0 : UH3, v1 : UH3) : UH3 =                                    │

00:01:17 #3172 [Verbose] > │     match v0 with                                                            │

00:01:17 #3173 [Verbose] > │     | UH3_0(v2, v3, v4) -> (* Cons *)                                        │

00:01:17 #3174 [Verbose] > │         let v5 : UH3 = UH3_0(v2, v3, v1)                                     │

00:01:17 #3175 [Verbose] > │         method16(v4, v5)                                                     │

00:01:17 #3176 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:01:17 #3177 [Verbose] > │         v1                                                                   │

00:01:17 #3178 [Verbose] > │ and method18 (v0 : UH3, v1 : int32) : int32 =                                │

00:01:17 #3179 [Verbose] > │     match v0 with                                                            │

00:01:17 #3180 [Verbose] > │     | UH3_0(v2, v3, v4) -> (* Cons *)                                        │

00:01:17 #3181 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:01:17 #3182 [Verbose] > │         method18(v4, v5)                                                     │

00:01:17 #3183 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:01:17 #3184 [Verbose] > │         v1                                                                   │

00:01:17 #3185 [Verbose] > │ and method19 (v0 : (struct (int64 * int64) []), v1 : UH3, v2 : int32) :      │

00:01:17 #3186 [Verbose] > │ int32 =                                                                      │

00:01:17 #3187 [Verbose] > │     match v1 with                                                            │

00:01:17 #3188 [Verbose] > │     | UH3_0(v3, v4, v5) -> (* Cons *)                                        │

00:01:17 #3189 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:01:17 #3190 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:01:17 #3191 [Verbose] > │         method19(v0, v5, v6)                                                 │

00:01:17 #3192 [Verbose] > │     | UH3_1 -> (* Nil *)                                                     │

00:01:17 #3193 [Verbose] > │         v2                                                                   │

00:01:17 #3194 [Verbose] > │ and method17 (v0 : UH3) : (struct (int64 * int64) []) =                      │

00:01:17 #3195 [Verbose] > │     let v1 : int32 = 0                                                       │

00:01:17 #3196 [Verbose] > │     let v2 : int32 = method18(v0, v1)                                        │

00:01:17 #3197 [Verbose] > │     let v3 : (struct (int64 * int64) []) = Array.zeroCreate<struct (int64 *  │

00:01:17 #3198 [Verbose] > │ int64)> (v2)                                                                 │

00:01:17 #3199 [Verbose] > │     let v4 : int32 = 0                                                       │

00:01:17 #3200 [Verbose] > │     let v5 : int32 = method19(v3, v0, v4)                                    │

00:01:17 #3201 [Verbose] > │     v3                                                                       │

00:01:17 #3202 [Verbose] > │ and method20 (v0 : int32, v1 : Mut0) : bool =                                │

00:01:17 #3203 [Verbose] > │     let v2 : int32 = v1.l0                                                   │

00:01:17 #3204 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:01:17 #3205 [Verbose] > │     v3                                                                       │

00:01:17 #3206 [Verbose] > │ and closure8 () struct (v0 : int64, v1 : int64) : int64 =                    │

00:01:17 #3207 [Verbose] > │     v1                                                                       │

00:01:17 #3208 [Verbose] > │ and method22 (v0 : UH4, v1 : uint64) : uint64 =                              │

00:01:17 #3209 [Verbose] > │     match v0 with                                                            │

00:01:17 #3210 [Verbose] > │     | UH4_0(v2, v3, v4) -> (* Cons *)                                        │

00:01:17 #3211 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:01:17 #3212 [Verbose] > │         method22(v4, v5)                                                     │

00:01:17 #3213 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:01:17 #3214 [Verbose] > │         v1                                                                   │

00:01:17 #3215 [Verbose] > │ and method23 (v0 : (struct (UH2 * US1) []), v1 : UH4, v2 : uint64) : uint64  │

00:01:17 #3216 [Verbose] > │ =                                                                            │

00:01:17 #3217 [Verbose] > │     match v1 with                                                            │

00:01:17 #3218 [Verbose] > │     | UH4_0(v3, v4, v5) -> (* Cons *)                                        │

00:01:17 #3219 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:01:17 #3220 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:01:17 #3221 [Verbose] > │         method23(v0, v5, v6)                                                 │

00:01:17 #3222 [Verbose] > │     | UH4_1 -> (* Nil *)                                                     │

00:01:17 #3223 [Verbose] > │         v2                                                                   │

00:01:17 #3224 [Verbose] > │ and method21 (v0 : UH4) : (struct (UH2 * US1) []) =                          │

00:01:17 #3225 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:01:17 #3226 [Verbose] > │     let v2 : uint64 = method22(v0, v1)                                       │

00:01:17 #3227 [Verbose] > │     let v3 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 * US1)>  │

00:01:17 #3228 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:01:17 #3229 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:01:17 #3230 [Verbose] > │     let v5 : uint64 = method23(v3, v0, v4)                                   │

00:01:17 #3231 [Verbose] > │     v3                                                                       │

00:01:17 #3232 [Verbose] > │ and method25 (v0 : UH2, v1 : uint64) : uint64 =                              │

00:01:17 #3233 [Verbose] > │     match v0 with                                                            │

00:01:17 #3234 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:01:17 #3235 [Verbose] > │         let v4 : uint64 = v1 + 1UL                                           │

00:01:17 #3236 [Verbose] > │         method25(v3, v4)                                                     │

00:01:17 #3237 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:01:17 #3238 [Verbose] > │         v1                                                                   │

00:01:17 #3239 [Verbose] > │ and method26 (v0 : (string []), v1 : UH2, v2 : uint64) : uint64 =            │

00:01:17 #3240 [Verbose] > │     match v1 with                                                            │

00:01:17 #3241 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:01:17 #3242 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:01:17 #3243 [Verbose] > │         let v5 : uint64 = v2 + 1UL                                           │

00:01:17 #3244 [Verbose] > │         method26(v0, v4, v5)                                                 │

00:01:17 #3245 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:01:17 #3246 [Verbose] > │         v2                                                                   │

00:01:17 #3247 [Verbose] > │ and method24 (v0 : UH2) : (string []) =                                      │

00:01:17 #3248 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:01:17 #3249 [Verbose] > │     let v2 : uint64 = method25(v0, v1)                                       │

00:01:17 #3250 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string>                          │

00:01:17 #3251 [Verbose] > │ (System.Convert.ToInt32(v2))                                                 │

00:01:17 #3252 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:01:17 #3253 [Verbose] > │     let v5 : uint64 = method26(v3, v0, v4)                                   │

00:01:17 #3254 [Verbose] > │     v3                                                                       │

00:01:17 #3255 [Verbose] > │ and closure9 () (v0 : int64) : US2 =                                         │

00:01:17 #3256 [Verbose] > │     US2_1(v0)                                                                │

00:01:17 #3257 [Verbose] > │ and method27 (v0 : uint64, v1 : Mut3) : bool =                               │

00:01:17 #3258 [Verbose] > │     let v2 : uint64 = v1.l0                                                  │

00:01:17 #3259 [Verbose] > │     let v3 : bool = v2 < v0                                                  │

00:01:17 #3260 [Verbose] > │     v3                                                                       │

00:01:17 #3261 [Verbose] > │ and method28 (v0 : UH5, v1 : UH5) : UH5 =                                    │

00:01:17 #3262 [Verbose] > │     match v0 with                                                            │

00:01:17 #3263 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:01:17 #3264 [Verbose] > │         let v5 : UH5 = UH5_0(v2, v3, v1)                                     │

00:01:17 #3265 [Verbose] > │         method28(v4, v5)                                                     │

00:01:17 #3266 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:01:17 #3267 [Verbose] > │         v1                                                                   │

00:01:17 #3268 [Verbose] > │ and method30 (v0 : UH5, v1 : int32) : int32 =                                │

00:01:17 #3269 [Verbose] > │     match v0 with                                                            │

00:01:17 #3270 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:01:17 #3271 [Verbose] > │         let v5 : int32 = v1 + 1                                              │

00:01:17 #3272 [Verbose] > │         method30(v4, v5)                                                     │

00:01:17 #3273 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:01:17 #3274 [Verbose] > │         v1                                                                   │

00:01:17 #3275 [Verbose] > │ and method31 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : int32) :      │

00:01:17 #3276 [Verbose] > │ int32 =                                                                      │

00:01:17 #3277 [Verbose] > │     match v1 with                                                            │

00:01:17 #3278 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:01:17 #3279 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:01:17 #3280 [Verbose] > │         let v6 : int32 = v2 + 1                                              │

00:01:17 #3281 [Verbose] > │         method31(v0, v5, v6)                                                 │

00:01:17 #3282 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:01:17 #3283 [Verbose] > │         v2                                                                   │

00:01:17 #3284 [Verbose] > │ and method29 (v0 : UH5) : (struct (int32 * int64) []) =                      │

00:01:17 #3285 [Verbose] > │     let v1 : int32 = 0                                                       │

00:01:17 #3286 [Verbose] > │     let v2 : int32 = method30(v0, v1)                                        │

00:01:17 #3287 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:01:17 #3288 [Verbose] > │ int64)> (v2)                                                                 │

00:01:17 #3289 [Verbose] > │     let v4 : int32 = 0                                                       │

00:01:17 #3290 [Verbose] > │     let v5 : int32 = method31(v3, v0, v4)                                    │

00:01:17 #3291 [Verbose] > │     v3                                                                       │

00:01:17 #3292 [Verbose] > │ and method32 (v0 : UH2, v1 : UH6, v2 : int32) : struct (UH6 * int32) =       │

00:01:17 #3293 [Verbose] > │     match v0 with                                                            │

00:01:17 #3294 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:01:17 #3295 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:01:17 #3296 [Verbose] > │         let v6 : UH6 = UH6_0(v2, v3, v1)                                     │

00:01:17 #3297 [Verbose] > │         method32(v4, v6, v5)                                                 │

00:01:17 #3298 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:01:17 #3299 [Verbose] > │         struct (v1, v2)                                                      │

00:01:17 #3300 [Verbose] > │ and method33 (v0 : UH6, v1 : UH6) : UH6 =                                    │

00:01:17 #3301 [Verbose] > │     match v0 with                                                            │

00:01:17 #3302 [Verbose] > │     | UH6_0(v2, v3, v4) -> (* Cons *)                                        │

00:01:17 #3303 [Verbose] > │         let v5 : UH6 = UH6_0(v2, v3, v1)                                     │

00:01:17 #3304 [Verbose] > │         method33(v4, v5)                                                     │

00:01:17 #3305 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:01:17 #3306 [Verbose] > │         v1                                                                   │

00:01:17 #3307 [Verbose] > │ and method34 (v0 : Map<int32, int64>, v1 : UH6, v2 : UH2) : UH2 =            │

00:01:17 #3308 [Verbose] > │     match v1 with                                                            │

00:01:17 #3309 [Verbose] > │     | UH6_0(v3, v4, v5) -> (* Cons *)                                        │

00:01:17 #3310 [Verbose] > │         let v6 : UH2 = method34(v0, v5, v2)                                  │

00:01:17 #3311 [Verbose] > │         let v7 : int64 = v0.[v3]                                             │

00:01:17 #3312 [Verbose] > │         let v8 : int32 = int32 v7                                            │

00:01:17 #3313 [Verbose] > │         let v9 : string = v4.PadRight v8                                     │

00:01:17 #3314 [Verbose] > │         UH2_0(v9, v6)                                                        │

00:01:17 #3315 [Verbose] > │     | UH6_1 -> (* Nil *)                                                     │

00:01:17 #3316 [Verbose] > │         v2                                                                   │

00:01:17 #3317 [Verbose] > │ and method36 (v0 : UH2, v1 : int32) : int32 =                                │

00:01:17 #3318 [Verbose] > │     match v0 with                                                            │

00:01:17 #3319 [Verbose] > │     | UH2_0(v2, v3) -> (* Cons *)                                            │

00:01:17 #3320 [Verbose] > │         let v4 : int32 = v1 + 1                                              │

00:01:17 #3321 [Verbose] > │         method36(v3, v4)                                                     │

00:01:17 #3322 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:01:17 #3323 [Verbose] > │         v1                                                                   │

00:01:17 #3324 [Verbose] > │ and method37 (v0 : (string []), v1 : UH2, v2 : int32) : int32 =              │

00:01:17 #3325 [Verbose] > │     match v1 with                                                            │

00:01:17 #3326 [Verbose] > │     | UH2_0(v3, v4) -> (* Cons *)                                            │

00:01:17 #3327 [Verbose] > │         v0.[int v2] <- v3                                                    │

00:01:17 #3328 [Verbose] > │         let v5 : int32 = v2 + 1                                              │

00:01:17 #3329 [Verbose] > │         method37(v0, v4, v5)                                                 │

00:01:17 #3330 [Verbose] > │     | UH2_1 -> (* Nil *)                                                     │

00:01:17 #3331 [Verbose] > │         v2                                                                   │

00:01:17 #3332 [Verbose] > │ and method35 (v0 : UH2) : (string []) =                                      │

00:01:17 #3333 [Verbose] > │     let v1 : int32 = 0                                                       │

00:01:17 #3334 [Verbose] > │     let v2 : int32 = method36(v0, v1)                                        │

00:01:17 #3335 [Verbose] > │     let v3 : (string []) = Array.zeroCreate<string> (v2)                     │

00:01:17 #3336 [Verbose] > │     let v4 : int32 = 0                                                       │

00:01:17 #3337 [Verbose] > │     let v5 : int32 = method37(v3, v0, v4)                                    │

00:01:17 #3338 [Verbose] > │     v3                                                                       │

00:01:17 #3339 [Verbose] > │ and closure10 () () : unit =                                                 │

00:01:17 #3340 [Verbose] > │     ()                                                                       │

00:01:17 #3341 [Verbose] > │ and closure11 () () : unit =                                                 │

00:01:17 #3342 [Verbose] > │     System.Console.ResetColor ()                                             │

00:01:17 #3343 [Verbose] > │     ()                                                                       │

00:01:17 #3344 [Verbose] > │ and closure12 () () : unit =                                                 │

00:01:17 #3345 [Verbose] > │     ()                                                                       │

00:01:17 #3346 [Verbose] > │ and closure13 (v0 : System.ConsoleColor) () : unit =                         │

00:01:17 #3347 [Verbose] > │     System.Console.ForegroundColor <- v0                                     │

00:01:17 #3348 [Verbose] > │     ()                                                                       │

00:01:17 #3349 [Verbose] > │ and method39 (v0 : UH5, v1 : uint64) : uint64 =                              │

00:01:17 #3350 [Verbose] > │     match v0 with                                                            │

00:01:17 #3351 [Verbose] > │     | UH5_0(v2, v3, v4) -> (* Cons *)                                        │

00:01:17 #3352 [Verbose] > │         let v5 : uint64 = v1 + 1UL                                           │

00:01:17 #3353 [Verbose] > │         method39(v4, v5)                                                     │

00:01:17 #3354 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:01:17 #3355 [Verbose] > │         v1                                                                   │

00:01:17 #3356 [Verbose] > │ and method40 (v0 : (struct (int32 * int64) []), v1 : UH5, v2 : uint64) :     │

00:01:17 #3357 [Verbose] > │ uint64 =                                                                     │

00:01:17 #3358 [Verbose] > │     match v1 with                                                            │

00:01:17 #3359 [Verbose] > │     | UH5_0(v3, v4, v5) -> (* Cons *)                                        │

00:01:17 #3360 [Verbose] > │         v0.[int v2] <- struct (v3, v4)                                       │

00:01:17 #3361 [Verbose] > │         let v6 : uint64 = v2 + 1UL                                           │

00:01:17 #3362 [Verbose] > │         method40(v0, v5, v6)                                                 │

00:01:17 #3363 [Verbose] > │     | UH5_1 -> (* Nil *)                                                     │

00:01:17 #3364 [Verbose] > │         v2                                                                   │

00:01:17 #3365 [Verbose] > │ and method38 (v0 : UH5) : (struct (int32 * int64) []) =                      │

00:01:17 #3366 [Verbose] > │     let v1 : uint64 = 0UL                                                    │

00:01:17 #3367 [Verbose] > │     let v2 : uint64 = method39(v0, v1)                                       │

00:01:17 #3368 [Verbose] > │     let v3 : (struct (int32 * int64) []) = Array.zeroCreate<struct (int32 *  │

00:01:17 #3369 [Verbose] > │ int64)> (System.Convert.ToInt32(v2))                                         │

00:01:17 #3370 [Verbose] > │     let v4 : uint64 = 0UL                                                    │

00:01:17 #3371 [Verbose] > │     let v5 : uint64 = method40(v3, v0, v4)                                   │

00:01:17 #3372 [Verbose] > │     v3                                                                       │

00:01:17 #3373 [Verbose] > │ and closure14 () struct (v0 : int32, v1 : int64) : int64 =                   │

00:01:17 #3374 [Verbose] > │     v1                                                                       │

00:01:17 #3375 [Verbose] > │ and closure0 () () : unit =                                                  │

00:01:17 #3376 [Verbose] > │     let v0 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3377 [Verbose] > │     let v1 : int32 = v0.Length                                               │

00:01:17 #3378 [Verbose] > │     let v2 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3379 [Verbose] > │     let v3 : int32 = v2.Length                                               │

00:01:17 #3380 [Verbose] > │     let v4 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3381 [Verbose] > │     let v5 : int32 = v4.Length                                               │

00:01:17 #3382 [Verbose] > │     let v6 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3383 [Verbose] > │     let v7 : int32 = v6.Length                                               │

00:01:17 #3384 [Verbose] > │     let v8 : (int32 []) = Array.zeroCreate<int32> (100)                      │

00:01:17 #3385 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:01:17 #3386 [Verbose] > │     while method1(v9) do                                                     │

00:01:17 #3387 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:01:17 #3388 [Verbose] > │         let v12 : int32 = 1 + v11                                            │

00:01:17 #3389 [Verbose] > │         v8.[int v11] <- v12                                                  │

00:01:17 #3390 [Verbose] > │         let v13 : int32 = v11 + 1                                            │

00:01:17 #3391 [Verbose] > │         v9.l0 <- v13                                                         │

00:01:17 #3392 [Verbose] > │         ()                                                                   │

00:01:17 #3393 [Verbose] > │     let v14 : int32 = v8.Length                                              │

00:01:17 #3394 [Verbose] > │     let v15 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3395 [Verbose] > │     let v16 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3396 [Verbose] > │     let v17 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3397 [Verbose] > │     let v18 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3398 [Verbose] > │     let v19 : (int32 []) = Array.zeroCreate<int32> (100)                     │

00:01:17 #3399 [Verbose] > │     let v20 : Mut0 = {l0 = 0} : Mut0                                         │

00:01:17 #3400 [Verbose] > │     while method1(v20) do                                                    │

00:01:17 #3401 [Verbose] > │         let v22 : int32 = v20.l0                                             │

00:01:17 #3402 [Verbose] > │         let v23 : int32 = 1 + v22                                            │

00:01:17 #3403 [Verbose] > │         v19.[int v22] <- v23                                                 │

00:01:17 #3404 [Verbose] > │         let v24 : int32 = v22 + 1                                            │

00:01:17 #3405 [Verbose] > │         v20.l0 <- v24                                                        │

00:01:17 #3406 [Verbose] > │         ()                                                                   │

00:01:17 #3407 [Verbose] > │     let v25 : (unit -> unit) = closure0()                                    │

00:01:17 #3408 [Verbose] > │     let v26 : string = nameof v25                                            │

00:01:17 #3409 [Verbose] > │     let v27 : string = ""                                                    │

00:01:17 #3410 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #3411 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #3412 [Verbose] > │     let v28 : string = $"Test: {v26}"                                        │

00:01:17 #3413 [Verbose] > │     System.Console.WriteLine v28                                             │

00:01:17 #3414 [Verbose] > │     let v29 : int32 = 6                                                      │

00:01:17 #3415 [Verbose] > │     let v30 : int32 = 3                                                      │

00:01:17 #3416 [Verbose] > │     let v31 : US0 = US0_1(v30)                                               │

00:01:17 #3417 [Verbose] > │     let v32 : int32 = 1                                                      │

00:01:17 #3418 [Verbose] > │     let v33 : int32 = 0                                                      │

00:01:17 #3419 [Verbose] > │     let v34 : US0 = US0_1(v33)                                               │

00:01:17 #3420 [Verbose] > │     let v35 : int32 = 11                                                     │

00:01:17 #3421 [Verbose] > │     let v36 : int32 = 6                                                      │

00:01:17 #3422 [Verbose] > │     let v37 : US0 = US0_1(v36)                                               │

00:01:17 #3423 [Verbose] > │     let v38 : int32 = 12                                                     │

00:01:17 #3424 [Verbose] > │     let v39 : US0 = US0_0                                                    │

00:01:17 #3425 [Verbose] > │     let v40 : int32 = 60                                                     │

00:01:17 #3426 [Verbose] > │     let v41 : int32 = 59                                                     │

00:01:17 #3427 [Verbose] > │     let v42 : US0 = US0_1(v41)                                               │

00:01:17 #3428 [Verbose] > │     let v43 : int32 = 6                                                      │

00:01:17 #3429 [Verbose] > │     let v44 : int32 = 7                                                      │

00:01:17 #3430 [Verbose] > │     let v45 : int32 = 3                                                      │

00:01:17 #3431 [Verbose] > │     let v46 : US0 = US0_1(v45)                                               │

00:01:17 #3432 [Verbose] > │     let v47 : int32 = 1                                                      │

00:01:17 #3433 [Verbose] > │     let v48 : int32 = 7                                                      │

00:01:17 #3434 [Verbose] > │     let v49 : int32 = 0                                                      │

00:01:17 #3435 [Verbose] > │     let v50 : US0 = US0_1(v49)                                               │

00:01:17 #3436 [Verbose] > │     let v51 : int32 = 11                                                     │

00:01:17 #3437 [Verbose] > │     let v52 : int32 = 7                                                      │

00:01:17 #3438 [Verbose] > │     let v53 : int32 = 6                                                      │

00:01:17 #3439 [Verbose] > │     let v54 : US0 = US0_1(v53)                                               │

00:01:17 #3440 [Verbose] > │     let v55 : int32 = 12                                                     │

00:01:17 #3441 [Verbose] > │     let v56 : int32 = 7                                                      │

00:01:17 #3442 [Verbose] > │     let v57 : US0 = US0_0                                                    │

00:01:17 #3443 [Verbose] > │     let v58 : int32 = 60                                                     │

00:01:17 #3444 [Verbose] > │     let v59 : int32 = 100                                                    │

00:01:17 #3445 [Verbose] > │     let v60 : int32 = 59                                                     │

00:01:17 #3446 [Verbose] > │     let v61 : US0 = US0_1(v60)                                               │

00:01:17 #3447 [Verbose] > │     let v62 : UH0 = UH0_1                                                    │

00:01:17 #3448 [Verbose] > │     let v63 : UH0 = UH0_0(v19, v58, v59, v61, v62)                           │

00:01:17 #3449 [Verbose] > │     let v64 : UH0 = UH0_0(v18, v55, v56, v57, v63)                           │

00:01:17 #3450 [Verbose] > │     let v65 : UH0 = UH0_0(v17, v51, v52, v54, v64)                           │

00:01:17 #3451 [Verbose] > │     let v66 : UH0 = UH0_0(v16, v47, v48, v50, v65)                           │

00:01:17 #3452 [Verbose] > │     let v67 : UH0 = UH0_0(v15, v43, v44, v46, v66)                           │

00:01:17 #3453 [Verbose] > │     let v68 : UH0 = UH0_0(v8, v40, v14, v42, v67)                            │

00:01:17 #3454 [Verbose] > │     let v69 : UH0 = UH0_0(v6, v38, v7, v39, v68)                             │

00:01:17 #3455 [Verbose] > │     let v70 : UH0 = UH0_0(v4, v35, v5, v37, v69)                             │

00:01:17 #3456 [Verbose] > │     let v71 : UH0 = UH0_0(v2, v32, v3, v34, v70)                             │

00:01:17 #3457 [Verbose] > │     let v72 : UH0 = UH0_0(v0, v29, v1, v31, v71)                             │

00:01:17 #3458 [Verbose] > │     let v73 : (struct ((int32 []) * int32 * int32 * US0) []) = method2(v72)  │

00:01:17 #3459 [Verbose] > │     let v74 : uint64 = System.Convert.ToUInt64 v73.Length                    │

00:01:17 #3460 [Verbose] > │     let v75 : (struct (string * string * string * (int64 [])) []) =          │

00:01:17 #3461 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:01:17 #3462 [Verbose] > │ (System.Convert.ToInt32(v74))                                                │

00:01:17 #3463 [Verbose] > │     let v76 : Mut1 = {l0 = 0UL} : Mut1                                       │

00:01:17 #3464 [Verbose] > │     while method5(v74, v76) do                                               │

00:01:17 #3465 [Verbose] > │         let v78 : uint64 = v76.l0                                            │

00:01:17 #3466 [Verbose] > │         let struct (v79 : (int32 []), v80 : int32, v81 : int32, v82 : US0) = │

00:01:17 #3467 [Verbose] > │ v73.[int v78]                                                                │

00:01:17 #3468 [Verbose] > │         let v83 : string = $"%A{struct (v79, v80, v81)}"                     │

00:01:17 #3469 [Verbose] > │         System.Console.WriteLine v27                                         │

00:01:17 #3470 [Verbose] > │         let v84 : string = $"Solution: {v83}  "                              │

00:01:17 #3471 [Verbose] > │         System.Console.WriteLine v84                                         │

00:01:17 #3472 [Verbose] > │         let v85 : int32 = 0                                                  │

00:01:17 #3473 [Verbose] > │         let v86 : string = "semi_open_1"                                     │

00:01:17 #3474 [Verbose] > │         let v87 : (struct ((int32 []) * int32 * int32) -> US0) = closure1()  │

00:01:17 #3475 [Verbose] > │         let v88 : int32 = 1                                                  │

00:01:17 #3476 [Verbose] > │         let v89 : string = "closed_1"                                        │

00:01:17 #3477 [Verbose] > │         let v90 : (struct ((int32 []) * int32 * int32) -> US0) = closure2()  │

00:01:17 #3478 [Verbose] > │         let v91 : int32 = 2                                                  │

00:01:17 #3479 [Verbose] > │         let v92 : string = "semi_open_2"                                     │

00:01:17 #3480 [Verbose] > │         let v93 : (struct ((int32 []) * int32 * int32) -> US0) = closure3()  │

00:01:17 #3481 [Verbose] > │         let v94 : int32 = 3                                                  │

00:01:17 #3482 [Verbose] > │         let v95 : string = "closed_2"                                        │

00:01:17 #3483 [Verbose] > │         let v96 : (struct ((int32 []) * int32 * int32) -> US0) = closure4()  │

00:01:17 #3484 [Verbose] > │         let v97 : UH1 = UH1_1                                                │

00:01:17 #3485 [Verbose] > │         let v98 : UH1 = UH1_0(v94, v95, v96, v97)                            │

00:01:17 #3486 [Verbose] > │         let v99 : UH1 = UH1_0(v91, v92, v93, v98)                            │

00:01:17 #3487 [Verbose] > │         let v100 : UH1 = UH1_0(v88, v89, v90, v99)                           │

00:01:17 #3488 [Verbose] > │         let v101 : UH1 = UH1_0(v85, v86, v87, v100)                          │

00:01:17 #3489 [Verbose] > │         let v102 : (struct (int32 * string * (struct ((int32 []) * int32 *   │

00:01:17 #3490 [Verbose] > │ int32) -> US0)) []) = method10(v101)                                         │

00:01:17 #3491 [Verbose] > │         let v103 : uint64 = System.Convert.ToUInt64 v102.Length              │

00:01:17 #3492 [Verbose] > │         let v104 : (struct (US0 * int64) []) = Array.zeroCreate<struct (US0  │

00:01:17 #3493 [Verbose] > │ * int64)> (System.Convert.ToInt32(v103))                                     │

00:01:17 #3494 [Verbose] > │         let v105 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #3495 [Verbose] > │         while method5(v103, v105) do                                         │

00:01:17 #3496 [Verbose] > │             let v107 : uint64 = v105.l0                                      │

00:01:17 #3497 [Verbose] > │             let struct (v108 : int32, v109 : string, v110 : (struct ((int32  │

00:01:17 #3498 [Verbose] > │ []) * int32 * int32) -> US0)) = v102.[int v107]                              │

00:01:17 #3499 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:01:17 #3500 [Verbose] > │             let v111 : (unit -> unit) = closure5()                           │

00:01:17 #3501 [Verbose] > │             v111 ()                                                          │

00:01:17 #3502 [Verbose] > │             #else                                                            │

00:01:17 #3503 [Verbose] > │             let v112 : (unit -> unit) = closure6()                           │

00:01:17 #3504 [Verbose] > │             v112 ()                                                          │

00:01:17 #3505 [Verbose] > │             #endif                                                           │

00:01:17 #3506 [Verbose] > │             let v113 : (unit -> System.Diagnostics.Stopwatch) =              │

00:01:17 #3507 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:01:17 #3508 [Verbose] > │             let v114 : System.Diagnostics.Stopwatch = v113 ()                │

00:01:17 #3509 [Verbose] > │             v114.Start ()                                                    │

00:01:17 #3510 [Verbose] > │             let v115 : int64 = v114.ElapsedMilliseconds                      │

00:01:17 #3511 [Verbose] > │             let v116 : (int32 []) = Array.zeroCreate<int32> (8000001)        │

00:01:17 #3512 [Verbose] > │             let v117 : Mut0 = {l0 = 0} : Mut0                                │

00:01:17 #3513 [Verbose] > │             while method13(v117) do                                          │

00:01:17 #3514 [Verbose] > │                 let v119 : int32 = v117.l0                                   │

00:01:17 #3515 [Verbose] > │                 v116.[int v119] <- v119                                      │

00:01:17 #3516 [Verbose] > │                 let v120 : int32 = v119 + 1                                  │

00:01:17 #3517 [Verbose] > │                 v117.l0 <- v120                                              │

00:01:17 #3518 [Verbose] > │                 ()                                                           │

00:01:17 #3519 [Verbose] > │             let v121 : (int32 -> US0) = closure7(v79, v80, v81, v110)        │

00:01:17 #3520 [Verbose] > │             let v122 : (US0 []) = v116 |> Array.Parallel.map v121            │

00:01:17 #3521 [Verbose] > │             let v123 : int32 = v122.Length                                   │

00:01:17 #3522 [Verbose] > │             let v124 : int32 = v123 - 1                                      │

00:01:17 #3523 [Verbose] > │             let v125 : US0 = v122.[int v124]                                 │

00:01:17 #3524 [Verbose] > │             let v126 : int64 = v114.ElapsedMilliseconds                      │

00:01:17 #3525 [Verbose] > │             let v127 : int64 = v126 - v115                                   │

00:01:17 #3526 [Verbose] > │             let v128 : string = $"Test case {v108 + 1}. {v109}. Time: {v127} │

00:01:17 #3527 [Verbose] > │ "                                                                            │

00:01:17 #3528 [Verbose] > │             System.Console.WriteLine v128                                    │

00:01:17 #3529 [Verbose] > │             v104.[int v107] <- struct (v125, v127)                           │

00:01:17 #3530 [Verbose] > │             let v129 : uint64 = v107 + 1UL                                   │

00:01:17 #3531 [Verbose] > │             v105.l0 <- v129                                                  │

00:01:17 #3532 [Verbose] > │             ()                                                               │

00:01:17 #3533 [Verbose] > │         let v130 : uint64 = System.Convert.ToUInt64 v104.Length              │

00:01:17 #3534 [Verbose] > │         let v131 : (US0 []) = Array.zeroCreate<US0>                          │

00:01:17 #3535 [Verbose] > │ (System.Convert.ToInt32(v130))                                               │

00:01:17 #3536 [Verbose] > │         let v132 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #3537 [Verbose] > │         while method5(v130, v132) do                                         │

00:01:17 #3538 [Verbose] > │             let v134 : uint64 = v132.l0                                      │

00:01:17 #3539 [Verbose] > │             let struct (v135 : US0, v136 : int64) = v104.[int v134]          │

00:01:17 #3540 [Verbose] > │             v131.[int v134] <- v135                                          │

00:01:17 #3541 [Verbose] > │             let v137 : uint64 = v134 + 1UL                                   │

00:01:17 #3542 [Verbose] > │             v132.l0 <- v137                                                  │

00:01:17 #3543 [Verbose] > │             ()                                                               │

00:01:17 #3544 [Verbose] > │         let v138 : uint64 = System.Convert.ToUInt64 v131.Length              │

00:01:17 #3545 [Verbose] > │         let v139 : bool = v138 <= 1UL                                        │

00:01:17 #3546 [Verbose] > │         if v139 then                                                         │

00:01:17 #3547 [Verbose] > │             ()                                                               │

00:01:17 #3548 [Verbose] > │         else                                                                 │

00:01:17 #3549 [Verbose] > │             let v140 : US0 = v131.[int 0UL]                                  │

00:01:17 #3550 [Verbose] > │             let v141 : uint64 = 0UL                                          │

00:01:17 #3551 [Verbose] > │             let v142 : bool = method14(v140, v131, v141)                     │

00:01:17 #3552 [Verbose] > │             if v142 then                                                     │

00:01:17 #3553 [Verbose] > │                 ()                                                           │

00:01:17 #3554 [Verbose] > │             else                                                             │

00:01:17 #3555 [Verbose] > │                 let v143 : string = $"Challenge error: {v131}"               │

00:01:17 #3556 [Verbose] > │                 failwith<unit> v143                                          │

00:01:17 #3557 [Verbose] > │         let v144 : string = $"%A{v82}"                                       │

00:01:17 #3558 [Verbose] > │         let v145 : (US0 []) = Array.zeroCreate<US0>                          │

00:01:17 #3559 [Verbose] > │ (System.Convert.ToInt32(v130))                                               │

00:01:17 #3560 [Verbose] > │         let v146 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #3561 [Verbose] > │         while method5(v130, v146) do                                         │

00:01:17 #3562 [Verbose] > │             let v148 : uint64 = v146.l0                                      │

00:01:17 #3563 [Verbose] > │             let struct (v149 : US0, v150 : int64) = v104.[int v148]          │

00:01:17 #3564 [Verbose] > │             v145.[int v148] <- v149                                          │

00:01:17 #3565 [Verbose] > │             let v151 : uint64 = v148 + 1UL                                   │

00:01:17 #3566 [Verbose] > │             v146.l0 <- v151                                                  │

00:01:17 #3567 [Verbose] > │             ()                                                               │

00:01:17 #3568 [Verbose] > │         let v152 : US0 = v145.[int 0UL]                                      │

00:01:17 #3569 [Verbose] > │         let v153 : string = $"%A{v152}"                                      │

00:01:17 #3570 [Verbose] > │         let v154 : (int64 []) = Array.zeroCreate<int64>                      │

00:01:17 #3571 [Verbose] > │ (System.Convert.ToInt32(v130))                                               │

00:01:17 #3572 [Verbose] > │         let v155 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #3573 [Verbose] > │         while method5(v130, v155) do                                         │

00:01:17 #3574 [Verbose] > │             let v157 : uint64 = v155.l0                                      │

00:01:17 #3575 [Verbose] > │             let struct (v158 : US0, v159 : int64) = v104.[int v157]          │

00:01:17 #3576 [Verbose] > │             v154.[int v157] <- v159                                          │

00:01:17 #3577 [Verbose] > │             let v160 : uint64 = v157 + 1UL                                   │

00:01:17 #3578 [Verbose] > │             v155.l0 <- v160                                                  │

00:01:17 #3579 [Verbose] > │             ()                                                               │

00:01:17 #3580 [Verbose] > │         v75.[int v78] <- struct (v144, v83, v153, v154)                      │

00:01:17 #3581 [Verbose] > │         let v161 : uint64 = v78 + 1UL                                        │

00:01:17 #3582 [Verbose] > │         v76.l0 <- v161                                                       │

00:01:17 #3583 [Verbose] > │         ()                                                                   │

00:01:17 #3584 [Verbose] > │     let v162 : uint64 = System.Convert.ToUInt64 v75.Length                   │

00:01:17 #3585 [Verbose] > │     let v163 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 *      │

00:01:17 #3586 [Verbose] > │ US1)> (System.Convert.ToInt32(v162))                                         │

00:01:17 #3587 [Verbose] > │     let v164 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3588 [Verbose] > │     while method5(v162, v164) do                                             │

00:01:17 #3589 [Verbose] > │         let v166 : uint64 = v164.l0                                          │

00:01:17 #3590 [Verbose] > │         let struct (v167 : string, v168 : string, v169 : string, v170 :      │

00:01:17 #3591 [Verbose] > │ (int64 [])) = v75.[int v166]                                                 │

00:01:17 #3592 [Verbose] > │         let v171 : uint64 = System.Convert.ToUInt64 v170.Length              │

00:01:17 #3593 [Verbose] > │         let v172 : UH3 = UH3_1                                               │

00:01:17 #3594 [Verbose] > │         let v173 : Mut2 = {l0 = 0UL; l1 = v172; l2 = 0L} : Mut2              │

00:01:17 #3595 [Verbose] > │         while method15(v171, v173) do                                        │

00:01:17 #3596 [Verbose] > │             let v175 : uint64 = v173.l0                                      │

00:01:17 #3597 [Verbose] > │             let struct (v176 : UH3, v177 : int64) = v173.l1, v173.l2         │

00:01:17 #3598 [Verbose] > │             let v178 : int64 = v170.[int v175]                               │

00:01:17 #3599 [Verbose] > │             let v179 : int64 = v177 + 1L                                     │

00:01:17 #3600 [Verbose] > │             let v180 : uint64 = v175 + 1UL                                   │

00:01:17 #3601 [Verbose] > │             let v181 : UH3 = UH3_0(v177, v178, v176)                         │

00:01:17 #3602 [Verbose] > │             v173.l0 <- v180                                                  │

00:01:17 #3603 [Verbose] > │             v173.l1 <- v181                                                  │

00:01:17 #3604 [Verbose] > │             v173.l2 <- v179                                                  │

00:01:17 #3605 [Verbose] > │             ()                                                               │

00:01:17 #3606 [Verbose] > │         let struct (v182 : UH3, v183 : int64) = v173.l1, v173.l2             │

00:01:17 #3607 [Verbose] > │         let v184 : UH3 = UH3_1                                               │

00:01:17 #3608 [Verbose] > │         let v185 : UH3 = method16(v182, v184)                                │

00:01:17 #3609 [Verbose] > │         let v186 : (struct (int64 * int64) []) = method17(v185)              │

00:01:17 #3610 [Verbose] > │         let v187 : int32 = v186.Length                                       │

00:01:17 #3611 [Verbose] > │         let v188 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:01:17 #3612 [Verbose] > │ (int64 * int64)> (v187)                                                      │

00:01:17 #3613 [Verbose] > │         let v189 : Mut0 = {l0 = 0} : Mut0                                    │

00:01:17 #3614 [Verbose] > │         while method20(v187, v189) do                                        │

00:01:17 #3615 [Verbose] > │             let v191 : int32 = v189.l0                                       │

00:01:17 #3616 [Verbose] > │             let struct (v192 : int64, v193 : int64) = v186.[int v191]        │

00:01:17 #3617 [Verbose] > │             let v194 : int64 = v192 + 1L                                     │

00:01:17 #3618 [Verbose] > │             v188.[int v191] <- struct (v194, v193)                           │

00:01:17 #3619 [Verbose] > │             let v195 : int32 = v191 + 1                                      │

00:01:17 #3620 [Verbose] > │             v189.l0 <- v195                                                  │

00:01:17 #3621 [Verbose] > │             ()                                                               │

00:01:17 #3622 [Verbose] > │         let v196 : (struct (int64 * int64) -> int64) = closure8()            │

00:01:17 #3623 [Verbose] > │         let v197 : (struct (int64 * int64) []) = v188 |> Array.sortBy v196   │

00:01:17 #3624 [Verbose] > │         let struct (v198 : int64, v199 : int64) = v197.[int 0]               │

00:01:17 #3625 [Verbose] > │         let v200 : string = $"%A{struct (v198, v199)}"                       │

00:01:17 #3626 [Verbose] > │         let v201 : bool = v167 = v169                                        │

00:01:17 #3627 [Verbose] > │         let v206 : US1 =                                                     │

00:01:17 #3628 [Verbose] > │             if v201 then                                                     │

00:01:17 #3629 [Verbose] > │                 let v202 : System.ConsoleColor =                             │

00:01:17 #3630 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:01:17 #3631 [Verbose] > │                 US1_1(v202)                                                  │

00:01:17 #3632 [Verbose] > │             else                                                             │

00:01:17 #3633 [Verbose] > │                 let v204 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:01:17 #3634 [Verbose] > │                 US1_1(v204)                                                  │

00:01:17 #3635 [Verbose] > │         let v207 : UH2 = UH2_1                                               │

00:01:17 #3636 [Verbose] > │         let v208 : UH2 = UH2_0(v200, v207)                                   │

00:01:17 #3637 [Verbose] > │         let v209 : UH2 = UH2_0(v169, v208)                                   │

00:01:17 #3638 [Verbose] > │         let v210 : UH2 = UH2_0(v167, v209)                                   │

00:01:17 #3639 [Verbose] > │         let v211 : UH2 = UH2_0(v168, v210)                                   │

00:01:17 #3640 [Verbose] > │         v163.[int v166] <- struct (v211, v206)                               │

00:01:17 #3641 [Verbose] > │         let v212 : uint64 = v166 + 1UL                                       │

00:01:17 #3642 [Verbose] > │         v164.l0 <- v212                                                      │

00:01:17 #3643 [Verbose] > │         ()                                                                   │

00:01:17 #3644 [Verbose] > │     let v213 : string = "Input"                                              │

00:01:17 #3645 [Verbose] > │     let v214 : string = "Expected"                                           │

00:01:17 #3646 [Verbose] > │     let v215 : string = "Result"                                             │

00:01:17 #3647 [Verbose] > │     let v216 : string = "Best"                                               │

00:01:17 #3648 [Verbose] > │     let v217 : UH2 = UH2_1                                                   │

00:01:17 #3649 [Verbose] > │     let v218 : UH2 = UH2_0(v216, v217)                                       │

00:01:17 #3650 [Verbose] > │     let v219 : UH2 = UH2_0(v215, v218)                                       │

00:01:17 #3651 [Verbose] > │     let v220 : UH2 = UH2_0(v214, v219)                                       │

00:01:17 #3652 [Verbose] > │     let v221 : UH2 = UH2_0(v213, v220)                                       │

00:01:17 #3653 [Verbose] > │     let v222 : US1 = US1_0                                                   │

00:01:17 #3654 [Verbose] > │     let v223 : string = "---"                                                │

00:01:17 #3655 [Verbose] > │     let v224 : UH2 = UH2_1                                                   │

00:01:17 #3656 [Verbose] > │     let v225 : UH2 = UH2_0(v223, v224)                                       │

00:01:17 #3657 [Verbose] > │     let v226 : UH2 = UH2_0(v223, v225)                                       │

00:01:17 #3658 [Verbose] > │     let v227 : UH2 = UH2_0(v223, v226)                                       │

00:01:17 #3659 [Verbose] > │     let v228 : UH2 = UH2_0(v223, v227)                                       │

00:01:17 #3660 [Verbose] > │     let v229 : US1 = US1_0                                                   │

00:01:17 #3661 [Verbose] > │     let v230 : UH4 = UH4_1                                                   │

00:01:17 #3662 [Verbose] > │     let v231 : UH4 = UH4_0(v228, v229, v230)                                 │

00:01:17 #3663 [Verbose] > │     let v232 : UH4 = UH4_0(v221, v222, v231)                                 │

00:01:17 #3664 [Verbose] > │     let v233 : (struct (UH2 * US1) []) = method21(v232)                      │

00:01:17 #3665 [Verbose] > │     let v234 : uint64 = System.Convert.ToUInt64 v233.Length                  │

00:01:17 #3666 [Verbose] > │     let v235 : uint64 = System.Convert.ToUInt64 v163.Length                  │

00:01:17 #3667 [Verbose] > │     let v236 : uint64 = v234 + v235                                          │

00:01:17 #3668 [Verbose] > │     let v237 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 *      │

00:01:17 #3669 [Verbose] > │ US1)> (System.Convert.ToInt32(v236))                                         │

00:01:17 #3670 [Verbose] > │     let v238 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3671 [Verbose] > │     while method5(v236, v238) do                                             │

00:01:17 #3672 [Verbose] > │         let v240 : uint64 = v238.l0                                          │

00:01:17 #3673 [Verbose] > │         let v241 : bool = v240 < v234                                        │

00:01:17 #3674 [Verbose] > │         let struct (v247 : UH2, v248 : US1) =                                │

00:01:17 #3675 [Verbose] > │             if v241 then                                                     │

00:01:17 #3676 [Verbose] > │                 let struct (v242 : UH2, v243 : US1) = v233.[int v240]        │

00:01:17 #3677 [Verbose] > │                 struct (v242, v243)                                          │

00:01:17 #3678 [Verbose] > │             else                                                             │

00:01:17 #3679 [Verbose] > │                 let v244 : uint64 = v240 - v234                              │

00:01:17 #3680 [Verbose] > │                 let struct (v245 : UH2, v246 : US1) = v163.[int v244]        │

00:01:17 #3681 [Verbose] > │                 struct (v245, v246)                                          │

00:01:17 #3682 [Verbose] > │         v237.[int v240] <- struct (v247, v248)                               │

00:01:17 #3683 [Verbose] > │         let v249 : uint64 = v240 + 1UL                                       │

00:01:17 #3684 [Verbose] > │         v238.l0 <- v249                                                      │

00:01:17 #3685 [Verbose] > │         ()                                                                   │

00:01:17 #3686 [Verbose] > │     let v250 : uint64 = System.Convert.ToUInt64 v237.Length                  │

00:01:17 #3687 [Verbose] > │     let v251 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:01:17 #3688 [Verbose] > │ (System.Convert.ToInt32(v250))                                               │

00:01:17 #3689 [Verbose] > │     let v252 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3690 [Verbose] > │     while method5(v250, v252) do                                             │

00:01:17 #3691 [Verbose] > │         let v254 : uint64 = v252.l0                                          │

00:01:17 #3692 [Verbose] > │         let struct (v255 : UH2, v256 : US1) = v237.[int v254]                │

00:01:17 #3693 [Verbose] > │         let v257 : (string []) = method24(v255)                              │

00:01:17 #3694 [Verbose] > │         v251.[int v254] <- v257                                              │

00:01:17 #3695 [Verbose] > │         let v258 : uint64 = v254 + 1UL                                       │

00:01:17 #3696 [Verbose] > │         v252.l0 <- v258                                                      │

00:01:17 #3697 [Verbose] > │         ()                                                                   │

00:01:17 #3698 [Verbose] > │     let v259 : ((string []) []) = v251 |> Array.transpose                    │

00:01:17 #3699 [Verbose] > │     let v260 : uint64 = System.Convert.ToUInt64 v259.Length                  │

00:01:17 #3700 [Verbose] > │     let v261 : (int64 []) = Array.zeroCreate<int64>                          │

00:01:17 #3701 [Verbose] > │ (System.Convert.ToInt32(v260))                                               │

00:01:17 #3702 [Verbose] > │     let v262 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3703 [Verbose] > │     while method5(v260, v262) do                                             │

00:01:17 #3704 [Verbose] > │         let v264 : uint64 = v262.l0                                          │

00:01:17 #3705 [Verbose] > │         let v265 : (string []) = v259.[int v264]                             │

00:01:17 #3706 [Verbose] > │         let v266 : uint64 = System.Convert.ToUInt64 v265.Length              │

00:01:17 #3707 [Verbose] > │         let v267 : (int64 []) = Array.zeroCreate<int64>                      │

00:01:17 #3708 [Verbose] > │ (System.Convert.ToInt32(v266))                                               │

00:01:17 #3709 [Verbose] > │         let v268 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #3710 [Verbose] > │         while method5(v266, v268) do                                         │

00:01:17 #3711 [Verbose] > │             let v270 : uint64 = v268.l0                                      │

00:01:17 #3712 [Verbose] > │             let v271 : string = v265.[int v270]                              │

00:01:17 #3713 [Verbose] > │             let v272 : int64 = System.Convert.ToInt64 v271.Length            │

00:01:17 #3714 [Verbose] > │             v267.[int v270] <- v272                                          │

00:01:17 #3715 [Verbose] > │             let v273 : uint64 = v270 + 1UL                                   │

00:01:17 #3716 [Verbose] > │             v268.l0 <- v273                                                  │

00:01:17 #3717 [Verbose] > │             ()                                                               │

00:01:17 #3718 [Verbose] > │         let v274 : (int64 []) = v267 |> Array.sortDescending                 │

00:01:17 #3719 [Verbose] > │         let v275 : int64 option = v274 |> Array.tryItem 0                    │

00:01:17 #3720 [Verbose] > │         let v276 : (int64 -> US2) = closure9()                               │

00:01:17 #3721 [Verbose] > │         let v277 : US2 = US2_0                                               │

00:01:17 #3722 [Verbose] > │         let v278 : US2 = v275 |> Option.map v276 |> Option.defaultValue v277 │

00:01:17 #3723 [Verbose] > │         let v281 : int64 =                                                   │

00:01:17 #3724 [Verbose] > │             match v278 with                                                  │

00:01:17 #3725 [Verbose] > │             | US2_0 -> (* None *)                                            │

00:01:17 #3726 [Verbose] > │                 0L                                                           │

00:01:17 #3727 [Verbose] > │             | US2_1(v279) -> (* Some *)                                      │

00:01:17 #3728 [Verbose] > │                 v279                                                         │

00:01:17 #3729 [Verbose] > │         v261.[int v264] <- v281                                              │

00:01:17 #3730 [Verbose] > │         let v282 : uint64 = v264 + 1UL                                       │

00:01:17 #3731 [Verbose] > │         v262.l0 <- v282                                                      │

00:01:17 #3732 [Verbose] > │         ()                                                                   │

00:01:17 #3733 [Verbose] > │     let v283 : uint64 = System.Convert.ToUInt64 v261.Length                  │

00:01:17 #3734 [Verbose] > │     let v284 : UH5 = UH5_1                                                   │

00:01:17 #3735 [Verbose] > │     let v285 : Mut3 = {l0 = 0UL; l1 = v284; l2 = 0} : Mut3                   │

00:01:17 #3736 [Verbose] > │     while method27(v283, v285) do                                            │

00:01:17 #3737 [Verbose] > │         let v287 : uint64 = v285.l0                                          │

00:01:17 #3738 [Verbose] > │         let struct (v288 : UH5, v289 : int32) = v285.l1, v285.l2             │

00:01:17 #3739 [Verbose] > │         let v290 : int64 = v261.[int v287]                                   │

00:01:17 #3740 [Verbose] > │         let v291 : int32 = v289 + 1                                          │

00:01:17 #3741 [Verbose] > │         let v292 : uint64 = v287 + 1UL                                       │

00:01:17 #3742 [Verbose] > │         let v293 : UH5 = UH5_0(v289, v290, v288)                             │

00:01:17 #3743 [Verbose] > │         v285.l0 <- v292                                                      │

00:01:17 #3744 [Verbose] > │         v285.l1 <- v293                                                      │

00:01:17 #3745 [Verbose] > │         v285.l2 <- v291                                                      │

00:01:17 #3746 [Verbose] > │         ()                                                                   │

00:01:17 #3747 [Verbose] > │     let struct (v294 : UH5, v295 : int32) = v285.l1, v285.l2                 │

00:01:17 #3748 [Verbose] > │     let v296 : UH5 = UH5_1                                                   │

00:01:17 #3749 [Verbose] > │     let v297 : UH5 = method28(v294, v296)                                    │

00:01:17 #3750 [Verbose] > │     let v298 : (struct (int32 * int64) []) = method29(v297)                  │

00:01:17 #3751 [Verbose] > │     let v299 : Map<int32, int64> = v298 |> Array.map (fun (struct (a, b)) -> │

00:01:17 #3752 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:01:17 #3753 [Verbose] > │     let v300 : (struct ((string []) * US1) []) = Array.zeroCreate<struct     │

00:01:17 #3754 [Verbose] > │ ((string []) * US1)> (System.Convert.ToInt32(v250))                          │

00:01:17 #3755 [Verbose] > │     let v301 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3756 [Verbose] > │     while method5(v250, v301) do                                             │

00:01:17 #3757 [Verbose] > │         let v303 : uint64 = v301.l0                                          │

00:01:17 #3758 [Verbose] > │         let struct (v304 : UH2, v305 : US1) = v237.[int v303]                │

00:01:17 #3759 [Verbose] > │         let v306 : UH6 = UH6_1                                               │

00:01:17 #3760 [Verbose] > │         let v307 : int32 = 0                                                 │

00:01:17 #3761 [Verbose] > │         let struct (v308 : UH6, v309 : int32) = method32(v304, v306, v307)   │

00:01:17 #3762 [Verbose] > │         let v310 : UH6 = UH6_1                                               │

00:01:17 #3763 [Verbose] > │         let v311 : UH6 = method33(v308, v310)                                │

00:01:17 #3764 [Verbose] > │         let v312 : UH2 = UH2_1                                               │

00:01:17 #3765 [Verbose] > │         let v313 : UH2 = method34(v299, v311, v312)                          │

00:01:17 #3766 [Verbose] > │         let v314 : (string []) = method35(v313)                              │

00:01:17 #3767 [Verbose] > │         v300.[int v303] <- struct (v314, v305)                               │

00:01:17 #3768 [Verbose] > │         let v315 : uint64 = v303 + 1UL                                       │

00:01:17 #3769 [Verbose] > │         v301.l0 <- v315                                                      │

00:01:17 #3770 [Verbose] > │         ()                                                                   │

00:01:17 #3771 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #3772 [Verbose] > │     let v316 : uint64 = System.Convert.ToUInt64 v300.Length                  │

00:01:17 #3773 [Verbose] > │     let v317 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3774 [Verbose] > │     while method5(v316, v317) do                                             │

00:01:17 #3775 [Verbose] > │         let v319 : uint64 = v317.l0                                          │

00:01:17 #3776 [Verbose] > │         let struct (v320 : (string []), v321 : US1) = v300.[int v319]        │

00:01:17 #3777 [Verbose] > │         match v321 with                                                      │

00:01:17 #3778 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:01:17 #3779 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:01:17 #3780 [Verbose] > │             let v325 : (unit -> unit) = closure10()                          │

00:01:17 #3781 [Verbose] > │             v325 ()                                                          │

00:01:17 #3782 [Verbose] > │             #else                                                            │

00:01:17 #3783 [Verbose] > │             let v326 : (unit -> unit) = closure11()                          │

00:01:17 #3784 [Verbose] > │             v326 ()                                                          │

00:01:17 #3785 [Verbose] > │             #endif                                                           │

00:01:17 #3786 [Verbose] > │             ()                                                               │

00:01:17 #3787 [Verbose] > │         | US1_1(v322) -> (* Some *)                                          │

00:01:17 #3788 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:01:17 #3789 [Verbose] > │             let v323 : (unit -> unit) = closure12()                          │

00:01:17 #3790 [Verbose] > │             v323 ()                                                          │

00:01:17 #3791 [Verbose] > │             #else                                                            │

00:01:17 #3792 [Verbose] > │             let v324 : (unit -> unit) = closure13(v322)                      │

00:01:17 #3793 [Verbose] > │             v324 ()                                                          │

00:01:17 #3794 [Verbose] > │             #endif                                                           │

00:01:17 #3795 [Verbose] > │             ()                                                               │

00:01:17 #3796 [Verbose] > │         let v327 : string = "\t| "                                           │

00:01:17 #3797 [Verbose] > │         let v328 : string = System.String.Join (v327, v320)                  │

00:01:17 #3798 [Verbose] > │         System.Console.WriteLine v328                                        │

00:01:17 #3799 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:01:17 #3800 [Verbose] > │         let v329 : (unit -> unit) = closure10()                              │

00:01:17 #3801 [Verbose] > │         v329 ()                                                              │

00:01:17 #3802 [Verbose] > │         #else                                                                │

00:01:17 #3803 [Verbose] > │         let v330 : (unit -> unit) = closure11()                              │

00:01:17 #3804 [Verbose] > │         v330 ()                                                              │

00:01:17 #3805 [Verbose] > │         #endif                                                               │

00:01:17 #3806 [Verbose] > │         let v331 : uint64 = v319 + 1UL                                       │

00:01:17 #3807 [Verbose] > │         v317.l0 <- v331                                                      │

00:01:17 #3808 [Verbose] > │         ()                                                                   │

00:01:17 #3809 [Verbose] > │     let v332 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:01:17 #3810 [Verbose] > │ (System.Convert.ToInt32(v162))                                               │

00:01:17 #3811 [Verbose] > │     let v333 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3812 [Verbose] > │     while method5(v162, v333) do                                             │

00:01:17 #3813 [Verbose] > │         let v335 : uint64 = v333.l0                                          │

00:01:17 #3814 [Verbose] > │         let struct (v336 : string, v337 : string, v338 : string, v339 :      │

00:01:17 #3815 [Verbose] > │ (int64 [])) = v75.[int v335]                                                 │

00:01:17 #3816 [Verbose] > │         let v340 : (int64 -> float) = float                                  │

00:01:17 #3817 [Verbose] > │         let v341 : uint64 = System.Convert.ToUInt64 v339.Length              │

00:01:17 #3818 [Verbose] > │         let v342 : (float []) = Array.zeroCreate<float>                      │

00:01:17 #3819 [Verbose] > │ (System.Convert.ToInt32(v341))                                               │

00:01:17 #3820 [Verbose] > │         let v343 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #3821 [Verbose] > │         while method5(v341, v343) do                                         │

00:01:17 #3822 [Verbose] > │             let v345 : uint64 = v343.l0                                      │

00:01:17 #3823 [Verbose] > │             let v346 : int64 = v339.[int v345]                               │

00:01:17 #3824 [Verbose] > │             let v347 : float = v340 v346                                     │

00:01:17 #3825 [Verbose] > │             v342.[int v345] <- v347                                          │

00:01:17 #3826 [Verbose] > │             let v348 : uint64 = v345 + 1UL                                   │

00:01:17 #3827 [Verbose] > │             v343.l0 <- v348                                                  │

00:01:17 #3828 [Verbose] > │             ()                                                               │

00:01:17 #3829 [Verbose] > │         v332.[int v335] <- v342                                              │

00:01:17 #3830 [Verbose] > │         let v349 : uint64 = v335 + 1UL                                       │

00:01:17 #3831 [Verbose] > │         v333.l0 <- v349                                                      │

00:01:17 #3832 [Verbose] > │         ()                                                                   │

00:01:17 #3833 [Verbose] > │     let v350 : ((float []) []) = v332 |> Array.transpose                     │

00:01:17 #3834 [Verbose] > │     let v351 : uint64 = System.Convert.ToUInt64 v350.Length                  │

00:01:17 #3835 [Verbose] > │     let v352 : (float []) = Array.zeroCreate<float>                          │

00:01:17 #3836 [Verbose] > │ (System.Convert.ToInt32(v351))                                               │

00:01:17 #3837 [Verbose] > │     let v353 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3838 [Verbose] > │     while method5(v351, v353) do                                             │

00:01:17 #3839 [Verbose] > │         let v355 : uint64 = v353.l0                                          │

00:01:17 #3840 [Verbose] > │         let v356 : (float []) = v350.[int v355]                              │

00:01:17 #3841 [Verbose] > │         let v357 : float = v356 |> Array.average                             │

00:01:17 #3842 [Verbose] > │         v352.[int v355] <- v357                                              │

00:01:17 #3843 [Verbose] > │         let v358 : uint64 = v355 + 1UL                                       │

00:01:17 #3844 [Verbose] > │         v353.l0 <- v358                                                      │

00:01:17 #3845 [Verbose] > │         ()                                                                   │

00:01:17 #3846 [Verbose] > │     let v359 : (float -> int64) = int64                                      │

00:01:17 #3847 [Verbose] > │     let v360 : uint64 = System.Convert.ToUInt64 v352.Length                  │

00:01:17 #3848 [Verbose] > │     let v361 : (int64 []) = Array.zeroCreate<int64>                          │

00:01:17 #3849 [Verbose] > │ (System.Convert.ToInt32(v360))                                               │

00:01:17 #3850 [Verbose] > │     let v362 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3851 [Verbose] > │     while method5(v360, v362) do                                             │

00:01:17 #3852 [Verbose] > │         let v364 : uint64 = v362.l0                                          │

00:01:17 #3853 [Verbose] > │         let v365 : float = v352.[int v364]                                   │

00:01:17 #3854 [Verbose] > │         let v366 : int64 = v359 v365                                         │

00:01:17 #3855 [Verbose] > │         v361.[int v364] <- v366                                              │

00:01:17 #3856 [Verbose] > │         let v367 : uint64 = v364 + 1UL                                       │

00:01:17 #3857 [Verbose] > │         v362.l0 <- v367                                                      │

00:01:17 #3858 [Verbose] > │         ()                                                                   │

00:01:17 #3859 [Verbose] > │     let v368 : uint64 = System.Convert.ToUInt64 v361.Length                  │

00:01:17 #3860 [Verbose] > │     let v369 : UH5 = UH5_1                                                   │

00:01:17 #3861 [Verbose] > │     let v370 : Mut3 = {l0 = 0UL; l1 = v369; l2 = 0} : Mut3                   │

00:01:17 #3862 [Verbose] > │     while method27(v368, v370) do                                            │

00:01:17 #3863 [Verbose] > │         let v372 : uint64 = v370.l0                                          │

00:01:17 #3864 [Verbose] > │         let struct (v373 : UH5, v374 : int32) = v370.l1, v370.l2             │

00:01:17 #3865 [Verbose] > │         let v375 : int64 = v361.[int v372]                                   │

00:01:17 #3866 [Verbose] > │         let v376 : int32 = v374 + 1                                          │

00:01:17 #3867 [Verbose] > │         let v377 : uint64 = v372 + 1UL                                       │

00:01:17 #3868 [Verbose] > │         let v378 : UH5 = UH5_0(v374, v375, v373)                             │

00:01:17 #3869 [Verbose] > │         v370.l0 <- v377                                                      │

00:01:17 #3870 [Verbose] > │         v370.l1 <- v378                                                      │

00:01:17 #3871 [Verbose] > │         v370.l2 <- v376                                                      │

00:01:17 #3872 [Verbose] > │         ()                                                                   │

00:01:17 #3873 [Verbose] > │     let struct (v379 : UH5, v380 : int32) = v370.l1, v370.l2                 │

00:01:17 #3874 [Verbose] > │     let v381 : UH5 = UH5_1                                                   │

00:01:17 #3875 [Verbose] > │     let v382 : UH5 = method28(v379, v381)                                    │

00:01:17 #3876 [Verbose] > │     let v383 : (struct (int32 * int64) []) = method38(v382)                  │

00:01:17 #3877 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #3878 [Verbose] > │     let v384 : string = "Average Ranking  "                                  │

00:01:17 #3879 [Verbose] > │     System.Console.WriteLine v384                                            │

00:01:17 #3880 [Verbose] > │     let v385 : (struct (int32 * int64) -> int64) = closure14()               │

00:01:17 #3881 [Verbose] > │     let v386 : (struct (int32 * int64) []) = v383 |> Array.sortBy v385       │

00:01:17 #3882 [Verbose] > │     let v387 : uint64 = System.Convert.ToUInt64 v386.Length                  │

00:01:17 #3883 [Verbose] > │     let v388 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #3884 [Verbose] > │     while method5(v387, v388) do                                             │

00:01:17 #3885 [Verbose] > │         let v390 : uint64 = v388.l0                                          │

00:01:17 #3886 [Verbose] > │         let struct (v391 : int32, v392 : int64) = v386.[int v390]            │

00:01:17 #3887 [Verbose] > │         let v393 : string = $"Test case %d{v391 + 1}. Average Time: %A{v392} │

00:01:17 #3888 [Verbose] > │ "                                                                            │

00:01:17 #3889 [Verbose] > │         System.Console.WriteLine v393                                        │

00:01:17 #3890 [Verbose] > │         let v394 : uint64 = v390 + 1UL                                       │

00:01:17 #3891 [Verbose] > │         v388.l0 <- v394                                                      │

00:01:17 #3892 [Verbose] > │         ()                                                                   │

00:01:17 #3893 [Verbose] > │     ()                                                                       │

00:01:17 #3894 [Verbose] > │ and method0 () : unit =                                                      │

00:01:17 #3895 [Verbose] > │     let v0 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3896 [Verbose] > │     let v1 : int32 = v0.Length                                               │

00:01:17 #3897 [Verbose] > │     let v2 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3898 [Verbose] > │     let v3 : int32 = v2.Length                                               │

00:01:17 #3899 [Verbose] > │     let v4 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3900 [Verbose] > │     let v5 : int32 = v4.Length                                               │

00:01:17 #3901 [Verbose] > │     let v6 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                           │

00:01:17 #3902 [Verbose] > │     let v7 : int32 = v6.Length                                               │

00:01:17 #3903 [Verbose] > │     let v8 : (int32 []) = Array.zeroCreate<int32> (100)                      │

00:01:17 #3904 [Verbose] > │     let v9 : Mut0 = {l0 = 0} : Mut0                                          │

00:01:17 #3905 [Verbose] > │     while method1(v9) do                                                     │

00:01:17 #3906 [Verbose] > │         let v11 : int32 = v9.l0                                              │

00:01:17 #3907 [Verbose] > │         let v12 : int32 = 1 + v11                                            │

00:01:17 #3908 [Verbose] > │         v8.[int v11] <- v12                                                  │

00:01:17 #3909 [Verbose] > │         let v13 : int32 = v11 + 1                                            │

00:01:17 #3910 [Verbose] > │         v9.l0 <- v13                                                         │

00:01:17 #3911 [Verbose] > │         ()                                                                   │

00:01:17 #3912 [Verbose] > │     let v14 : int32 = v8.Length                                              │

00:01:17 #3913 [Verbose] > │     let v15 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3914 [Verbose] > │     let v16 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3915 [Verbose] > │     let v17 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3916 [Verbose] > │     let v18 : (int32 []) = [|1; 3; 4; 6; 8; 9; 11|]                          │

00:01:17 #3917 [Verbose] > │     let v19 : (int32 []) = Array.zeroCreate<int32> (100)                     │

00:01:17 #3918 [Verbose] > │     let v20 : Mut0 = {l0 = 0} : Mut0                                         │

00:01:17 #3919 [Verbose] > │     while method1(v20) do                                                    │

00:01:17 #3920 [Verbose] > │         let v22 : int32 = v20.l0                                             │

00:01:17 #3921 [Verbose] > │         let v23 : int32 = 1 + v22                                            │

00:01:17 #3922 [Verbose] > │         v19.[int v22] <- v23                                                 │

00:01:17 #3923 [Verbose] > │         let v24 : int32 = v22 + 1                                            │

00:01:17 #3924 [Verbose] > │         v20.l0 <- v24                                                        │

00:01:17 #3925 [Verbose] > │         ()                                                                   │

00:01:17 #3926 [Verbose] > │     let v25 : (unit -> unit) = closure0()                                    │

00:01:17 #3927 [Verbose] > │     let v26 : string = nameof v25                                            │

00:01:17 #3928 [Verbose] > │     let v27 : string = ""                                                    │

00:01:17 #3929 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #3930 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #3931 [Verbose] > │     let v28 : string = $"Test: {v26}"                                        │

00:01:17 #3932 [Verbose] > │     System.Console.WriteLine v28                                             │

00:01:17 #3933 [Verbose] > │     let v29 : int32 = 6                                                      │

00:01:17 #3934 [Verbose] > │     let v30 : int32 = 3                                                      │

00:01:17 #3935 [Verbose] > │     let v31 : US0 = US0_1(v30)                                               │

00:01:17 #3936 [Verbose] > │     let v32 : int32 = 1                                                      │

00:01:17 #3937 [Verbose] > │     let v33 : int32 = 0                                                      │

00:01:17 #3938 [Verbose] > │     let v34 : US0 = US0_1(v33)                                               │

00:01:17 #3939 [Verbose] > │     let v35 : int32 = 11                                                     │

00:01:17 #3940 [Verbose] > │     let v36 : int32 = 6                                                      │

00:01:17 #3941 [Verbose] > │     let v37 : US0 = US0_1(v36)                                               │

00:01:17 #3942 [Verbose] > │     let v38 : int32 = 12                                                     │

00:01:17 #3943 [Verbose] > │     let v39 : US0 = US0_0                                                    │

00:01:17 #3944 [Verbose] > │     let v40 : int32 = 60                                                     │

00:01:17 #3945 [Verbose] > │     let v41 : int32 = 59                                                     │

00:01:17 #3946 [Verbose] > │     let v42 : US0 = US0_1(v41)                                               │

00:01:17 #3947 [Verbose] > │     let v43 : int32 = 6                                                      │

00:01:17 #3948 [Verbose] > │     let v44 : int32 = 7                                                      │

00:01:17 #3949 [Verbose] > │     let v45 : int32 = 3                                                      │

00:01:17 #3950 [Verbose] > │     let v46 : US0 = US0_1(v45)                                               │

00:01:17 #3951 [Verbose] > │     let v47 : int32 = 1                                                      │

00:01:17 #3952 [Verbose] > │     let v48 : int32 = 7                                                      │

00:01:17 #3953 [Verbose] > │     let v49 : int32 = 0                                                      │

00:01:17 #3954 [Verbose] > │     let v50 : US0 = US0_1(v49)                                               │

00:01:17 #3955 [Verbose] > │     let v51 : int32 = 11                                                     │

00:01:17 #3956 [Verbose] > │     let v52 : int32 = 7                                                      │

00:01:17 #3957 [Verbose] > │     let v53 : int32 = 6                                                      │

00:01:17 #3958 [Verbose] > │     let v54 : US0 = US0_1(v53)                                               │

00:01:17 #3959 [Verbose] > │     let v55 : int32 = 12                                                     │

00:01:17 #3960 [Verbose] > │     let v56 : int32 = 7                                                      │

00:01:17 #3961 [Verbose] > │     let v57 : US0 = US0_0                                                    │

00:01:17 #3962 [Verbose] > │     let v58 : int32 = 60                                                     │

00:01:17 #3963 [Verbose] > │     let v59 : int32 = 100                                                    │

00:01:17 #3964 [Verbose] > │     let v60 : int32 = 59                                                     │

00:01:17 #3965 [Verbose] > │     let v61 : US0 = US0_1(v60)                                               │

00:01:17 #3966 [Verbose] > │     let v62 : UH0 = UH0_1                                                    │

00:01:17 #3967 [Verbose] > │     let v63 : UH0 = UH0_0(v19, v58, v59, v61, v62)                           │

00:01:17 #3968 [Verbose] > │     let v64 : UH0 = UH0_0(v18, v55, v56, v57, v63)                           │

00:01:17 #3969 [Verbose] > │     let v65 : UH0 = UH0_0(v17, v51, v52, v54, v64)                           │

00:01:17 #3970 [Verbose] > │     let v66 : UH0 = UH0_0(v16, v47, v48, v50, v65)                           │

00:01:17 #3971 [Verbose] > │     let v67 : UH0 = UH0_0(v15, v43, v44, v46, v66)                           │

00:01:17 #3972 [Verbose] > │     let v68 : UH0 = UH0_0(v8, v40, v14, v42, v67)                            │

00:01:17 #3973 [Verbose] > │     let v69 : UH0 = UH0_0(v6, v38, v7, v39, v68)                             │

00:01:17 #3974 [Verbose] > │     let v70 : UH0 = UH0_0(v4, v35, v5, v37, v69)                             │

00:01:17 #3975 [Verbose] > │     let v71 : UH0 = UH0_0(v2, v32, v3, v34, v70)                             │

00:01:17 #3976 [Verbose] > │     let v72 : UH0 = UH0_0(v0, v29, v1, v31, v71)                             │

00:01:17 #3977 [Verbose] > │     let v73 : (struct ((int32 []) * int32 * int32 * US0) []) = method2(v72)  │

00:01:17 #3978 [Verbose] > │     let v74 : uint64 = System.Convert.ToUInt64 v73.Length                    │

00:01:17 #3979 [Verbose] > │     let v75 : (struct (string * string * string * (int64 [])) []) =          │

00:01:17 #3980 [Verbose] > │ Array.zeroCreate<struct (string * string * string * (int64 []))>             │

00:01:17 #3981 [Verbose] > │ (System.Convert.ToInt32(v74))                                                │

00:01:17 #3982 [Verbose] > │     let v76 : Mut1 = {l0 = 0UL} : Mut1                                       │

00:01:17 #3983 [Verbose] > │     while method5(v74, v76) do                                               │

00:01:17 #3984 [Verbose] > │         let v78 : uint64 = v76.l0                                            │

00:01:17 #3985 [Verbose] > │         let struct (v79 : (int32 []), v80 : int32, v81 : int32, v82 : US0) = │

00:01:17 #3986 [Verbose] > │ v73.[int v78]                                                                │

00:01:17 #3987 [Verbose] > │         let v83 : string = $"%A{struct (v79, v80, v81)}"                     │

00:01:17 #3988 [Verbose] > │         System.Console.WriteLine v27                                         │

00:01:17 #3989 [Verbose] > │         let v84 : string = $"Solution: {v83}  "                              │

00:01:17 #3990 [Verbose] > │         System.Console.WriteLine v84                                         │

00:01:17 #3991 [Verbose] > │         let v85 : int32 = 0                                                  │

00:01:17 #3992 [Verbose] > │         let v86 : string = "semi_open_1"                                     │

00:01:17 #3993 [Verbose] > │         let v87 : (struct ((int32 []) * int32 * int32) -> US0) = closure1()  │

00:01:17 #3994 [Verbose] > │         let v88 : int32 = 1                                                  │

00:01:17 #3995 [Verbose] > │         let v89 : string = "closed_1"                                        │

00:01:17 #3996 [Verbose] > │         let v90 : (struct ((int32 []) * int32 * int32) -> US0) = closure2()  │

00:01:17 #3997 [Verbose] > │         let v91 : int32 = 2                                                  │

00:01:17 #3998 [Verbose] > │         let v92 : string = "semi_open_2"                                     │

00:01:17 #3999 [Verbose] > │         let v93 : (struct ((int32 []) * int32 * int32) -> US0) = closure3()  │

00:01:17 #4000 [Verbose] > │         let v94 : int32 = 3                                                  │

00:01:17 #4001 [Verbose] > │         let v95 : string = "closed_2"                                        │

00:01:17 #4002 [Verbose] > │         let v96 : (struct ((int32 []) * int32 * int32) -> US0) = closure4()  │

00:01:17 #4003 [Verbose] > │         let v97 : UH1 = UH1_1                                                │

00:01:17 #4004 [Verbose] > │         let v98 : UH1 = UH1_0(v94, v95, v96, v97)                            │

00:01:17 #4005 [Verbose] > │         let v99 : UH1 = UH1_0(v91, v92, v93, v98)                            │

00:01:17 #4006 [Verbose] > │         let v100 : UH1 = UH1_0(v88, v89, v90, v99)                           │

00:01:17 #4007 [Verbose] > │         let v101 : UH1 = UH1_0(v85, v86, v87, v100)                          │

00:01:17 #4008 [Verbose] > │         let v102 : (struct (int32 * string * (struct ((int32 []) * int32 *   │

00:01:17 #4009 [Verbose] > │ int32) -> US0)) []) = method10(v101)                                         │

00:01:17 #4010 [Verbose] > │         let v103 : uint64 = System.Convert.ToUInt64 v102.Length              │

00:01:17 #4011 [Verbose] > │         let v104 : (struct (US0 * int64) []) = Array.zeroCreate<struct (US0  │

00:01:17 #4012 [Verbose] > │ * int64)> (System.Convert.ToInt32(v103))                                     │

00:01:17 #4013 [Verbose] > │         let v105 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #4014 [Verbose] > │         while method5(v103, v105) do                                         │

00:01:17 #4015 [Verbose] > │             let v107 : uint64 = v105.l0                                      │

00:01:17 #4016 [Verbose] > │             let struct (v108 : int32, v109 : string, v110 : (struct ((int32  │

00:01:17 #4017 [Verbose] > │ []) * int32 * int32) -> US0)) = v102.[int v107]                              │

00:01:17 #4018 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:01:17 #4019 [Verbose] > │             let v111 : (unit -> unit) = closure5()                           │

00:01:17 #4020 [Verbose] > │             v111 ()                                                          │

00:01:17 #4021 [Verbose] > │             #else                                                            │

00:01:17 #4022 [Verbose] > │             let v112 : (unit -> unit) = closure6()                           │

00:01:17 #4023 [Verbose] > │             v112 ()                                                          │

00:01:17 #4024 [Verbose] > │             #endif                                                           │

00:01:17 #4025 [Verbose] > │             let v113 : (unit -> System.Diagnostics.Stopwatch) =              │

00:01:17 #4026 [Verbose] > │ System.Diagnostics.Stopwatch                                                 │

00:01:17 #4027 [Verbose] > │             let v114 : System.Diagnostics.Stopwatch = v113 ()                │

00:01:17 #4028 [Verbose] > │             v114.Start ()                                                    │

00:01:17 #4029 [Verbose] > │             let v115 : int64 = v114.ElapsedMilliseconds                      │

00:01:17 #4030 [Verbose] > │             let v116 : (int32 []) = Array.zeroCreate<int32> (8000001)        │

00:01:17 #4031 [Verbose] > │             let v117 : Mut0 = {l0 = 0} : Mut0                                │

00:01:17 #4032 [Verbose] > │             while method13(v117) do                                          │

00:01:17 #4033 [Verbose] > │                 let v119 : int32 = v117.l0                                   │

00:01:17 #4034 [Verbose] > │                 v116.[int v119] <- v119                                      │

00:01:17 #4035 [Verbose] > │                 let v120 : int32 = v119 + 1                                  │

00:01:17 #4036 [Verbose] > │                 v117.l0 <- v120                                              │

00:01:17 #4037 [Verbose] > │                 ()                                                           │

00:01:17 #4038 [Verbose] > │             let v121 : (int32 -> US0) = closure7(v79, v80, v81, v110)        │

00:01:17 #4039 [Verbose] > │             let v122 : (US0 []) = v116 |> Array.Parallel.map v121            │

00:01:17 #4040 [Verbose] > │             let v123 : int32 = v122.Length                                   │

00:01:17 #4041 [Verbose] > │             let v124 : int32 = v123 - 1                                      │

00:01:17 #4042 [Verbose] > │             let v125 : US0 = v122.[int v124]                                 │

00:01:17 #4043 [Verbose] > │             let v126 : int64 = v114.ElapsedMilliseconds                      │

00:01:17 #4044 [Verbose] > │             let v127 : int64 = v126 - v115                                   │

00:01:17 #4045 [Verbose] > │             let v128 : string = $"Test case {v108 + 1}. {v109}. Time: {v127} │

00:01:17 #4046 [Verbose] > │ "                                                                            │

00:01:17 #4047 [Verbose] > │             System.Console.WriteLine v128                                    │

00:01:17 #4048 [Verbose] > │             v104.[int v107] <- struct (v125, v127)                           │

00:01:17 #4049 [Verbose] > │             let v129 : uint64 = v107 + 1UL                                   │

00:01:17 #4050 [Verbose] > │             v105.l0 <- v129                                                  │

00:01:17 #4051 [Verbose] > │             ()                                                               │

00:01:17 #4052 [Verbose] > │         let v130 : uint64 = System.Convert.ToUInt64 v104.Length              │

00:01:17 #4053 [Verbose] > │         let v131 : (US0 []) = Array.zeroCreate<US0>                          │

00:01:17 #4054 [Verbose] > │ (System.Convert.ToInt32(v130))                                               │

00:01:17 #4055 [Verbose] > │         let v132 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #4056 [Verbose] > │         while method5(v130, v132) do                                         │

00:01:17 #4057 [Verbose] > │             let v134 : uint64 = v132.l0                                      │

00:01:17 #4058 [Verbose] > │             let struct (v135 : US0, v136 : int64) = v104.[int v134]          │

00:01:17 #4059 [Verbose] > │             v131.[int v134] <- v135                                          │

00:01:17 #4060 [Verbose] > │             let v137 : uint64 = v134 + 1UL                                   │

00:01:17 #4061 [Verbose] > │             v132.l0 <- v137                                                  │

00:01:17 #4062 [Verbose] > │             ()                                                               │

00:01:17 #4063 [Verbose] > │         let v138 : uint64 = System.Convert.ToUInt64 v131.Length              │

00:01:17 #4064 [Verbose] > │         let v139 : bool = v138 <= 1UL                                        │

00:01:17 #4065 [Verbose] > │         if v139 then                                                         │

00:01:17 #4066 [Verbose] > │             ()                                                               │

00:01:17 #4067 [Verbose] > │         else                                                                 │

00:01:17 #4068 [Verbose] > │             let v140 : US0 = v131.[int 0UL]                                  │

00:01:17 #4069 [Verbose] > │             let v141 : uint64 = 0UL                                          │

00:01:17 #4070 [Verbose] > │             let v142 : bool = method14(v140, v131, v141)                     │

00:01:17 #4071 [Verbose] > │             if v142 then                                                     │

00:01:17 #4072 [Verbose] > │                 ()                                                           │

00:01:17 #4073 [Verbose] > │             else                                                             │

00:01:17 #4074 [Verbose] > │                 let v143 : string = $"Challenge error: {v131}"               │

00:01:17 #4075 [Verbose] > │                 failwith<unit> v143                                          │

00:01:17 #4076 [Verbose] > │         let v144 : string = $"%A{v82}"                                       │

00:01:17 #4077 [Verbose] > │         let v145 : (US0 []) = Array.zeroCreate<US0>                          │

00:01:17 #4078 [Verbose] > │ (System.Convert.ToInt32(v130))                                               │

00:01:17 #4079 [Verbose] > │         let v146 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #4080 [Verbose] > │         while method5(v130, v146) do                                         │

00:01:17 #4081 [Verbose] > │             let v148 : uint64 = v146.l0                                      │

00:01:17 #4082 [Verbose] > │             let struct (v149 : US0, v150 : int64) = v104.[int v148]          │

00:01:17 #4083 [Verbose] > │             v145.[int v148] <- v149                                          │

00:01:17 #4084 [Verbose] > │             let v151 : uint64 = v148 + 1UL                                   │

00:01:17 #4085 [Verbose] > │             v146.l0 <- v151                                                  │

00:01:17 #4086 [Verbose] > │             ()                                                               │

00:01:17 #4087 [Verbose] > │         let v152 : US0 = v145.[int 0UL]                                      │

00:01:17 #4088 [Verbose] > │         let v153 : string = $"%A{v152}"                                      │

00:01:17 #4089 [Verbose] > │         let v154 : (int64 []) = Array.zeroCreate<int64>                      │

00:01:17 #4090 [Verbose] > │ (System.Convert.ToInt32(v130))                                               │

00:01:17 #4091 [Verbose] > │         let v155 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #4092 [Verbose] > │         while method5(v130, v155) do                                         │

00:01:17 #4093 [Verbose] > │             let v157 : uint64 = v155.l0                                      │

00:01:17 #4094 [Verbose] > │             let struct (v158 : US0, v159 : int64) = v104.[int v157]          │

00:01:17 #4095 [Verbose] > │             v154.[int v157] <- v159                                          │

00:01:17 #4096 [Verbose] > │             let v160 : uint64 = v157 + 1UL                                   │

00:01:17 #4097 [Verbose] > │             v155.l0 <- v160                                                  │

00:01:17 #4098 [Verbose] > │             ()                                                               │

00:01:17 #4099 [Verbose] > │         v75.[int v78] <- struct (v144, v83, v153, v154)                      │

00:01:17 #4100 [Verbose] > │         let v161 : uint64 = v78 + 1UL                                        │

00:01:17 #4101 [Verbose] > │         v76.l0 <- v161                                                       │

00:01:17 #4102 [Verbose] > │         ()                                                                   │

00:01:17 #4103 [Verbose] > │     let v162 : uint64 = System.Convert.ToUInt64 v75.Length                   │

00:01:17 #4104 [Verbose] > │     let v163 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 *      │

00:01:17 #4105 [Verbose] > │ US1)> (System.Convert.ToInt32(v162))                                         │

00:01:17 #4106 [Verbose] > │     let v164 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4107 [Verbose] > │     while method5(v162, v164) do                                             │

00:01:17 #4108 [Verbose] > │         let v166 : uint64 = v164.l0                                          │

00:01:17 #4109 [Verbose] > │         let struct (v167 : string, v168 : string, v169 : string, v170 :      │

00:01:17 #4110 [Verbose] > │ (int64 [])) = v75.[int v166]                                                 │

00:01:17 #4111 [Verbose] > │         let v171 : uint64 = System.Convert.ToUInt64 v170.Length              │

00:01:17 #4112 [Verbose] > │         let v172 : UH3 = UH3_1                                               │

00:01:17 #4113 [Verbose] > │         let v173 : Mut2 = {l0 = 0UL; l1 = v172; l2 = 0L} : Mut2              │

00:01:17 #4114 [Verbose] > │         while method15(v171, v173) do                                        │

00:01:17 #4115 [Verbose] > │             let v175 : uint64 = v173.l0                                      │

00:01:17 #4116 [Verbose] > │             let struct (v176 : UH3, v177 : int64) = v173.l1, v173.l2         │

00:01:17 #4117 [Verbose] > │             let v178 : int64 = v170.[int v175]                               │

00:01:17 #4118 [Verbose] > │             let v179 : int64 = v177 + 1L                                     │

00:01:17 #4119 [Verbose] > │             let v180 : uint64 = v175 + 1UL                                   │

00:01:17 #4120 [Verbose] > │             let v181 : UH3 = UH3_0(v177, v178, v176)                         │

00:01:17 #4121 [Verbose] > │             v173.l0 <- v180                                                  │

00:01:17 #4122 [Verbose] > │             v173.l1 <- v181                                                  │

00:01:17 #4123 [Verbose] > │             v173.l2 <- v179                                                  │

00:01:17 #4124 [Verbose] > │             ()                                                               │

00:01:17 #4125 [Verbose] > │         let struct (v182 : UH3, v183 : int64) = v173.l1, v173.l2             │

00:01:17 #4126 [Verbose] > │         let v184 : UH3 = UH3_1                                               │

00:01:17 #4127 [Verbose] > │         let v185 : UH3 = method16(v182, v184)                                │

00:01:17 #4128 [Verbose] > │         let v186 : (struct (int64 * int64) []) = method17(v185)              │

00:01:17 #4129 [Verbose] > │         let v187 : int32 = v186.Length                                       │

00:01:17 #4130 [Verbose] > │         let v188 : (struct (int64 * int64) []) = Array.zeroCreate<struct     │

00:01:17 #4131 [Verbose] > │ (int64 * int64)> (v187)                                                      │

00:01:17 #4132 [Verbose] > │         let v189 : Mut0 = {l0 = 0} : Mut0                                    │

00:01:17 #4133 [Verbose] > │         while method20(v187, v189) do                                        │

00:01:17 #4134 [Verbose] > │             let v191 : int32 = v189.l0                                       │

00:01:17 #4135 [Verbose] > │             let struct (v192 : int64, v193 : int64) = v186.[int v191]        │

00:01:17 #4136 [Verbose] > │             let v194 : int64 = v192 + 1L                                     │

00:01:17 #4137 [Verbose] > │             v188.[int v191] <- struct (v194, v193)                           │

00:01:17 #4138 [Verbose] > │             let v195 : int32 = v191 + 1                                      │

00:01:17 #4139 [Verbose] > │             v189.l0 <- v195                                                  │

00:01:17 #4140 [Verbose] > │             ()                                                               │

00:01:17 #4141 [Verbose] > │         let v196 : (struct (int64 * int64) -> int64) = closure8()            │

00:01:17 #4142 [Verbose] > │         let v197 : (struct (int64 * int64) []) = v188 |> Array.sortBy v196   │

00:01:17 #4143 [Verbose] > │         let struct (v198 : int64, v199 : int64) = v197.[int 0]               │

00:01:17 #4144 [Verbose] > │         let v200 : string = $"%A{struct (v198, v199)}"                       │

00:01:17 #4145 [Verbose] > │         let v201 : bool = v167 = v169                                        │

00:01:17 #4146 [Verbose] > │         let v206 : US1 =                                                     │

00:01:17 #4147 [Verbose] > │             if v201 then                                                     │

00:01:17 #4148 [Verbose] > │                 let v202 : System.ConsoleColor =                             │

00:01:17 #4149 [Verbose] > │ System.ConsoleColor.DarkGreen                                                │

00:01:17 #4150 [Verbose] > │                 US1_1(v202)                                                  │

00:01:17 #4151 [Verbose] > │             else                                                             │

00:01:17 #4152 [Verbose] > │                 let v204 : System.ConsoleColor = System.ConsoleColor.DarkRed │

00:01:17 #4153 [Verbose] > │                 US1_1(v204)                                                  │

00:01:17 #4154 [Verbose] > │         let v207 : UH2 = UH2_1                                               │

00:01:17 #4155 [Verbose] > │         let v208 : UH2 = UH2_0(v200, v207)                                   │

00:01:17 #4156 [Verbose] > │         let v209 : UH2 = UH2_0(v169, v208)                                   │

00:01:17 #4157 [Verbose] > │         let v210 : UH2 = UH2_0(v167, v209)                                   │

00:01:17 #4158 [Verbose] > │         let v211 : UH2 = UH2_0(v168, v210)                                   │

00:01:17 #4159 [Verbose] > │         v163.[int v166] <- struct (v211, v206)                               │

00:01:17 #4160 [Verbose] > │         let v212 : uint64 = v166 + 1UL                                       │

00:01:17 #4161 [Verbose] > │         v164.l0 <- v212                                                      │

00:01:17 #4162 [Verbose] > │         ()                                                                   │

00:01:17 #4163 [Verbose] > │     let v213 : string = "Input"                                              │

00:01:17 #4164 [Verbose] > │     let v214 : string = "Expected"                                           │

00:01:17 #4165 [Verbose] > │     let v215 : string = "Result"                                             │

00:01:17 #4166 [Verbose] > │     let v216 : string = "Best"                                               │

00:01:17 #4167 [Verbose] > │     let v217 : UH2 = UH2_1                                                   │

00:01:17 #4168 [Verbose] > │     let v218 : UH2 = UH2_0(v216, v217)                                       │

00:01:17 #4169 [Verbose] > │     let v219 : UH2 = UH2_0(v215, v218)                                       │

00:01:17 #4170 [Verbose] > │     let v220 : UH2 = UH2_0(v214, v219)                                       │

00:01:17 #4171 [Verbose] > │     let v221 : UH2 = UH2_0(v213, v220)                                       │

00:01:17 #4172 [Verbose] > │     let v222 : US1 = US1_0                                                   │

00:01:17 #4173 [Verbose] > │     let v223 : string = "---"                                                │

00:01:17 #4174 [Verbose] > │     let v224 : UH2 = UH2_1                                                   │

00:01:17 #4175 [Verbose] > │     let v225 : UH2 = UH2_0(v223, v224)                                       │

00:01:17 #4176 [Verbose] > │     let v226 : UH2 = UH2_0(v223, v225)                                       │

00:01:17 #4177 [Verbose] > │     let v227 : UH2 = UH2_0(v223, v226)                                       │

00:01:17 #4178 [Verbose] > │     let v228 : UH2 = UH2_0(v223, v227)                                       │

00:01:17 #4179 [Verbose] > │     let v229 : US1 = US1_0                                                   │

00:01:17 #4180 [Verbose] > │     let v230 : UH4 = UH4_1                                                   │

00:01:17 #4181 [Verbose] > │     let v231 : UH4 = UH4_0(v228, v229, v230)                                 │

00:01:17 #4182 [Verbose] > │     let v232 : UH4 = UH4_0(v221, v222, v231)                                 │

00:01:17 #4183 [Verbose] > │     let v233 : (struct (UH2 * US1) []) = method21(v232)                      │

00:01:17 #4184 [Verbose] > │     let v234 : uint64 = System.Convert.ToUInt64 v233.Length                  │

00:01:17 #4185 [Verbose] > │     let v235 : uint64 = System.Convert.ToUInt64 v163.Length                  │

00:01:17 #4186 [Verbose] > │     let v236 : uint64 = v234 + v235                                          │

00:01:17 #4187 [Verbose] > │     let v237 : (struct (UH2 * US1) []) = Array.zeroCreate<struct (UH2 *      │

00:01:17 #4188 [Verbose] > │ US1)> (System.Convert.ToInt32(v236))                                         │

00:01:17 #4189 [Verbose] > │     let v238 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4190 [Verbose] > │     while method5(v236, v238) do                                             │

00:01:17 #4191 [Verbose] > │         let v240 : uint64 = v238.l0                                          │

00:01:17 #4192 [Verbose] > │         let v241 : bool = v240 < v234                                        │

00:01:17 #4193 [Verbose] > │         let struct (v247 : UH2, v248 : US1) =                                │

00:01:17 #4194 [Verbose] > │             if v241 then                                                     │

00:01:17 #4195 [Verbose] > │                 let struct (v242 : UH2, v243 : US1) = v233.[int v240]        │

00:01:17 #4196 [Verbose] > │                 struct (v242, v243)                                          │

00:01:17 #4197 [Verbose] > │             else                                                             │

00:01:17 #4198 [Verbose] > │                 let v244 : uint64 = v240 - v234                              │

00:01:17 #4199 [Verbose] > │                 let struct (v245 : UH2, v246 : US1) = v163.[int v244]        │

00:01:17 #4200 [Verbose] > │                 struct (v245, v246)                                          │

00:01:17 #4201 [Verbose] > │         v237.[int v240] <- struct (v247, v248)                               │

00:01:17 #4202 [Verbose] > │         let v249 : uint64 = v240 + 1UL                                       │

00:01:17 #4203 [Verbose] > │         v238.l0 <- v249                                                      │

00:01:17 #4204 [Verbose] > │         ()                                                                   │

00:01:17 #4205 [Verbose] > │     let v250 : uint64 = System.Convert.ToUInt64 v237.Length                  │

00:01:17 #4206 [Verbose] > │     let v251 : ((string []) []) = Array.zeroCreate<(string [])>              │

00:01:17 #4207 [Verbose] > │ (System.Convert.ToInt32(v250))                                               │

00:01:17 #4208 [Verbose] > │     let v252 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4209 [Verbose] > │     while method5(v250, v252) do                                             │

00:01:17 #4210 [Verbose] > │         let v254 : uint64 = v252.l0                                          │

00:01:17 #4211 [Verbose] > │         let struct (v255 : UH2, v256 : US1) = v237.[int v254]                │

00:01:17 #4212 [Verbose] > │         let v257 : (string []) = method24(v255)                              │

00:01:17 #4213 [Verbose] > │         v251.[int v254] <- v257                                              │

00:01:17 #4214 [Verbose] > │         let v258 : uint64 = v254 + 1UL                                       │

00:01:17 #4215 [Verbose] > │         v252.l0 <- v258                                                      │

00:01:17 #4216 [Verbose] > │         ()                                                                   │

00:01:17 #4217 [Verbose] > │     let v259 : ((string []) []) = v251 |> Array.transpose                    │

00:01:17 #4218 [Verbose] > │     let v260 : uint64 = System.Convert.ToUInt64 v259.Length                  │

00:01:17 #4219 [Verbose] > │     let v261 : (int64 []) = Array.zeroCreate<int64>                          │

00:01:17 #4220 [Verbose] > │ (System.Convert.ToInt32(v260))                                               │

00:01:17 #4221 [Verbose] > │     let v262 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4222 [Verbose] > │     while method5(v260, v262) do                                             │

00:01:17 #4223 [Verbose] > │         let v264 : uint64 = v262.l0                                          │

00:01:17 #4224 [Verbose] > │         let v265 : (string []) = v259.[int v264]                             │

00:01:17 #4225 [Verbose] > │         let v266 : uint64 = System.Convert.ToUInt64 v265.Length              │

00:01:17 #4226 [Verbose] > │         let v267 : (int64 []) = Array.zeroCreate<int64>                      │

00:01:17 #4227 [Verbose] > │ (System.Convert.ToInt32(v266))                                               │

00:01:17 #4228 [Verbose] > │         let v268 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #4229 [Verbose] > │         while method5(v266, v268) do                                         │

00:01:17 #4230 [Verbose] > │             let v270 : uint64 = v268.l0                                      │

00:01:17 #4231 [Verbose] > │             let v271 : string = v265.[int v270]                              │

00:01:17 #4232 [Verbose] > │             let v272 : int64 = System.Convert.ToInt64 v271.Length            │

00:01:17 #4233 [Verbose] > │             v267.[int v270] <- v272                                          │

00:01:17 #4234 [Verbose] > │             let v273 : uint64 = v270 + 1UL                                   │

00:01:17 #4235 [Verbose] > │             v268.l0 <- v273                                                  │

00:01:17 #4236 [Verbose] > │             ()                                                               │

00:01:17 #4237 [Verbose] > │         let v274 : (int64 []) = v267 |> Array.sortDescending                 │

00:01:17 #4238 [Verbose] > │         let v275 : int64 option = v274 |> Array.tryItem 0                    │

00:01:17 #4239 [Verbose] > │         let v276 : (int64 -> US2) = closure9()                               │

00:01:17 #4240 [Verbose] > │         let v277 : US2 = US2_0                                               │

00:01:17 #4241 [Verbose] > │         let v278 : US2 = v275 |> Option.map v276 |> Option.defaultValue v277 │

00:01:17 #4242 [Verbose] > │         let v281 : int64 =                                                   │

00:01:17 #4243 [Verbose] > │             match v278 with                                                  │

00:01:17 #4244 [Verbose] > │             | US2_0 -> (* None *)                                            │

00:01:17 #4245 [Verbose] > │                 0L                                                           │

00:01:17 #4246 [Verbose] > │             | US2_1(v279) -> (* Some *)                                      │

00:01:17 #4247 [Verbose] > │                 v279                                                         │

00:01:17 #4248 [Verbose] > │         v261.[int v264] <- v281                                              │

00:01:17 #4249 [Verbose] > │         let v282 : uint64 = v264 + 1UL                                       │

00:01:17 #4250 [Verbose] > │         v262.l0 <- v282                                                      │

00:01:17 #4251 [Verbose] > │         ()                                                                   │

00:01:17 #4252 [Verbose] > │     let v283 : uint64 = System.Convert.ToUInt64 v261.Length                  │

00:01:17 #4253 [Verbose] > │     let v284 : UH5 = UH5_1                                                   │

00:01:17 #4254 [Verbose] > │     let v285 : Mut3 = {l0 = 0UL; l1 = v284; l2 = 0} : Mut3                   │

00:01:17 #4255 [Verbose] > │     while method27(v283, v285) do                                            │

00:01:17 #4256 [Verbose] > │         let v287 : uint64 = v285.l0                                          │

00:01:17 #4257 [Verbose] > │         let struct (v288 : UH5, v289 : int32) = v285.l1, v285.l2             │

00:01:17 #4258 [Verbose] > │         let v290 : int64 = v261.[int v287]                                   │

00:01:17 #4259 [Verbose] > │         let v291 : int32 = v289 + 1                                          │

00:01:17 #4260 [Verbose] > │         let v292 : uint64 = v287 + 1UL                                       │

00:01:17 #4261 [Verbose] > │         let v293 : UH5 = UH5_0(v289, v290, v288)                             │

00:01:17 #4262 [Verbose] > │         v285.l0 <- v292                                                      │

00:01:17 #4263 [Verbose] > │         v285.l1 <- v293                                                      │

00:01:17 #4264 [Verbose] > │         v285.l2 <- v291                                                      │

00:01:17 #4265 [Verbose] > │         ()                                                                   │

00:01:17 #4266 [Verbose] > │     let struct (v294 : UH5, v295 : int32) = v285.l1, v285.l2                 │

00:01:17 #4267 [Verbose] > │     let v296 : UH5 = UH5_1                                                   │

00:01:17 #4268 [Verbose] > │     let v297 : UH5 = method28(v294, v296)                                    │

00:01:17 #4269 [Verbose] > │     let v298 : (struct (int32 * int64) []) = method29(v297)                  │

00:01:17 #4270 [Verbose] > │     let v299 : Map<int32, int64> = v298 |> Array.map (fun (struct (a, b)) -> │

00:01:17 #4271 [Verbose] > │ a, b) |> Map.ofArray                                                         │

00:01:17 #4272 [Verbose] > │     let v300 : (struct ((string []) * US1) []) = Array.zeroCreate<struct     │

00:01:17 #4273 [Verbose] > │ ((string []) * US1)> (System.Convert.ToInt32(v250))                          │

00:01:17 #4274 [Verbose] > │     let v301 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4275 [Verbose] > │     while method5(v250, v301) do                                             │

00:01:17 #4276 [Verbose] > │         let v303 : uint64 = v301.l0                                          │

00:01:17 #4277 [Verbose] > │         let struct (v304 : UH2, v305 : US1) = v237.[int v303]                │

00:01:17 #4278 [Verbose] > │         let v306 : UH6 = UH6_1                                               │

00:01:17 #4279 [Verbose] > │         let v307 : int32 = 0                                                 │

00:01:17 #4280 [Verbose] > │         let struct (v308 : UH6, v309 : int32) = method32(v304, v306, v307)   │

00:01:17 #4281 [Verbose] > │         let v310 : UH6 = UH6_1                                               │

00:01:17 #4282 [Verbose] > │         let v311 : UH6 = method33(v308, v310)                                │

00:01:17 #4283 [Verbose] > │         let v312 : UH2 = UH2_1                                               │

00:01:17 #4284 [Verbose] > │         let v313 : UH2 = method34(v299, v311, v312)                          │

00:01:17 #4285 [Verbose] > │         let v314 : (string []) = method35(v313)                              │

00:01:17 #4286 [Verbose] > │         v300.[int v303] <- struct (v314, v305)                               │

00:01:17 #4287 [Verbose] > │         let v315 : uint64 = v303 + 1UL                                       │

00:01:17 #4288 [Verbose] > │         v301.l0 <- v315                                                      │

00:01:17 #4289 [Verbose] > │         ()                                                                   │

00:01:17 #4290 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #4291 [Verbose] > │     let v316 : uint64 = System.Convert.ToUInt64 v300.Length                  │

00:01:17 #4292 [Verbose] > │     let v317 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4293 [Verbose] > │     while method5(v316, v317) do                                             │

00:01:17 #4294 [Verbose] > │         let v319 : uint64 = v317.l0                                          │

00:01:17 #4295 [Verbose] > │         let struct (v320 : (string []), v321 : US1) = v300.[int v319]        │

00:01:17 #4296 [Verbose] > │         match v321 with                                                      │

00:01:17 #4297 [Verbose] > │         | US1_0 -> (* None *)                                                │

00:01:17 #4298 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:01:17 #4299 [Verbose] > │             let v325 : (unit -> unit) = closure10()                          │

00:01:17 #4300 [Verbose] > │             v325 ()                                                          │

00:01:17 #4301 [Verbose] > │             #else                                                            │

00:01:17 #4302 [Verbose] > │             let v326 : (unit -> unit) = closure11()                          │

00:01:17 #4303 [Verbose] > │             v326 ()                                                          │

00:01:17 #4304 [Verbose] > │             #endif                                                           │

00:01:17 #4305 [Verbose] > │             ()                                                               │

00:01:17 #4306 [Verbose] > │         | US1_1(v322) -> (* Some *)                                          │

00:01:17 #4307 [Verbose] > │             #if FABLE_COMPILER_RUST                                          │

00:01:17 #4308 [Verbose] > │             let v323 : (unit -> unit) = closure12()                          │

00:01:17 #4309 [Verbose] > │             v323 ()                                                          │

00:01:17 #4310 [Verbose] > │             #else                                                            │

00:01:17 #4311 [Verbose] > │             let v324 : (unit -> unit) = closure13(v322)                      │

00:01:17 #4312 [Verbose] > │             v324 ()                                                          │

00:01:17 #4313 [Verbose] > │             #endif                                                           │

00:01:17 #4314 [Verbose] > │             ()                                                               │

00:01:17 #4315 [Verbose] > │         let v327 : string = "\t| "                                           │

00:01:17 #4316 [Verbose] > │         let v328 : string = System.String.Join (v327, v320)                  │

00:01:17 #4317 [Verbose] > │         System.Console.WriteLine v328                                        │

00:01:17 #4318 [Verbose] > │         #if FABLE_COMPILER_RUST                                              │

00:01:17 #4319 [Verbose] > │         let v329 : (unit -> unit) = closure10()                              │

00:01:17 #4320 [Verbose] > │         v329 ()                                                              │

00:01:17 #4321 [Verbose] > │         #else                                                                │

00:01:17 #4322 [Verbose] > │         let v330 : (unit -> unit) = closure11()                              │

00:01:17 #4323 [Verbose] > │         v330 ()                                                              │

00:01:17 #4324 [Verbose] > │         #endif                                                               │

00:01:17 #4325 [Verbose] > │         let v331 : uint64 = v319 + 1UL                                       │

00:01:17 #4326 [Verbose] > │         v317.l0 <- v331                                                      │

00:01:17 #4327 [Verbose] > │         ()                                                                   │

00:01:17 #4328 [Verbose] > │     let v332 : ((float []) []) = Array.zeroCreate<(float [])>                │

00:01:17 #4329 [Verbose] > │ (System.Convert.ToInt32(v162))                                               │

00:01:17 #4330 [Verbose] > │     let v333 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4331 [Verbose] > │     while method5(v162, v333) do                                             │

00:01:17 #4332 [Verbose] > │         let v335 : uint64 = v333.l0                                          │

00:01:17 #4333 [Verbose] > │         let struct (v336 : string, v337 : string, v338 : string, v339 :      │

00:01:17 #4334 [Verbose] > │ (int64 [])) = v75.[int v335]                                                 │

00:01:17 #4335 [Verbose] > │         let v340 : (int64 -> float) = float                                  │

00:01:17 #4336 [Verbose] > │         let v341 : uint64 = System.Convert.ToUInt64 v339.Length              │

00:01:17 #4337 [Verbose] > │         let v342 : (float []) = Array.zeroCreate<float>                      │

00:01:17 #4338 [Verbose] > │ (System.Convert.ToInt32(v341))                                               │

00:01:17 #4339 [Verbose] > │         let v343 : Mut1 = {l0 = 0UL} : Mut1                                  │

00:01:17 #4340 [Verbose] > │         while method5(v341, v343) do                                         │

00:01:17 #4341 [Verbose] > │             let v345 : uint64 = v343.l0                                      │

00:01:17 #4342 [Verbose] > │             let v346 : int64 = v339.[int v345]                               │

00:01:17 #4343 [Verbose] > │             let v347 : float = v340 v346                                     │

00:01:17 #4344 [Verbose] > │             v342.[int v345] <- v347                                          │

00:01:17 #4345 [Verbose] > │             let v348 : uint64 = v345 + 1UL                                   │

00:01:17 #4346 [Verbose] > │             v343.l0 <- v348                                                  │

00:01:17 #4347 [Verbose] > │             ()                                                               │

00:01:17 #4348 [Verbose] > │         v332.[int v335] <- v342                                              │

00:01:17 #4349 [Verbose] > │         let v349 : uint64 = v335 + 1UL                                       │

00:01:17 #4350 [Verbose] > │         v333.l0 <- v349                                                      │

00:01:17 #4351 [Verbose] > │         ()                                                                   │

00:01:17 #4352 [Verbose] > │     let v350 : ((float []) []) = v332 |> Array.transpose                     │

00:01:17 #4353 [Verbose] > │     let v351 : uint64 = System.Convert.ToUInt64 v350.Length                  │

00:01:17 #4354 [Verbose] > │     let v352 : (float []) = Array.zeroCreate<float>                          │

00:01:17 #4355 [Verbose] > │ (System.Convert.ToInt32(v351))                                               │

00:01:17 #4356 [Verbose] > │     let v353 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4357 [Verbose] > │     while method5(v351, v353) do                                             │

00:01:17 #4358 [Verbose] > │         let v355 : uint64 = v353.l0                                          │

00:01:17 #4359 [Verbose] > │         let v356 : (float []) = v350.[int v355]                              │

00:01:17 #4360 [Verbose] > │         let v357 : float = v356 |> Array.average                             │

00:01:17 #4361 [Verbose] > │         v352.[int v355] <- v357                                              │

00:01:17 #4362 [Verbose] > │         let v358 : uint64 = v355 + 1UL                                       │

00:01:17 #4363 [Verbose] > │         v353.l0 <- v358                                                      │

00:01:17 #4364 [Verbose] > │         ()                                                                   │

00:01:17 #4365 [Verbose] > │     let v359 : (float -> int64) = int64                                      │

00:01:17 #4366 [Verbose] > │     let v360 : uint64 = System.Convert.ToUInt64 v352.Length                  │

00:01:17 #4367 [Verbose] > │     let v361 : (int64 []) = Array.zeroCreate<int64>                          │

00:01:17 #4368 [Verbose] > │ (System.Convert.ToInt32(v360))                                               │

00:01:17 #4369 [Verbose] > │     let v362 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4370 [Verbose] > │     while method5(v360, v362) do                                             │

00:01:17 #4371 [Verbose] > │         let v364 : uint64 = v362.l0                                          │

00:01:17 #4372 [Verbose] > │         let v365 : float = v352.[int v364]                                   │

00:01:17 #4373 [Verbose] > │         let v366 : int64 = v359 v365                                         │

00:01:17 #4374 [Verbose] > │         v361.[int v364] <- v366                                              │

00:01:17 #4375 [Verbose] > │         let v367 : uint64 = v364 + 1UL                                       │

00:01:17 #4376 [Verbose] > │         v362.l0 <- v367                                                      │

00:01:17 #4377 [Verbose] > │         ()                                                                   │

00:01:17 #4378 [Verbose] > │     let v368 : uint64 = System.Convert.ToUInt64 v361.Length                  │

00:01:17 #4379 [Verbose] > │     let v369 : UH5 = UH5_1                                                   │

00:01:17 #4380 [Verbose] > │     let v370 : Mut3 = {l0 = 0UL; l1 = v369; l2 = 0} : Mut3                   │

00:01:17 #4381 [Verbose] > │     while method27(v368, v370) do                                            │

00:01:17 #4382 [Verbose] > │         let v372 : uint64 = v370.l0                                          │

00:01:17 #4383 [Verbose] > │         let struct (v373 : UH5, v374 : int32) = v370.l1, v370.l2             │

00:01:17 #4384 [Verbose] > │         let v375 : int64 = v361.[int v372]                                   │

00:01:17 #4385 [Verbose] > │         let v376 : int32 = v374 + 1                                          │

00:01:17 #4386 [Verbose] > │         let v377 : uint64 = v372 + 1UL                                       │

00:01:17 #4387 [Verbose] > │         let v378 : UH5 = UH5_0(v374, v375, v373)                             │

00:01:17 #4388 [Verbose] > │         v370.l0 <- v377                                                      │

00:01:17 #4389 [Verbose] > │         v370.l1 <- v378                                                      │

00:01:17 #4390 [Verbose] > │         v370.l2 <- v376                                                      │

00:01:17 #4391 [Verbose] > │         ()                                                                   │

00:01:17 #4392 [Verbose] > │     let struct (v379 : UH5, v380 : int32) = v370.l1, v370.l2                 │

00:01:17 #4393 [Verbose] > │     let v381 : UH5 = UH5_1                                                   │

00:01:17 #4394 [Verbose] > │     let v382 : UH5 = method28(v379, v381)                                    │

00:01:17 #4395 [Verbose] > │     let v383 : (struct (int32 * int64) []) = method38(v382)                  │

00:01:17 #4396 [Verbose] > │     System.Console.WriteLine v27                                             │

00:01:17 #4397 [Verbose] > │     let v384 : string = "Average Ranking  "                                  │

00:01:17 #4398 [Verbose] > │     System.Console.WriteLine v384                                            │

00:01:17 #4399 [Verbose] > │     let v385 : (struct (int32 * int64) -> int64) = closure14()               │

00:01:17 #4400 [Verbose] > │     let v386 : (struct (int32 * int64) []) = v383 |> Array.sortBy v385       │

00:01:17 #4401 [Verbose] > │     let v387 : uint64 = System.Convert.ToUInt64 v386.Length                  │

00:01:17 #4402 [Verbose] > │     let v388 : Mut1 = {l0 = 0UL} : Mut1                                      │

00:01:17 #4403 [Verbose] > │     while method5(v387, v388) do                                             │

00:01:17 #4404 [Verbose] > │         let v390 : uint64 = v388.l0                                          │

00:01:17 #4405 [Verbose] > │         let struct (v391 : int32, v392 : int64) = v386.[int v390]            │

00:01:17 #4406 [Verbose] > │         let v393 : string = $"Test case %d{v391 + 1}. Average Time: %A{v392} │

00:01:17 #4407 [Verbose] > │ "                                                                            │

00:01:17 #4408 [Verbose] > │         System.Console.WriteLine v393                                        │

00:01:17 #4409 [Verbose] > │         let v394 : uint64 = v390 + 1UL                                       │

00:01:17 #4410 [Verbose] > │         v388.l0 <- v394                                                      │

00:01:17 #4411 [Verbose] > │         ()                                                                   │

00:01:17 #4412 [Verbose] > │     ()                                                                       │

00:01:17 #4413 [Verbose] > │ method0()                                                                    │

00:01:17 #4414 [Verbose] > │                                                                              │

00:01:17 #4415 [Verbose] > │                                                                              │

00:01:17 #4416 [Verbose] > │                                                                              │

00:01:17 #4417 [Verbose] > │ Test: v25                                                                    │

00:01:17 #4418 [Verbose] > │                                                                              │

00:01:17 #4419 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7)                            │

00:01:17 #4420 [Verbose] > │ Test case 1. semi_open_1. Time: 460                                          │

00:01:17 #4421 [Verbose] > │ Test case 2. closed_1. Time: 440                                             │

00:01:17 #4422 [Verbose] > │ Test case 3. semi_open_2. Time: 402                                          │

00:01:17 #4423 [Verbose] > │ Test case 4. closed_2. Time: 408                                             │

00:01:17 #4424 [Verbose] > │                                                                              │

00:01:17 #4425 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7)                            │

00:01:17 #4426 [Verbose] > │ Test case 1. semi_open_1. Time: 435                                          │

00:01:17 #4427 [Verbose] > │ Test case 2. closed_1. Time: 389                                             │

00:01:17 #4428 [Verbose] > │ Test case 3. semi_open_2. Time: 400                                          │

00:01:17 #4429 [Verbose] > │ Test case 4. closed_2. Time: 390                                             │

00:01:17 #4430 [Verbose] > │                                                                              │

00:01:17 #4431 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7)                           │

00:01:17 #4432 [Verbose] > │ Test case 1. semi_open_1. Time: 395                                          │

00:01:17 #4433 [Verbose] > │ Test case 2. closed_1. Time: 390                                             │

00:01:17 #4434 [Verbose] > │ Test case 3. semi_open_2. Time: 409                                          │

00:01:17 #4435 [Verbose] > │ Test case 4. closed_2. Time: 413                                             │

00:01:17 #4436 [Verbose] > │                                                                              │

00:01:17 #4437 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7)                           │

00:01:17 #4438 [Verbose] > │ Test case 1. semi_open_1. Time: 409                                          │

00:01:17 #4439 [Verbose] > │ Test case 2. closed_1. Time: 409                                             │

00:01:17 #4440 [Verbose] > │ Test case 3. semi_open_2. Time: 401                                          │

00:01:17 #4441 [Verbose] > │ Test case 4. closed_2. Time: 392                                             │

00:01:17 #4442 [Verbose] > │                                                                              │

00:01:17 #4443 [Verbose] > │ Solution: struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16;   │

00:01:17 #4444 [Verbose] > │ 17; 18; 19; 20;                                                              │

00:01:17 #4445 [Verbose] > │           21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36;    │

00:01:17 #4446 [Verbose] > │ 37; 38;                                                                      │

00:01:17 #4447 [Verbose] > │           39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54;    │

00:01:17 #4448 [Verbose] > │ 55; 56;                                                                      │

00:01:17 #4449 [Verbose] > │           57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72;    │

00:01:17 #4450 [Verbose] > │ 73; 74;                                                                      │

00:01:17 #4451 [Verbose] > │           75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90;    │

00:01:17 #4452 [Verbose] > │ 91; 92;                                                                      │

00:01:17 #4453 [Verbose] > │           93; 94; 95; 96; 97; 98; 99; 100|], 60, 100)                        │

00:01:17 #4454 [Verbose] > │ Test case 1. semi_open_1. Time: 429                                          │

00:01:17 #4455 [Verbose] > │ Test case 2. closed_1. Time: 421                                             │

00:01:17 #4456 [Verbose] > │ Test case 3. semi_open_2. Time: 410                                          │

00:01:17 #4457 [Verbose] > │ Test case 4. closed_2. Time: 418                                             │

00:01:17 #4458 [Verbose] > │                                                                              │

00:01:17 #4459 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7)                            │

00:01:17 #4460 [Verbose] > │ Test case 1. semi_open_1. Time: 398                                          │

00:01:17 #4461 [Verbose] > │ Test case 2. closed_1. Time: 372                                             │

00:01:17 #4462 [Verbose] > │ Test case 3. semi_open_2. Time: 375                                          │

00:01:17 #4463 [Verbose] > │ Test case 4. closed_2. Time: 373                                             │

00:01:17 #4464 [Verbose] > │                                                                              │

00:01:17 #4465 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7)                            │

00:01:17 #4466 [Verbose] > │ Test case 1. semi_open_1. Time: 392                                          │

00:01:17 #4467 [Verbose] > │ Test case 2. closed_1. Time: 410                                             │

00:01:17 #4468 [Verbose] > │ Test case 3. semi_open_2. Time: 422                                          │

00:01:17 #4469 [Verbose] > │ Test case 4. closed_2. Time: 406                                             │

00:01:17 #4470 [Verbose] > │                                                                              │

00:01:17 #4471 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7)                           │

00:01:17 #4472 [Verbose] > │ Test case 1. semi_open_1. Time: 412                                          │

00:01:17 #4473 [Verbose] > │ Test case 2. closed_1. Time: 403                                             │

00:01:17 #4474 [Verbose] > │ Test case 3. semi_open_2. Time: 423                                          │

00:01:17 #4475 [Verbose] > │ Test case 4. closed_2. Time: 409                                             │

00:01:17 #4476 [Verbose] > │                                                                              │

00:01:17 #4477 [Verbose] > │ Solution: struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7)                           │

00:01:17 #4478 [Verbose] > │ Test case 1. semi_open_1. Time: 428                                          │

00:01:17 #4479 [Verbose] > │ Test case 2. closed_1. Time: 408                                             │

00:01:17 #4480 [Verbose] > │ Test case 3. semi_open_2. Time: 425                                          │

00:01:17 #4481 [Verbose] > │ Test case 4. closed_2. Time: 434                                             │

00:01:17 #4482 [Verbose] > │                                                                              │

00:01:17 #4483 [Verbose] > │ Solution: struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16;   │

00:01:17 #4484 [Verbose] > │ 17; 18; 19; 20;                                                              │

00:01:17 #4485 [Verbose] > │           21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36;    │

00:01:17 #4486 [Verbose] > │ 37; 38;                                                                      │

00:01:17 #4487 [Verbose] > │           39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54;    │

00:01:17 #4488 [Verbose] > │ 55; 56;                                                                      │

00:01:17 #4489 [Verbose] > │           57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72;    │

00:01:17 #4490 [Verbose] > │ 73; 74;                                                                      │

00:01:17 #4491 [Verbose] > │           75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90;    │

00:01:17 #4492 [Verbose] > │ 91; 92;                                                                      │

00:01:17 #4493 [Verbose] > │           93; 94; 95; 96; 97; 98; 99; 100|], 60, 100)                        │

00:01:17 #4494 [Verbose] > │ Test case 1. semi_open_1. Time: 513                                          │

00:01:17 #4495 [Verbose] > │ Test case 2. closed_1. Time: 508                                             │

00:01:17 #4496 [Verbose] > │ Test case 3. semi_open_2. Time: 513                                          │

00:01:17 #4497 [Verbose] > │ Test case 4. closed_2. Time: 552                                             │

00:01:17 #4498 [Verbose] > │                                                                              │

00:01:17 #4499 [Verbose] > │ Input                                                                        │

00:01:17 #4500 [Verbose] > │                                                                              │

00:01:17 #4501 [Verbose] > │                                                                              │

00:01:17 #4502 [Verbose] > │                                                                              │

00:01:17 #4503 [Verbose] > │  	| Expected	| Result  	| Best                                                     │

00:01:17 #4504 [Verbose] > │ ---                                                                          │

00:01:17 #4505 [Verbose] > │                                                                              │

00:01:17 #4506 [Verbose] > │                                                                              │

00:01:17 #4507 [Verbose] > │                                                                              │

00:01:17 #4508 [Verbose] > │    	| ---     	| ---     	| ---                                                    │

00:01:17 #4509 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7)                                      │

00:01:17 #4510 [Verbose] > │                                                                              │

00:01:17 #4511 [Verbose] > │                                                                              │

00:01:17 #4512 [Verbose] > │                                                                              │

00:01:17 #4513 [Verbose] > │ | US0_1 3 	| US0_1 3 	| struct (3L, 402L)                                        │

00:01:17 #4514 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7)                                      │

00:01:17 #4515 [Verbose] > │                                                                              │

00:01:17 #4516 [Verbose] > │                                                                              │

00:01:17 #4517 [Verbose] > │                                                                              │

00:01:17 #4518 [Verbose] > │ | US0_1 0 	| US0_1 0 	| struct (2L, 389L)                                        │

00:01:17 #4519 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7)                                     │

00:01:17 #4520 [Verbose] > │                                                                              │

00:01:17 #4521 [Verbose] > │                                                                              │

00:01:17 #4522 [Verbose] > │                                                                              │

00:01:17 #4523 [Verbose] > │ | US0_1 6 	| US0_1 6 	| struct (2L, 390L)                                        │

00:01:17 #4524 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7)                                     │

00:01:17 #4525 [Verbose] > │                                                                              │

00:01:17 #4526 [Verbose] > │                                                                              │

00:01:17 #4527 [Verbose] > │                                                                              │

00:01:17 #4528 [Verbose] > │ | US0_0   	| US0_0   	| struct (4L, 392L)                                        │

00:01:17 #4529 [Verbose] > │ struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; │

00:01:17 #4530 [Verbose] > │ 20;                                                                          │

00:01:17 #4531 [Verbose] > │           21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36;    │

00:01:17 #4532 [Verbose] > │ 37; 38;                                                                      │

00:01:17 #4533 [Verbose] > │           39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54;    │

00:01:17 #4534 [Verbose] > │ 55; 56;                                                                      │

00:01:17 #4535 [Verbose] > │           57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72;    │

00:01:17 #4536 [Verbose] > │ 73; 74;                                                                      │

00:01:17 #4537 [Verbose] > │           75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90;    │

00:01:17 #4538 [Verbose] > │ 91; 92;                                                                      │

00:01:17 #4539 [Verbose] > │           93; 94; 95; 96; 97; 98; 99; 100|], 60, 100)	| US0_1 59	| US0_1 59	|      │

00:01:17 #4540 [Verbose] > │ struct (3L, 410L)                                                            │

00:01:17 #4541 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 6, 7)                                      │

00:01:17 #4542 [Verbose] > │                                                                              │

00:01:17 #4543 [Verbose] > │                                                                              │

00:01:17 #4544 [Verbose] > │                                                                              │

00:01:17 #4545 [Verbose] > │ | US0_1 3 	| US0_1 3 	| struct (2L, 372L)                                        │

00:01:17 #4546 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 1, 7)                                      │

00:01:17 #4547 [Verbose] > │                                                                              │

00:01:17 #4548 [Verbose] > │                                                                              │

00:01:17 #4549 [Verbose] > │                                                                              │

00:01:17 #4550 [Verbose] > │ | US0_1 0 	| US0_1 0 	| struct (1L, 392L)                                        │

00:01:17 #4551 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 11, 7)                                     │

00:01:17 #4552 [Verbose] > │                                                                              │

00:01:17 #4553 [Verbose] > │                                                                              │

00:01:17 #4554 [Verbose] > │                                                                              │

00:01:17 #4555 [Verbose] > │ | US0_1 6 	| US0_1 6 	| struct (2L, 403L)                                        │

00:01:17 #4556 [Verbose] > │ struct ([|1; 3; 4; 6; 8; 9; 11|], 12, 7)                                     │

00:01:17 #4557 [Verbose] > │                                                                              │

00:01:17 #4558 [Verbose] > │                                                                              │

00:01:17 #4559 [Verbose] > │                                                                              │

00:01:17 #4560 [Verbose] > │ | US0_0   	| US0_0   	| struct (2L, 408L)                                        │

00:01:17 #4561 [Verbose] > │ struct ([|1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; │

00:01:17 #4562 [Verbose] > │ 20;                                                                          │

00:01:17 #4563 [Verbose] > │           21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36;    │

00:01:17 #4564 [Verbose] > │ 37; 38;                                                                      │

00:01:17 #4565 [Verbose] > │           39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54;    │

00:01:17 #4566 [Verbose] > │ 55; 56;                                                                      │

00:01:17 #4567 [Verbose] > │           57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72;    │

00:01:17 #4568 [Verbose] > │ 73; 74;                                                                      │

00:01:17 #4569 [Verbose] > │           75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90;    │

00:01:17 #4570 [Verbose] > │ 91; 92;                                                                      │

00:01:17 #4571 [Verbose] > │           93; 94; 95; 96; 97; 98; 99; 100|], 60, 100)	| US0_1 59	| US0_1 59	|      │

00:01:17 #4572 [Verbose] > │ struct (2L, 508L)                                                            │

00:01:17 #4573 [Verbose] > │                                                                              │

00:01:17 #4574 [Verbose] > │ Average Ranking                                                              │

00:01:17 #4575 [Verbose] > │ Test case 2. Average Time: 415L                                              │

00:01:17 #4576 [Verbose] > │ Test case 3. Average Time: 418L                                              │

00:01:17 #4577 [Verbose] > │ Test case 4. Average Time: 419L                                              │

00:01:17 #4578 [Verbose] > │ Test case 1. Average Time: 427L                                              │

00:01:17 #4579 [Verbose] > │                                                                              │

00:01:17 #4580 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:17 #4581 [Verbose] >

00:01:17 #4582 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:01:17 #4583 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:01:17 #4584 [Verbose] > │ ## returnLettersWithOddCountTests                                            │

00:01:17 #4585 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:17 #4586 [Verbose] >

00:01:17 #4587 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:01:17 #4588 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:01:17 #4589 [Verbose] > │ Test: ReturnLettersWithOddCount                                              │

00:01:17 #4590 [Verbose] > │                                                                              │

00:01:17 #4591 [Verbose] > │ Solution: 1                                                                  │

00:01:17 #4592 [Verbose] > │ Test case 1. A. Time: 645L                                                   │

00:01:17 #4593 [Verbose] > │                                                                              │

00:01:17 #4594 [Verbose] > │ Solution: 2                                                                  │

00:01:17 #4595 [Verbose] > │ Test case 1. A. Time: 663L                                                   │

00:01:17 #4596 [Verbose] > │                                                                              │

00:01:17 #4597 [Verbose] > │ Solution: 3                                                                  │

00:01:17 #4598 [Verbose] > │ Test case 1. A. Time: 680L                                                   │

00:01:17 #4599 [Verbose] > │                                                                              │

00:01:17 #4600 [Verbose] > │ Solution: 9                                                                  │

00:01:17 #4601 [Verbose] > │ Test case 1. A. Time: 730L                                                   │

00:01:17 #4602 [Verbose] > │                                                                              │

00:01:17 #4603 [Verbose] > │ Solution: 10                                                                 │

00:01:17 #4604 [Verbose] > │ Test case 1. A. Time: 815L                                                   │

00:01:17 #4605 [Verbose] > │                                                                              │

00:01:17 #4606 [Verbose] > │ Input   | Expected        | Result          | Best                           │

00:01:17 #4607 [Verbose] > │ ---     | ---             | ---             | ---                            │

00:01:17 #4608 [Verbose] > │ 1       | a               | a               | (1, 645)                       │

00:01:17 #4609 [Verbose] > │ 2       | ba              | ba              | (1, 663)                       │

00:01:17 #4610 [Verbose] > │ 3       | aaa             | aaa             | (1, 680)                       │

00:01:17 #4611 [Verbose] > │ 9       | aaaaaaaaa       | aaaaaaaaa       | (1, 730)                       │

00:01:17 #4612 [Verbose] > │ 10      | baaaaaaaaa      | baaaaaaaaa      | (1, 815)                       │

00:01:17 #4613 [Verbose] > │                                                                              │

00:01:17 #4614 [Verbose] > │ Averages                                                                     │

00:01:17 #4615 [Verbose] > │ Test case 1. Average Time: 706L                                              │

00:01:17 #4616 [Verbose] > │                                                                              │

00:01:17 #4617 [Verbose] > │ Ranking                                                                      │

00:01:17 #4618 [Verbose] > │ Test case 1. Average Time: 706L                                              │

00:01:17 #4619 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:17 #4620 [Verbose] >

00:01:17 #4621 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:01:17 #4622 [Verbose] > //// test

00:01:17 #4623 [Verbose] >

00:01:17 #4624 [Verbose] > let solutions = [[

00:01:17 #4625 [Verbose] >     "A",

00:01:17 #4626 [Verbose] >     fun n ->

00:01:17 #4627 [Verbose] >         let mutable _builder = StringBuilder (new string('a', n))

00:01:17 #4628 [Verbose] >         if n % 2 = 0 then

00:01:17 #4629 [Verbose] >             _builder.[[0]] <- 'b'

00:01:17 #4630 [Verbose] >

00:01:17 #4631 [Verbose] >         _builder.ToString ()

00:01:17 #4632 [Verbose] > ]]

00:01:17 #4633 [Verbose] > let testCases = seq {

00:01:17 #4634 [Verbose] >     1, "a"

00:01:17 #4635 [Verbose] >     2, "ba"

00:01:17 #4636 [Verbose] >     3, "aaa"

00:01:17 #4637 [Verbose] >     9, "aaaaaaaaa"

00:01:17 #4638 [Verbose] >     10, "baaaaaaaaa"

00:01:17 #4639 [Verbose] > }

00:01:17 #4640 [Verbose] > let rec returnLettersWithOddCountTests =

00:01:17 #4641 [Verbose] >     runAll (nameof returnLettersWithOddCountTests) _count solutions testCases

00:01:17 #4642 [Verbose] > returnLettersWithOddCountTests

00:01:17 #4643 [Verbose] > |> sortResultList

00:01:18 #4644 [Verbose] >

00:01:18 #4645 [Verbose] > ╭─[ 733.38ms - stdout ]────────────────────────────────────────────────────────╮

00:01:18 #4646 [Verbose] > │                                                                              │

00:01:18 #4647 [Verbose] > │                                                                              │

00:01:18 #4648 [Verbose] > │ Test: returnLettersWithOddCountTests                                         │

00:01:18 #4649 [Verbose] > │                                                                              │

00:01:18 #4650 [Verbose] > │ Solution: 1                                                                  │

00:01:18 #4651 [Verbose] > │ Test case 1. A. Time: 1L                                                     │

00:01:18 #4652 [Verbose] > │                                                                              │

00:01:18 #4653 [Verbose] > │ Solution: 2                                                                  │

00:01:18 #4654 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:01:18 #4655 [Verbose] > │                                                                              │

00:01:18 #4656 [Verbose] > │ Solution: 3                                                                  │

00:01:18 #4657 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:01:18 #4658 [Verbose] > │                                                                              │

00:01:18 #4659 [Verbose] > │ Solution: 9                                                                  │

00:01:18 #4660 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:01:18 #4661 [Verbose] > │                                                                              │

00:01:18 #4662 [Verbose] > │ Solution: 10                                                                 │

00:01:18 #4663 [Verbose] > │ Test case 1. A. Time: 2L                                                     │

00:01:18 #4664 [Verbose] > │                                                                              │

00:01:18 #4665 [Verbose] > │ Input	| Expected  	| Result    	| Best                                             │

00:01:18 #4666 [Verbose] > │ ---  	| ---       	| ---       	| ---                                              │

00:01:18 #4667 [Verbose] > │ 1    	| a         	| a         	| (1, 1)                                           │

00:01:18 #4668 [Verbose] > │ 2    	| ba        	| ba        	| (1, 0)                                           │

00:01:18 #4669 [Verbose] > │ 3    	| aaa       	| aaa       	| (1, 0)                                           │

00:01:18 #4670 [Verbose] > │ 9    	| aaaaaaaaa 	| aaaaaaaaa 	| (1, 0)                                           │

00:01:18 #4671 [Verbose] > │ 10   	| baaaaaaaaa	| baaaaaaaaa	| (1, 2)                                           │

00:01:18 #4672 [Verbose] > │                                                                              │

00:01:18 #4673 [Verbose] > │ Average Ranking                                                              │

00:01:18 #4674 [Verbose] > │ Test case 1. Average Time: 0L                                                │

00:01:18 #4675 [Verbose] > │                                                                              │

00:01:18 #4676 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:18 #4677 [Verbose] >

00:01:18 #4678 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:01:18 #4679 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:01:18 #4680 [Verbose] > │ ## hasAnyPairCloseToEachotherTests                                           │

00:01:18 #4681 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:18 #4682 [Verbose] >

00:01:18 #4683 [Verbose] > ── markdown ────────────────────────────────────────────────────────────────────

00:01:18 #4684 [Verbose] > ╭──────────────────────────────────────────────────────────────────────────────╮

00:01:18 #4685 [Verbose] > │ Test: HasAnyPairCloseToEachother                                             │

00:01:18 #4686 [Verbose] > │                                                                              │

00:01:18 #4687 [Verbose] > │ Solution: 0                                                                  │

00:01:18 #4688 [Verbose] > │ Test case 1. A. Time: 137L                                                   │

00:01:18 #4689 [Verbose] > │                                                                              │

00:01:18 #4690 [Verbose] > │ Solution: 1,2                                                                │

00:01:18 #4691 [Verbose] > │ Test case 1. A. Time: 186L                                                   │

00:01:18 #4692 [Verbose] > │                                                                              │

00:01:18 #4693 [Verbose] > │ Solution: 3,5                                                                │

00:01:18 #4694 [Verbose] > │ Test case 1. A. Time: 206L                                                   │

00:01:18 #4695 [Verbose] > │                                                                              │

00:01:18 #4696 [Verbose] > │ Solution: 3,4,6                                                              │

00:01:18 #4697 [Verbose] > │ Test case 1. A. Time: 149L                                                   │

00:01:18 #4698 [Verbose] > │                                                                              │

00:01:18 #4699 [Verbose] > │ Solution: 2,4,6                                                              │

00:01:18 #4700 [Verbose] > │ Test case 1. A. Time: 150L                                                   │

00:01:18 #4701 [Verbose] > │                                                                              │

00:01:18 #4702 [Verbose] > │ Input   | Expected        | Result  | Best                                   │

00:01:18 #4703 [Verbose] > │ ---     | ---             | ---     | ---                                    │

00:01:18 #4704 [Verbose] > │ 0       | False           | False   | (1, 137)                               │

00:01:18 #4705 [Verbose] > │ 1,2     | True            | True    | (1, 186)                               │

00:01:18 #4706 [Verbose] > │ 3,5     | False           | False   | (1, 206)                               │

00:01:18 #4707 [Verbose] > │ 3,4,6   | True            | True    | (1, 149)                               │

00:01:18 #4708 [Verbose] > │ 2,4,6   | False           | False   | (1, 150)                               │

00:01:18 #4709 [Verbose] > │                                                                              │

00:01:18 #4710 [Verbose] > │ Averages                                                                     │

00:01:18 #4711 [Verbose] > │ Test case 1. Average Time: 165L                                              │

00:01:18 #4712 [Verbose] > │                                                                              │

00:01:18 #4713 [Verbose] > │ Ranking                                                                      │

00:01:18 #4714 [Verbose] > │ Test case 1. Average Time: 165L                                              │

00:01:18 #4715 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:18 #4716 [Verbose] >

00:01:18 #4717 [Verbose] > ── fsharp ──────────────────────────────────────────────────────────────────────

00:01:18 #4718 [Verbose] > //// test

00:01:18 #4719 [Verbose] >

00:01:18 #4720 [Verbose] > let solutions = [[

00:01:18 #4721 [Verbose] >     "A",

00:01:18 #4722 [Verbose] >     fun (a: int[[]]) ->

00:01:18 #4723 [Verbose] >         let indices = System.Linq.Enumerable.Range(0, a.Length) |>

00:01:18 #4724 [Verbose] > System.Linq.Enumerable.ToArray

00:01:18 #4725 [Verbose] >         System.Array.Sort (a, indices)

00:01:18 #4726 [Verbose] >

00:01:18 #4727 [Verbose] >         indices

00:01:18 #4728 [Verbose] >         |> Array.take (a.Length - 1)

00:01:18 #4729 [Verbose] >         |> Array.exists (fun i -> a.[[i + 1]] - a.[[i]] = 1)

00:01:18 #4730 [Verbose] > ]]

00:01:18 #4731 [Verbose] > let testCases = seq {

00:01:18 #4732 [Verbose] >     [[| 0 |]], false

00:01:18 #4733 [Verbose] >     [[| 1; 2 |]], true

00:01:18 #4734 [Verbose] >     [[| 3; 5 |]], false

00:01:18 #4735 [Verbose] >     [[| 3; 4; 6 |]], true

00:01:18 #4736 [Verbose] >     [[| 2; 4; 6 |]], false

00:01:18 #4737 [Verbose] > }

00:01:18 #4738 [Verbose] > let rec hasAnyPairCloseToEachotherTests =

00:01:18 #4739 [Verbose] >     runAll (nameof hasAnyPairCloseToEachotherTests) _count solutions testCases

00:01:18 #4740 [Verbose] > hasAnyPairCloseToEachotherTests

00:01:18 #4741 [Verbose] > |> sortResultList

00:01:19 #4742 [Verbose] >

00:01:19 #4743 [Verbose] > ╭─[ 650.62ms - stdout ]────────────────────────────────────────────────────────╮

00:01:19 #4744 [Verbose] > │                                                                              │

00:01:19 #4745 [Verbose] > │                                                                              │

00:01:19 #4746 [Verbose] > │ Test: hasAnyPairCloseToEachotherTests                                        │

00:01:19 #4747 [Verbose] > │                                                                              │

00:01:19 #4748 [Verbose] > │ Solution: 0                                                                  │

00:01:19 #4749 [Verbose] > │ Test case 1. A. Time: 2L                                                     │

00:01:19 #4750 [Verbose] > │                                                                              │

00:01:19 #4751 [Verbose] > │ Solution: 1,2                                                                │

00:01:19 #4752 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:01:19 #4753 [Verbose] > │                                                                              │

00:01:19 #4754 [Verbose] > │ Solution: 3,5                                                                │

00:01:19 #4755 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:01:19 #4756 [Verbose] > │                                                                              │

00:01:19 #4757 [Verbose] > │ Solution: 3,4,6                                                              │

00:01:19 #4758 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:01:19 #4759 [Verbose] > │                                                                              │

00:01:19 #4760 [Verbose] > │ Solution: 2,4,6                                                              │

00:01:19 #4761 [Verbose] > │ Test case 1. A. Time: 0L                                                     │

00:01:19 #4762 [Verbose] > │                                                                              │

00:01:19 #4763 [Verbose] > │ Input	| Expected	| Result	| Best                                                   │

00:01:19 #4764 [Verbose] > │ ---  	| ---     	| ---   	| ---                                                    │

00:01:19 #4765 [Verbose] > │ 0    	| False   	| False 	| (1, 2)                                                 │

00:01:19 #4766 [Verbose] > │ 1,2  	| True    	| True  	| (1, 0)                                                 │

00:01:19 #4767 [Verbose] > │ 3,5  	| False   	| False 	| (1, 0)                                                 │

00:01:19 #4768 [Verbose] > │ 3,4,6	| True    	| True  	| (1, 0)                                                 │

00:01:19 #4769 [Verbose] > │ 2,4,6	| False   	| False 	| (1, 0)                                                 │

00:01:19 #4770 [Verbose] > │                                                                              │

00:01:19 #4771 [Verbose] > │ Average Ranking                                                              │

00:01:19 #4772 [Verbose] > │ Test case 1. Average Time: 0L                                                │

00:01:19 #4773 [Verbose] > │                                                                              │

00:01:19 #4774 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:19 #4775 [Verbose] >

00:01:19 #4776 [Verbose] > ── spiral ──────────────────────────────────────────────────────────────────────

00:01:19 #4777 [Verbose] > // // test

00:01:19 #4778 [Verbose] >

00:01:19 #4779 [Verbose] > ()

00:01:19 #4780 [Verbose] > Building C:\Users\i574n\AppData\Local\Temp\!dotnet-repl\20231029-1312-2702-0237-0a9ca8cd7707\main.spi

00:01:19 #4781 [Verbose] >

00:01:19 #4782 [Verbose] > ╭─[ 172.30ms - stdout ]────────────────────────────────────────────────────────╮

00:01:19 #4783 [Verbose] > │ let rec method0 () : unit =                                                  │

00:01:19 #4784 [Verbose] > │     ()                                                                       │

00:01:19 #4785 [Verbose] > │ method0()                                                                    │

00:01:19 #4786 [Verbose] > │                                                                              │

00:01:19 #4787 [Verbose] > │                                                                              │

00:01:19 #4788 [Verbose] > ╰──────────────────────────────────────────────────────────────────────────────╯

00:01:20 #4789 [Verbose] > [NbConvertApp] Converting notebook Perf.dib.ipynb to html

00:01:20 #4790 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

00:01:20 #4791 [Verbose] >   validate(nb)

00:01:21 #4792 [Verbose] > C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

00:01:21 #4793 [Verbose] >   return _pygments_highlight(

00:01:22 #4794 [Verbose] > [NbConvertApp] Writing 553121 bytes to Perf.dib.html

00:01:23 #4795 [Debug] executeAsync / exitCode: 0 / output.Length: 337620

00:01:23 #4796 [Debug] main / executeCommand / exitCode: 0

00:00:00 #1 [Debug] writeDibCode / output: Fs / path: Perf.dib

00:00:00 #2 [Debug] parseDibCode / output: Fs / file: Perf.dib

In [ ]:
{ . "$ScriptDir/../apps/dir-tree-html/build.ps1" } | Invoke-Block

── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ # DirTreeHtml (Polyglot)                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Testing.dib



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.A

spNetCore.Html.Abstractions.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.Formatting.dll"

open System

open System.IO

open System.Text

open Microsoft.DotNet.Interactive.Formatting



── fsharp - import ─────────────────────────────────────────────────────────────

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.FSharp.dll"

open Microsoft.DotNet.Interactive.FSharp.FSharpKernelHelpers

#r 

"C:/Users/i574n/.nuget/packages/dotnet-repl/0.1.204/tools/net7.0/any/Microsoft.D

otNet.Interactive.dll"

open type Microsoft.DotNet.Interactive.Kernel



── fsharp - import ─────────────────────────────────────────────────────────────

#r @"../../../../../../../.nuget/packages/expecto/10.1.0/lib/net6.0/Expecto.dll"



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



Formatter.ListExpansionLimit <- 100



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



type AssertExceptionFormatter (ex) =

    member _.Text =

        ex.ToString()

            .Replace("32m", "<span style=\"color: green;\">")

            .Replace("36m", "</span>")

            .Replace("31m", "<span style=\"color: red;\">")

            .Replace("\n", "<br/>\n")





Formatter.Register<AssertExceptionFormatter> ((fun (x : 

AssertExceptionFormatter) -> x.Text), "text/html")



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __expect fn log expected actual =

    if log then printfn $"{actual.ToDisplayString ()}"

    try

        "Testing.__expect" |> fn actual expected

    with :? Expecto.AssertException as ex ->

        AssertExceptionFormatter(ex).Display () |> ignore

        failwith (ex.GetType().FullName)



let inline __contains log expected actual = __expect Expecto.Expect.contains log

expected actual

let inline _contains expected actual = __contains true expected actual



let inline __equal log expected actual = __expect Expecto.Expect.equal log 

expected actual

let inline _equal expected actual = __equal true expected actual



let inline __isGreaterThan log expected actual = __expect 

Expecto.Expect.isGreaterThan log expected actual

let ...



── fsharp - import ─────────────────────────────────────────────────────────────

//// test



let inline __isBetween log a b actual =

    let inline isBetween actual (a, b) _ =

        __isGreaterThanOrEqual log a actual

        __isLessThanOrEqual log b actual

    __expect isBetween log (a, b) actual

let inline _isBetween a b actual = __isBetween true a b actual



── fsharp ──────────────────────────────────────────────────────────────────────

#r 

@"../../../../../../../.nuget/packages/fsharp.control.asyncseq/3.2.1/lib/netstan

dard2.1/FSharp.Control.AsyncSeq.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive/6.0.1-preview.1/lib/net6.

0/System.Reactive.dll"

#r 

@"../../../../../../../.nuget/packages/system.reactive.linq/6.0.1-preview.1/lib/

netstandard2.0/System.Reactive.Linq.dll"

#r 

@"../../../../../../../.nuget/packages/argu/6.1.1/lib/netstandard2.0/Argu.dll"

#r 

@"../../../../../../../.nuget/packages/system.commandline/2.0.0-beta4.22272.1/li

b/net6.0/System.CommandLine.dll"

#r 

@"../../../../../../../.nuget/packages/falco.markup/1.0.2/lib/netstandard2.0/Fal

co.Markup.dll"



── fsharp ──────────────────────────────────────────────────────────────────────

#!import ../../lib/fsharp/Common.fs

#!import ../../lib/fsharp/CommonFSharp.fs

#!import ../../lib/fsharp/Async.fs

#!import ../../lib/fsharp/AsyncSeq.fs

#!import ../../lib/fsharp/Networking.fs

#!import ../../lib/fsharp/Runtime.fs

#!import ../../lib/fsharp/FileSystem.fs



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Common =



    let nl = System.Environment.NewLine

    let q = @""""



    let inline cons head tail = head :: tail



    module String =

        let inline contains (value : string) (input : string) =

            input.Contains value



        let inline endsWith (value : string) (input : string) =

            input.EndsWith value



        let inline padLeft totalWidth paddingChar (input : string) =

            input.PadLeft (totalWidth, paddingChar)



        let inline replace (oldValue : string) (newValue : string) (input : 

string) =

            input.Replace (oldValue, newValue)



        let inline split separator (input : string) =

            input.Split separator



        let inline spli...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module CommonFSharp =



    open Common



    /// ## getUnionCaseName



    let inline getUnionCaseName<'T> (x: 'T) =

        match Reflection.FSharpValue.GetUnionFields(x, typeof<'T>) with

        | case, _ -> case.Name





── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Async =



    open Common



    /// ## choice



    let inline choice asyncs = async {

        let e = Event<_> ()

        use cts = new System.Threading.CancellationTokenSource ()

        let fn =

            asyncs

            |> Seq.map (fun a -> async {

                let! x = a

                e.Trigger x

            })

            |> Async.Parallel

            |> Async.Ignore

        Async.Start (fn, cts.Token)

        let! result = Async.AwaitEvent e.Publish

        cts.Cancel ()

        return result

    }



    /// ## map



    let inline map fn a = async {

        let! x = a

        return fn x

    }



    /// ## catch



    let inline catch a =

        a

        |> Async.Catch

        ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module AsyncSeq =



    open Common



    /// ## subscribeEvent



    let inline subscribeEvent (event: IEvent<'H, 'A>) map =

        let observable = System.Reactive.Linq.Observable.FromEventPattern<'H, 

'A>(event.AddHandler, event.RemoveHandler)

        System.Reactive.Linq.Observable.Select (observable, fun event -> map 

event.EventArgs)

        |> FSharp.Control.AsyncSeq.ofObservableBuffered



    let subscribeToken (token : System.Threading.CancellationToken) =

        let tcs = new System.Threading.Tasks.TaskCompletionSource ()

        System.Action tcs.SetResult |> token.Register |> ignore

        let start = System.DateTime.Now.Ticks

        FSharp.Control.AsyncSeq.unfoldAsync

            (fun (...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Networking =



    open Common



    /// ## testPortOpen



    let inline testPortOpen port = async {

        let! ct = Async.CancellationToken

        use client = new System.Net.Sockets.TcpClient ()

        try

            do! client.ConnectAsync ("127.0.0.1", port, ct) |> 

Async.awaitValueTaskUnit

            return true

        with ex ->

            trace Verbose (fun () -> $"testPortOpen / ex: {ex |> 

printException}") getLocals

            return false

    }



    let inline testPortOpenTimeout timeout port = async {

        let! result =

            testPortOpen port

            |> Async.runWithTimeoutAsync timeout

        return

            match result with

            | None -> false

 ...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module Runtime =



    open Common



    /// ## isWindows



    let isWindows =

        fun () ->

            System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform

                System.Runtime.InteropServices.OSPlatform.Windows

        |> memoize



    /// ## getExecutableSuffix



    let inline getExecutableSuffix () =

        if isWindows ()

        then ".exe"

        else ""



    /// ## splitCommand



    type private CommandParseStep =

        | Start

        | Path of quoted: bool

        | Arguments



    let splitCommand (command: string) =

        let rec loop (path, args) chars step =

            match chars, step with

            | ('"' | '\'') :: tail, _ when path = "" -> loop (pat...



── fsharp - import ─────────────────────────────────────────────────────────────

#if !INTERACTIVE

namespace Polyglot

#endif



module FileSystem =



    open Common



    /// ## Operators



    module Operators =

        let inline (</>) a b =

            System.IO.Path.Combine (a, b)



    open Operators



    /// ## createTempDirectoryName



    let inline createTempDirectoryName () =

        let root = System.Reflection.Assembly.GetEntryAssembly().GetName().Name



        System.IO.Path.GetTempPath ()

        </> $"!{root}"

        </> string (newGuidFromDateTime System.DateTime.Now)



    /// ## createTempDirectory



    let inline createTempDirectory () =

        let tempFolder = createTempDirectoryName ()

        let result = System.IO.Directory.CreateDirectory tempFolder



        if not result.Exists then

            let ge...



── fsharp ──────────────────────────────────────────────────────────────────────

open FileSystem.Operators

open Falco.Markup



── fsharp ──────────────────────────────────────────────────────────────────────

type FileSystemNode =

    | File of string * string * int64

    | Folder of string * string * FileSystemNode list

    | Root of FileSystemNode list



let rec scanDirectory isRoot (basePath : string) (path : string) =

    let relativePath = path.Replace(basePath, "").Replace("\\", 

"/").Replace("//", "/").TrimStart '/'



    let directories =

        path

        |> System.IO.Directory.GetDirectories

        |> Array.toList

        |> List.sort

        |> List.map (scanDirectory false basePath)

    let files =

        path

        |> System.IO.Directory.GetFiles

        |> Array.toList

        |> List.sort

        |> List.map (fun f -> File (System.IO.Path.GetFileName f, relativePath, 

System.IO.FileInfo(f).Length))



    let children = directories @ files

    if isRoot

    then Root children

    else Folder (path |> System.IO.Path.GetFileName, relativePath, children)



let rec generateHtml fsNode =

    let sizeLabel size =

        match float size with

        | size when size > 1024.0 * 1024.0 -> $"%.2f{size / 1024.0 / 1024.0} MB"

        | size when size > 1024.0 -> $"%.2f{size / 1024.0} KB"

        | size -> $"%.2f{size} B"

    match fsNode with

    | File (fileName, relativePath, size) ->

        Elem.div [[]] [[

            Text.raw "&#128196; "

            Elem.a [[

                Attr.href $"""{relativePath}{if relativePath = "" then "" else 

"/"}{fileName}"""

            ]] [[

                Text.raw fileName

            ]]

            Elem.span [[]] [[

                Text.raw $" ({size |> sizeLabel})"

            ]]

        ]]

    | Folder (folderName, relativePath, children) ->

        let size =

            let rec loop children =

                children

                |> List.sumBy (function

                    | File (_, _, size) -> size

                    | Folder (_, _, children)

                    | Root children -> loop children

                )

            loop children

        Elem.details [[

            Attr.open' "true"

        ]] [[

            Elem.summary [[]] [[

                Text.raw "&#128194; "

                Elem.a [[

                    Attr.href relativePath

                ]] [[

                    Text.raw folderName

                ]]

                Elem.span [[]] [[

                    Text.raw $" ({size |> sizeLabel})"

                ]]

            ]]

            Elem.div [[]] [[

                yield! children |> List.map generateHtml

            ]]

        ]]

    | Root children ->

        Elem.div [[]] [[

            yield! children |> List.map generateHtml

        ]]



let generateHtmlForFileSystem root =

    $"""<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <style>

a {{

  font-size: 15px;

}}

span {{

  font-size: 11px;

}}

div > div {{

  padding-left: 10px;

}}

details > div {{

  padding-left: 19px;

}}

  </style>

</head>

<body>

  {root |> generateHtml |> renderNode}

</body>

</html>

"""



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let tempFolder = FileSystem.createTempDirectory ()

let rec loop d n = async {

    if n >= 0 then

        tempFolder </> d |> System.IO.Directory.CreateDirectory |> ignore

        do!

            n

            |> string

            |> String.replicate (n + 1)

            |> FileSystem.writeAllTextAsync (tempFolder </> d </> $"file.txt")

        do! loop $"{d}/{n}" (n - 1)

}

loop "_.root" 3

|> Async.RunSynchronously



let html =

    scanDirectory true tempFolder tempFolder

    |> generateHtmlForFileSystem



html

|> _equal """<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <style>

a {

  font-size: 15px;

}

span {

  font-size: 11px;

}

div > div {

  padding-left: 10px;

}

details > div {

  padding-left: 19px;

}

  </style>

</head>

<body>

  <div><details open="true"><summary>&#128194; <a href="_.root">_.root</a><span>

(10.00 B)</span></summary><div><details open="true"><summary>&#128194; <a 

href="_.root/3">3</a><span> (6.00 B)</span></summary><div><details 

open="true"><summary>&#128194; <a href="_.root/3/2">2</a><span> (3.00 

B)</span></summary><div><details open="true"><summary>&#128194; <a 

href="_.root/3/2/1">1</a><span> (1.00 B)</span></summary><div><div>&#128196; <a 

href="_.root/3/2/1/file.txt">file.txt</a><span> (1.00 

B)</span></div></div></details><div>&#128196; <a 

href="_.root/3/2/file.txt">file.txt</a><span> (2.00 

B)</span></div></div></details><div>&#128196; <a 

href="_.root/3/file.txt">file.txt</a><span> (3.00 

B)</span></div></div></details><div>&#128196; <a 

href="_.root/file.txt">file.txt</a><span> (4.00 

B)</span></div></div></details></div>

</body>

</html>

"""



html |> Microsoft.DotNet.Interactive.Formatting.Html.ToHtmlContent



╭─[ 166.52ms - return value ]──────────────────────────────────────────────────╮

│ <!DOCTYPE html>                                                              │

│ <html lang="en">                                                             │

│ <head>                                                                       │

│   <meta charset="UTF-8">                                                     │

│   <style>                                                                    │

│ a {                                                                          │

│   font-size: 15px;                                                           │

│ }                                                                            │

│ span {                                                                       │

│   font-size: 11px;                                                           │

│ }                                                                            │

│ div > div {                                                                  │

│   padding-left: 10px;                                                        │

│ }                                                                            │

│ details > div {                                                              │

│   padding-left: 19px;                                                        │

│ }                                                                            │

│   </style>                                                                   │

│ </head>                                                                      │

│ <body>                                                                       │

│   <div><details open="true"><summary>&#128194; <a                            │

│ href="_.root">_.root</a><span> (10.00 B)</span></summary><div><details       │

│ open="true"><summary>&#128194; <a href="_.root/3">3</a><span> (6.00          │

│ B)</span></summary><div><details open="true"><summary>&#128194; <a           │

│ href="_.root/3/2">2</a><span> (3.00 B)</span></summary><div><details         │

│ open="true"><summary>&#128194; <a href="_.root/3/2/1">1</a><span> (1.00      │

│ B)</span></summary><div><div>&#128196; <a                                    │

│ href="_.root/3/2/1/file.txt">file.txt</a><span> (1.00                        │

│ B)</span></div></div></deta...                                               │

╰──────────────────────────────────────────────────────────────────────────────╯



╭─[ 179.92ms - stdout ]────────────────────────────────────────────────────────╮

│ <!DOCTYPE html>                                                              │

│ <html lang="en">                                                             │

│ <head>                                                                       │

│   <meta charset="UTF-8">                                                     │

│   <style>                                                                    │

│ a {                                                                          │

│   font-size: 15px;                                                           │

│ }                                                                            │

│ span {                                                                       │

│   font-size: 11px;                                                           │

│ }                                                                            │

│ div > div {                                                                  │

│   padding-left: 10px;                                                        │

│ }                                                                            │

│ details > div {                                                              │

│   padding-left: 19px;                                                        │

│ }                                                                            │

│   </style>                                                                   │

│ </head>                                                                      │

│ <body>                                                                       │

│   <div><details open="true"><summary>&#128194; <a                            │

│ href="_.root">_.root</a><span> (10.00 B)</span></summary><div><details       │

│ open="true"><summary>&#128194; <a href="_.root/3">3</a><span> (6.00          │

│ B)</span></summary><div><details open="true"><summary>&#128194; <a           │

│ href="_.root/3/2">2</a><span> (3.00 B)</span></summary><div><details         │

│ open="true"><summary>&#128194; <a href="_.root/3/2/1">1</a><span> (1.00      │

│ B)</span></summary><div><div>&#128196; <a                                    │

│ href="_.root/3/2/1/file.txt">file.txt</a><span> (1.00                        │

│ B)</span></div></div></details><div>&#128196; <a                             │

│ href="_.root/3/2/file.txt">file.txt</a><span> (2.00                          │

│ B)</span></div></div></details><div>&#128196; <a                             │

│ href="_.root/3/file.txt">file.txt</a><span> (3.00                            │

│ B)</span></div></div></details><div>&#128196; <a                             │

│ href="_.root/file.txt">file.txt</a><span> (4.00                              │

│ B)</span></div></div></details></div>                                        │

│ </body>                                                                      │

│ </html>                                                                      │

│                                                                              │

│                                                                              │

╰──────────────────────────────────────────────────────────────────────────────╯



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## Arguments                                                                 │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

[[<RequireQualifiedAccess>]]

type Arguments =

    | [[<Argu.ArguAttributes.ExactlyOnce>]] Dir of string

    | [[<Argu.ArguAttributes.ExactlyOnce>]] Html of string



    interface Argu.IArgParserTemplate with

        member s.Usage =

            match s with

            | Dir _ -> nameof Dir

            | Html _ -> nameof Html



── markdown ────────────────────────────────────────────────────────────────────

╭──────────────────────────────────────────────────────────────────────────────╮

│ ## main                                                                      │

╰──────────────────────────────────────────────────────────────────────────────╯



── fsharp ──────────────────────────────────────────────────────────────────────

let main args =

    let argsMap = args |> Runtime.parseArgsMap<Arguments>



    let dir =

        match argsMap.[[nameof Arguments.Dir]] with

        | [[ Arguments.Dir dir ]] -> Some dir

        | _ -> None

        |> Option.get



    let htmlPath =

        match argsMap.[[nameof Arguments.Html]] with

        | [[ Arguments.Html html ]] -> Some html

        | _ -> None

        |> Option.get



    let fileSystem = scanDirectory true dir dir

    let html = generateHtmlForFileSystem fileSystem



    html |> FileSystem.writeAllTextAsync htmlPath

    |> Async.runWithTimeout 30000

    |> function

        | Some () -> 0

        | None -> 1



── fsharp ──────────────────────────────────────────────────────────────────────

//// test



let args =

    System.Environment.GetEnvironmentVariable "ARGS"

    |> Runtime.splitArgs

    |> Seq.toArray



match args with

| [[||]] -> 0

| args -> if main args = 0 then 0 else failwith "main failed"



╭─[ 62.47ms - return value ]───────────────────────────────────────────────────╮

│ <div class="dni-plaintext"><pre>0</pre></div><style>                         │

│ .dni-code-hint {                                                             │

│     font-style: italic;                                                      │

│     overflow: hidden;                                                        │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview {                                                              │

│     white-space: nowrap;                                                     │

│ }                                                                            │

│ .dni-treeview td {                                                           │

│     vertical-align: top;                                                     │

│     text-align: start;                                                       │

│ }                                                                            │

│ details.dni-treeview {                                                       │

│     padding-left: 1em;                                                       │

│ }                                                                            │

│ table td {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ table tr {                                                                   │

│     vertical-align: top;                                                     │

│     margin: 0em 0px;                                                         │

│ }                                                                            │

│ table tr td pre                                                              │

│ {                                                                            │

│     vertical-align: top !important;                                          │

│     margin: 0em 0px !important;                                              │

│ }                                                                            │

│ table th {                                                                   │

│     text-align: start;                                                       │

│ }                                                                            │

│ </style>                                                                     │

╰──────────────────────────────────────────────────────────────────────────────╯

[NbConvertApp] Converting notebook DirTreeHtml.dib.ipynb to html

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbformat\__init__.py:93: MissingIDFieldWarning: Code cell is missing an id field, this will become a hard error in future nbformat versions. You may want to use `normalize()` on your notebooks before validations (available since nbformat 5.1.4). Previous versions of nbformat are fixing this issue transparently, and will stop doing so in the future.

  validate(nb)

C:\Users\i574n\scoop\apps\python\current\Lib\site-packages\nbconvert\filters\highlight.py:72: UserWarning: IPython3 lexer unavailable, falling back on Python 3

  return _pygments_highlight(

[NbConvertApp] Writing 305558 bytes to DirTreeHtml.dib.html

00:00:00 #1 [Debug] writeDibCode / output: Fs / path: DirTreeHtml.dib

00:00:00 #2 [Debug] parseDibCode / output: Fs / file: DirTreeHtml.dib

00:00:00 #1 [Debug] persistCodeProject / packages: [Argu; Falco.Markup; FSharp.Control.AsyncSeq; ... ] / modules: [lib/fsharp/Common.fs; lib/fsharp/CommonFSharp.fs; lib/fsharp/Async.fs; ... ] / path: C:\home\git\polyglot\apps\dir-tree-html / name: DirTreeHtml / code.Length: 4407

00:00:00 #2 [Debug] buildProject / fullPath: C:\home\git\polyglot\apps\dir-tree-html\target\DirTreeHtml.fsproj

00:00:00 #3 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\dir-tree-html\target\DirTreeHtml.fsproj" --configuration Release --output ../dist --runtime linux-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\dir-tree-html\target"

  CancellationToken = None

  OnLine = None }

00:00:00 #4 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:00 #5 [Verbose] >   Determining projects to restore...

00:00:01 #6 [Verbose] >   Restored C:\home\git\polyglot\apps\dir-tree-html\target\DirTreeHtml.fsproj (in 389 ms).

00:00:01 #7 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\dir-tree-html\target\DirTreeHtml.fsproj]

00:00:07 #8 [Verbose] >   DirTreeHtml -> C:\home\git\polyglot\apps\dir-tree-html\target\bin\Release\net8.0\linux-x64\DirTreeHtml.dll

00:00:08 #9 [Verbose] >   DirTreeHtml -> C:\home\git\polyglot\apps\dir-tree-html\dist\

00:00:08 #10 [Debug] executeAsync / exitCode: 0 / output.Length: 665

00:00:08 #11 [Debug] executeAsync / options: { Command =

   "dotnet publish "C:\home\git\polyglot\apps\dir-tree-html\target\DirTreeHtml.fsproj" --configuration Release --output ../dist --runtime win-x64"

  WorkingDirectory = Some "C:\home\git\polyglot\apps\dir-tree-html\target"

  CancellationToken = None

  OnLine = None }

00:00:08 #12 [Verbose] > MSBuild version 17.8.0-preview-23418-03+0125fc9fb for .NET

00:00:09 #13 [Verbose] >   Determining projects to restore...

00:00:10 #14 [Verbose] >   Restored C:\home\git\polyglot\apps\dir-tree-html\target\DirTreeHtml.fsproj (in 391 ms).

00:00:10 #15 [Verbose] > C:\Program Files\dotnet\sdk\8.0.100-rc.1.23463.5\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(311,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\home\git\polyglot\apps\dir-tree-html\target\DirTreeHtml.fsproj]

00:00:15 #16 [Verbose] >   DirTreeHtml -> C:\home\git\polyglot\apps\dir-tree-html\target\bin\Release\net8.0\win-x64\DirTreeHtml.dll

00:00:22 #17 [Verbose] >   DirTreeHtml -> C:\home\git\polyglot\apps\dir-tree-html\dist\

00:00:22 #18 [Debug] executeAsync / exitCode: 0 / output.Length: 663

In [ ]:
{ . "$ScriptDir/../apps/ipfs/build.ps1" } | Invoke-Block
Lockfile is up to date, resolution step is skipped

Already up to date



Done in 1.9s

In [ ]:
{ . "$ScriptDir/outdated.ps1" } | Invoke-Block
Paket version 8.0.0-alpha002+6339fce88f07b4d959d03b78330fdb5a6d936483

Resolving dependency graph...

Outdated packages found:

  Group: Main

    * Expecto.FsCheck 10.1.0-fscheck3 -> 10.1.0

    * FsCheck 3.0.0-rc1 -> 2.16.6

    * Microsoft.AspNetCore.Connections.Abstractions 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.AspNetCore.Http.Connections.Client 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.AspNetCore.Http.Connections.Common 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.AspNetCore.SignalR.Client 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.AspNetCore.SignalR.Client.Core 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.AspNetCore.SignalR.Common 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.AspNetCore.SignalR.Protocols.Json 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.Extensions.DependencyInjection 7.0 -> 8.0.0-rc.2.23479.6

    * Microsoft.Extensions.DependencyInjection.Abstractions 7.0 -> 8.0.0-rc.2.23479.6

    * Microsoft.Extensions.Features 7.0 -> 8.0.0-rc.2.23480.2

    * Microsoft.Extensions.Logging 7.0 -> 8.0.0-rc.2.23479.6

    * Microsoft.Extensions.Logging.Abstractions 7.0.1 -> 8.0.0-rc.2.23479.6

    * Microsoft.Extensions.Options 7.0.1 -> 8.0.0-rc.2.23479.6

    * Microsoft.Extensions.Primitives 7.0 -> 8.0.0-rc.2.23479.6

    * System.IO.Pipelines 7.0 -> 8.0.0-rc.2.23479.6

    * System.Threading.Channels 7.0 -> 8.0.0-rc.2.23479.6

Total time taken: 53 seconds

All dependencies are up to date, yay!


C:\home\git\polyglot\apps\chat\contract\Cargo.toml

All dependencies are up to date, yay!


C:\home\git\polyglot\apps\chat\contract\tests\Cargo.toml

chat_contract_tests

================

Name        Project  Compat   Latest   Kind    Platform

----        -------  ------   ------   ----    --------

equivalent  1.0.1    Removed  Removed  Normal  ---

hashbrown   0.14.2   0.12.3   0.12.3   Normal  ---

indexmap    2.0.2    1.9.3    1.9.3    Normal  ---


C:\home\git\polyglot\apps\chat\ui\Cargo.toml

All dependencies are up to date, yay!


C:\home\git\polyglot\apps\dice\Cargo.toml

All dependencies are up to date, yay!


C:\home\git\polyglot\apps\dice\contract\Cargo.toml

All dependencies are up to date, yay!


C:\home\git\polyglot\apps\dice\contract\tests\Cargo.toml

dice_contract_tests

================

Name        Project  Compat   Latest   Kind    Platform

----        -------  ------   ------   ----    --------

autocfg     1.1.0    ---      Removed  Build   ---

equivalent  1.0.1    Removed  ---      Normal  ---

hashbrown   0.12.3   ---      0.14.2   Normal  ---

hashbrown   0.14.2   0.12.3   ---      Normal  ---

indexmap    1.9.3    ---      2.0.2    Normal  ---

indexmap    2.0.2    1.9.3    ---      Normal  ---


C:\home\git\polyglot\apps\plot\Cargo.toml

    Updating git repository `https://github.com/plotters-rs/plotters.git`

    Updating git repository `https://github.com/plotters-rs/plotters.git`

All dependencies are up to date, yay!


C:\home\git\polyglot\apps\spiral\temp\extension



> polyglot@ outdated-pre C:\home\git\polyglot\apps\spiral\temp\extension

> npm-check-updates --target greatest



Using pnpm

Checking C:\home\git\polyglot\apps\spiral\temp\extension\package.json





 @playwright/test  1.38.0-beta-1691778350000  →  1.40.0-alpha-oct-29-2023



Run ncu --target greatest -u to upgrade package.json


C:\home\git\polyglot\apps\ipfs



> ipfs@ outdated-pre C:\home\git\polyglot\apps\ipfs

> npm-check-updates --target greatest



Using pnpm

Checking C:\home\git\polyglot\apps\ipfs\package.json





All dependencies match the greatest package versions :)


C:\home\git\polyglot



> polyglot@ outdated-pre C:\home\git\polyglot

> npm-check-updates --target greatest



Using pnpm

Checking C:\home\git\polyglot\package.json





All dependencies match the greatest package versions :)